Branch data Line data Source code
1 : : /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 : : /*
3 : : * This file is part of the LibreOffice project.
4 : : *
5 : : * This Source Code Form is subject to the terms of the Mozilla Public
6 : : * License, v. 2.0. If a copy of the MPL was not distributed with this
7 : : * file, You can obtain one at http://mozilla.org/MPL/2.0/.
8 : : *
9 : : * This file incorporates work covered by the following license notice:
10 : : *
11 : : * Licensed to the Apache Software Foundation (ASF) under one or more
12 : : * contributor license agreements. See the NOTICE file distributed
13 : : * with this work for additional information regarding copyright
14 : : * ownership. The ASF licenses this file to you under the Apache
15 : : * License, Version 2.0 (the "License"); you may not use this file
16 : : * except in compliance with the License. You may obtain a copy of
17 : : * the License at http://www.apache.org/licenses/LICENSE-2.0 .
18 : : */
19 : :
20 : : #ifndef _REGISTRY_REFLTYPE_HXX_
21 : : #define _REGISTRY_REFLTYPE_HXX_
22 : :
23 : : #include "registry/types.h"
24 : : #include <sal/types.h>
25 : :
26 : : /** specifies the type source of a binary type blob.
27 : :
28 : : Currently only RT_UNO_IDL type is used.
29 : : */
30 : : enum RTTypeSource
31 : : {
32 : : RT_UNO_IDL,
33 : : RT_CORBA_IDL,
34 : : RT_JAVA
35 : : };
36 : :
37 : : /** specifies a helper class for const values.
38 : :
39 : : This class is used for easy handling of constants or enum values
40 : : as fields in binary type blob.
41 : : */
42 : : class RTConstValue
43 : : {
44 : : public:
45 : : /// stores the type of the constant value.
46 : : RTValueType m_type;
47 : : /// stores the value of the constant.
48 : : RTConstValueUnion m_value;
49 : :
50 : : /// Default constructor.
51 : 121049 : RTConstValue()
52 : 121049 : : m_type(RT_TYPE_NONE)
53 : : {
54 : 121049 : m_value.aDouble = 0.0;
55 : 121049 : }
56 : :
57 : : /// Destructor
58 : 121049 : ~RTConstValue() {}
59 : : };
60 : :
61 : : /** deprecated.
62 : :
63 : : An earlier version of UNO used an unique identifier for interfaces. In the
64 : : current version of UNO this uik was eliminated and this type is not longer used.
65 : : */
66 : : struct RTUik
67 : : {
68 : : sal_uInt32 m_Data1;
69 : : sal_uInt16 m_Data2;
70 : : sal_uInt16 m_Data3;
71 : : sal_uInt32 m_Data4;
72 : : sal_uInt32 m_Data5;
73 : : };
74 : :
75 : : /// specifies the calling convention for type reader/writer api
76 : : #define TYPEREG_CALLTYPE SAL_CALL
77 : :
78 : : #endif
79 : :
80 : : /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
|