1 /*************************************************************************
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
5 * Copyright 2008 by Sun Microsystems, Inc.
7 * OpenOffice.org - a multi-platform office productivity suite
9 * $RCSfile: ip_ce.hxx,v $
12 * This file is part of OpenOffice.org.
14 * OpenOffice.org is free software: you can redistribute it and/or modify
15 * it under the terms of the GNU Lesser General Public License version 3
16 * only, as published by the Free Software Foundation.
18 * OpenOffice.org is distributed in the hope that it will be useful,
19 * but WITHOUT ANY WARRANTY; without even the implied warranty of
20 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21 * GNU Lesser General Public License version 3 for more details
22 * (a copy is included in the LICENSE file that accompanied this code).
24 * You should have received a copy of the GNU Lesser General Public License
25 * version 3 along with OpenOffice.org. If not, see
26 * <http://www.openoffice.org/license.html>
27 * for a copy of the LGPLv3 License.
29 ************************************************************************/
31 #ifndef ARY_IDL_IP_CE_HXX
32 #define ARY_IDL_IP_CE_HXX
35 #include <ary/idl/i_types4idl.hxx>
36 #include <ary/idl/i_property.hxx>
54 class SglIfcSingleton
;
69 /** Provides the access logic for all code entities.
78 virtual Module
& CheckIn_Module(
80 const String
& i_sName
) = 0;
81 virtual Service
& Store_Service(
83 const String
& i_sName
) = 0;
84 virtual SglIfcService
&
87 const String
& i_sName
,
88 Type_id i_nBaseInterface
) = 0;
89 virtual Interface
& Store_Interface(
91 const String
& i_sName
,
92 Type_id i_nBase
) = 0;
93 virtual Struct
& Store_Struct(
95 const String
& i_sName
,
97 const String
& i_sTemplateParam
= String::Null_() ) = 0;
98 virtual Exception
& Store_Exception(
100 const String
& i_sName
,
101 Type_id i_nBase
) = 0;
102 virtual Enum
& Store_Enum(
104 const String
& i_sName
) = 0;
105 virtual Typedef
& Store_Typedef(
107 const String
& i_sName
,
108 Type_id i_nDefiningType
) = 0;
109 virtual ConstantsGroup
&
110 Store_ConstantsGroup(
112 const String
& i_sName
) = 0;
113 virtual Singleton
& Store_Singleton(
115 const String
& i_sName
) = 0;
116 virtual SglIfcSingleton
&
117 Store_SglIfcSingleton(
119 const String
& i_sName
,
120 Type_id i_nBaseInterface
) = 0;
122 virtual Constant
& Store_Constant(
124 const String
& i_sName
,
126 const String
& i_sValue
) = 0;
127 virtual Property
& Store_Property(
129 const String
& i_sName
,
131 Property::Stereotypes
133 virtual Function
& Store_Function(
135 const String
& i_sName
,
136 Type_id i_nReturnType
,
137 bool i_bOneWay
) = 0;
138 virtual Function
& Store_ServiceConstructor(
140 const String
& i_sName
) = 0;
141 virtual StructElement
&
144 const String
& i_sName
,
145 Type_id i_nType
) = 0;
146 virtual StructElement
&
147 Store_ExceptionMember(
149 const String
& i_sName
,
150 Type_id i_nType
) = 0;
151 virtual EnumValue
& Store_EnumValue(
153 const String
& i_sName
,
154 const String
& i_sValue
) = 0;
155 virtual Attribute
& Store_Attribute(
157 const String
& i_sName
,
162 virtual const Module
&
163 GlobalNamespace() const = 0;
164 virtual const CodeEntity
&
166 Ce_id i_nId
) const = 0;
168 virtual const Module
&
170 Ce_id i_nId
) const = 0;
171 virtual const Module
*
173 Ce_id i_nId
) const = 0;
174 virtual const Function
&
176 Ce_id i_nId
) const = 0;
177 virtual const Property
&
179 Ce_id i_nId
) const = 0;
180 virtual const EnumValue
&
182 Ce_id i_nId
) const = 0;
183 virtual const Constant
&
185 Ce_id i_nId
) const = 0;
186 virtual const StructElement
&
188 Ce_id i_nId
) const = 0;
189 virtual void Get_Text(
190 StringVector
& o_module
,
193 const CodeEntity
& i_ce
) const = 0;
194 virtual const NameLookup
&
195 NameDictionary() const = 0;
196 virtual void Get_AlphabeticalIndex(
199 alphabetical_index::E_Letter
200 i_cLetter
) const = 0;
202 virtual Module
& GlobalNamespace() = 0;