Line data Source code
1 : #ifndef INCLUDED_COM_SUN_STAR_UTIL_DURATION_HPP
2 : #define INCLUDED_COM_SUN_STAR_UTIL_DURATION_HPP
3 :
4 : #include "sal/config.h"
5 :
6 : #include "com/sun/star/util/Duration.hdl"
7 :
8 : #include "com/sun/star/uno/Type.hxx"
9 : #include "cppu/unotype.hxx"
10 : #include "sal/types.h"
11 : #include "typelib/typeclass.h"
12 : #include "typelib/typedescription.h"
13 :
14 : namespace com { namespace sun { namespace star { namespace util {
15 :
16 3601 : inline Duration::Duration() SAL_THROW(())
17 : : Negative(false)
18 : , Years(0)
19 : , Months(0)
20 : , Days(0)
21 : , Hours(0)
22 : , Minutes(0)
23 : , Seconds(0)
24 3601 : , NanoSeconds(0)
25 : {
26 3601 : }
27 :
28 18 : inline Duration::Duration(const ::sal_Bool& Negative_, const ::sal_uInt16& Years_, const ::sal_uInt16& Months_, const ::sal_uInt16& Days_, const ::sal_uInt16& Hours_, const ::sal_uInt16& Minutes_, const ::sal_uInt16& Seconds_, const ::sal_uInt32& NanoSeconds_) SAL_THROW(())
29 : : Negative(Negative_)
30 : , Years(Years_)
31 : , Months(Months_)
32 : , Days(Days_)
33 : , Hours(Hours_)
34 : , Minutes(Minutes_)
35 : , Seconds(Seconds_)
36 18 : , NanoSeconds(NanoSeconds_)
37 : {
38 18 : }
39 :
40 : } } } }
41 :
42 : namespace com { namespace sun { namespace star { namespace util {
43 :
44 371 : inline ::com::sun::star::uno::Type const & cppu_detail_getUnoType(SAL_UNUSED_PARAMETER css::util::Duration const *) {
45 : //TODO: On certain platforms with weak memory models, the following code can result in some threads observing that the_type points to garbage
46 : static ::typelib_TypeDescriptionReference * the_type = 0;
47 371 : if (the_type == 0) {
48 32 : ::typelib_static_type_init(&the_type, typelib_TypeClass_STRUCT, "com.sun.star.util.Duration");
49 : }
50 371 : return *reinterpret_cast< ::com::sun::star::uno::Type * >(&the_type);
51 : }
52 :
53 : } } } }
54 :
55 : inline ::com::sun::star::uno::Type const & SAL_CALL getCppuType(SAL_UNUSED_PARAMETER css::util::Duration const *) SAL_THROW(()) {
56 : return ::cppu::UnoType< css::util::Duration >::get();
57 : }
58 :
59 : #endif // INCLUDED_COM_SUN_STAR_UTIL_DURATION_HPP
|