bump product version to 4.1.6.2
[LibreOffice.git] / include / registry / refltype.hxx
blob0de7716a9ed3a993e158a9f37459759ed4d2fac4
1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 /*
3 * This file is part of the LibreOffice project.
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/.
9 * This file incorporates work covered by the following license notice:
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 .
20 #ifndef _REGISTRY_REFLTYPE_HXX_
21 #define _REGISTRY_REFLTYPE_HXX_
23 #include "registry/types.h"
24 #include <sal/types.h>
26 /** specifies the type source of a binary type blob.
28 Currently only RT_UNO_IDL type is used.
30 enum RTTypeSource
32 RT_UNO_IDL,
33 RT_CORBA_IDL,
34 RT_JAVA
37 /** specifies a helper class for const values.
39 This class is used for easy handling of constants or enum values
40 as fields in binary type blob.
42 class RTConstValue
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;
50 /// Default constructor.
51 RTConstValue()
52 : m_type(RT_TYPE_NONE)
54 m_value.aDouble = 0.0;
57 /// Destructor
58 ~RTConstValue() {}
61 /** deprecated.
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.
66 struct RTUik
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;
75 /// specifies the calling convention for type reader/writer api
76 #define TYPEREG_CALLTYPE SAL_CALL
78 #endif
80 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */