Line data Source code
1 : #ifndef INCLUDED_COM_SUN_STAR_BEANS_PROPERTY_HPP
2 : #define INCLUDED_COM_SUN_STAR_BEANS_PROPERTY_HPP
3 :
4 : #include "sal/config.h"
5 :
6 : #include "com/sun/star/beans/Property.hdl"
7 :
8 : #include "com/sun/star/uno/Type.hxx"
9 : #include "cppu/unotype.hxx"
10 : #include "rtl/ustring.hxx"
11 : #include "sal/types.h"
12 : #include "typelib/typeclass.h"
13 : #include "typelib/typedescription.h"
14 :
15 : namespace com { namespace sun { namespace star { namespace beans {
16 :
17 : inline Property::Property() SAL_THROW(())
18 : : Name()
19 : , Handle(0)
20 : , Type()
21 : , Attributes(0)
22 : {
23 : }
24 :
25 0 : inline Property::Property(const ::rtl::OUString& Name_, const ::sal_Int32& Handle_, const ::com::sun::star::uno::Type& Type_, const ::sal_Int16& Attributes_) SAL_THROW(())
26 : : Name(Name_)
27 : , Handle(Handle_)
28 : , Type(Type_)
29 0 : , Attributes(Attributes_)
30 : {
31 0 : }
32 :
33 : } } } }
34 :
35 : namespace com { namespace sun { namespace star { namespace beans {
36 :
37 0 : inline ::com::sun::star::uno::Type const & cppu_detail_getUnoType(SAL_UNUSED_PARAMETER css::beans::Property const *) {
38 : //TODO: On certain platforms with weak memory models, the following code can result in some threads observing that the_type points to garbage
39 : static ::typelib_TypeDescriptionReference * the_type = 0;
40 0 : if (the_type == 0) {
41 : ::typelib_TypeDescriptionReference * the_members[] = {
42 0 : ::cppu::UnoType< ::rtl::OUString >::get().getTypeLibType(),
43 0 : ::cppu::UnoType< ::sal_Int32 >::get().getTypeLibType(),
44 0 : ::cppu::UnoType< ::com::sun::star::uno::Type >::get().getTypeLibType(),
45 0 : ::cppu::UnoType< ::sal_Int16 >::get().getTypeLibType() };
46 0 : ::typelib_static_struct_type_init(&the_type, "com.sun.star.beans.Property", 0, 4, the_members, 0);
47 : }
48 0 : return *reinterpret_cast< ::com::sun::star::uno::Type * >(&the_type);
49 : }
50 :
51 : } } } }
52 :
53 : inline ::com::sun::star::uno::Type const & SAL_CALL getCppuType(SAL_UNUSED_PARAMETER css::beans::Property const *) SAL_THROW(()) {
54 : return ::cppu::UnoType< css::beans::Property >::get();
55 : }
56 :
57 : #endif // INCLUDED_COM_SUN_STAR_BEANS_PROPERTY_HPP
|