Salome HOME
47105d5f39c498e8b05e1d8da2a38dd442535ec0
[modules/yacs.git] / src / SALOMEDS / SALOMEDS_ClientAttributes.hxx
1 // Copyright (C) 2005  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
2 // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
3 // 
4 // This library is free software; you can redistribute it and/or
5 // modify it under the terms of the GNU Lesser General Public
6 // License as published by the Free Software Foundation; either 
7 // version 2.1 of the License.
8 // 
9 // This library is distributed in the hope that it will be useful 
10 // but WITHOUT ANY WARRANTY; without even the implied warranty of 
11 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
12 // Lesser General Public License for more details.
13 //
14 // You should have received a copy of the GNU Lesser General Public  
15 // License along with this library; if not, write to the Free Software 
16 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
17 //
18 // See http://www.salome-platform.org/
19 //
20 //  File   : SALOMEDS_Attributes.hxx
21 //  Author : Sergey RUIN
22 //  Module : SALOME
23
24 #ifndef __SALOMEDSCLIENT_ATTRIBUTES__H__
25 #define __SALOMEDSCLIENT_ATTRIBUTES__H__
26
27 #include CORBA_SERVER_HEADER(SALOMEDS_Attributes)
28
29 #include "SALOMEDSImpl_GenericAttribute.hxx"
30 #include "SALOMEDSImpl_AttributeName.hxx"
31 #include "SALOMEDSImpl_AttributeComment.hxx"
32 #include "SALOMEDSImpl_AttributeInteger.hxx"
33 #include "SALOMEDSImpl_AttributeReal.hxx"
34 #include "SALOMEDSImpl_AttributeTreeNode.hxx"
35 #include "SALOMEDSImpl_AttributeUserID.hxx"
36 #include "SALOMEDSImpl_AttributeSequenceOfReal.hxx"
37 #include "SALOMEDSImpl_AttributeSequenceOfInteger.hxx" 
38 #include "SALOMEDSImpl_AttributeIOR.hxx"
39 #include "SALOMEDSImpl_AttributePersistentRef.hxx" 
40 #include "SALOMEDSImpl_AttributeDrawable.hxx"
41 #include "SALOMEDSImpl_AttributeSelectable.hxx"
42 #include "SALOMEDSImpl_AttributeExpandable.hxx"
43 #include "SALOMEDSImpl_AttributeOpened.hxx"
44 #include "SALOMEDSImpl_AttributeTextColor.hxx"
45 #include "SALOMEDSImpl_AttributeTextHighlightColor.hxx"
46 #include "SALOMEDSImpl_AttributePixMap.hxx"
47 #include "SALOMEDSImpl_AttributeLocalID.hxx"
48 #include "SALOMEDSImpl_AttributeTarget.hxx"
49 #include "SALOMEDSImpl_AttributeTableOfInteger.hxx"
50 #include "SALOMEDSImpl_AttributeTableOfReal.hxx"
51 #include "SALOMEDSImpl_AttributeTableOfString.hxx"
52 #include "SALOMEDSImpl_AttributeStudyProperties.hxx"
53 #include "SALOMEDSImpl_AttributePythonObject.hxx"
54 #include "SALOMEDSImpl_AttributeExternalFileDef.hxx"
55 #include "SALOMEDSImpl_AttributeFileType.hxx"
56 #include "SALOMEDSImpl_AttributeFlags.hxx"
57 #include "SALOMEDSImpl_AttributeGraphic.hxx"
58
59 #include "SALOMEDS_GenericAttribute.hxx"
60 #include "SALOMEDS_AttributeName.hxx"
61 #include "SALOMEDS_AttributeComment.hxx"
62 #include "SALOMEDS_AttributeInteger.hxx"
63 #include "SALOMEDS_AttributeReal.hxx"
64 #include "SALOMEDS_AttributeTreeNode.hxx"
65 #include "SALOMEDS_AttributeUserID.hxx"
66 #include "SALOMEDS_AttributeSequenceOfReal.hxx"
67 #include "SALOMEDS_AttributeSequenceOfInteger.hxx" 
68 #include "SALOMEDS_AttributeIOR.hxx"
69 #include "SALOMEDS_AttributePersistentRef.hxx" 
70 #include "SALOMEDS_AttributeDrawable.hxx"
71 #include "SALOMEDS_AttributeSelectable.hxx"
72 #include "SALOMEDS_AttributeExpandable.hxx"
73 #include "SALOMEDS_AttributeOpened.hxx"
74 #include "SALOMEDS_AttributeTextColor.hxx"
75 #include "SALOMEDS_AttributeTextHighlightColor.hxx"
76 #include "SALOMEDS_AttributePixMap.hxx"
77 #include "SALOMEDS_AttributeLocalID.hxx"
78 #include "SALOMEDS_AttributeTarget.hxx"
79 #include "SALOMEDS_AttributeTableOfInteger.hxx"
80 #include "SALOMEDS_AttributeTableOfReal.hxx"
81 #include "SALOMEDS_AttributeTableOfString.hxx"
82 #include "SALOMEDS_AttributeStudyProperties.hxx"
83 #include "SALOMEDS_AttributePythonObject.hxx"
84 #include "SALOMEDS_AttributeExternalFileDef.hxx"
85 #include "SALOMEDS_AttributeFileType.hxx"
86 #include "SALOMEDS_AttributeFlags.hxx"
87 #include "SALOMEDS_AttributeGraphic.hxx"
88
89 #define __CreateClientAttributeLocal(CORBA_Name) if (strcmp(aTypeOfAttribute.c_str(), #CORBA_Name) == 0) { \
90     Handle(SALOMEDSImpl_##CORBA_Name) A = Handle(SALOMEDSImpl_##CORBA_Name)::DownCast(theGA); \
91     aGA = new SALOMEDS_##CORBA_Name(A); \
92   }
93
94 #define __CreateClientAttributeCORBA(CORBA_Name) if (strcmp(aTypeOfAttribute.c_str(), #CORBA_Name) == 0) { \
95     SALOMEDS::CORBA_Name##_var A = SALOMEDS::CORBA_Name::_narrow(theGA); \
96     aGA = new SALOMEDS_##CORBA_Name(A); \
97   }
98
99 #define __CreateGenericClientAttributeLocal \
100 __CreateClientAttributeLocal(AttributeReal) \
101 __CreateClientAttributeLocal(AttributeInteger) \
102 __CreateClientAttributeLocal(AttributeSequenceOfReal) \
103 __CreateClientAttributeLocal(AttributeSequenceOfInteger) \
104 __CreateClientAttributeLocal(AttributeName) \
105 __CreateClientAttributeLocal(AttributeComment) \
106 __CreateClientAttributeLocal(AttributeIOR) \
107 __CreateClientAttributeLocal(AttributePixMap) \
108 __CreateClientAttributeLocal(AttributeLocalID) \
109 __CreateClientAttributeLocal(AttributeTableOfInteger) \
110 __CreateClientAttributeLocal(AttributeTableOfReal) \
111 __CreateClientAttributeLocal(AttributeTableOfString) \
112 __CreateClientAttributeLocal(AttributePythonObject) \
113 __CreateClientAttributeLocal(AttributePersistentRef) \
114 __CreateClientAttributeLocal(AttributeDrawable) \
115 __CreateClientAttributeLocal(AttributeSelectable) \
116 __CreateClientAttributeLocal(AttributeExpandable) \
117 __CreateClientAttributeLocal(AttributeOpened) \
118 __CreateClientAttributeLocal(AttributeTextColor) \
119 __CreateClientAttributeLocal(AttributeTextHighlightColor) \
120 __CreateClientAttributeLocal(AttributeTarget) \
121 __CreateClientAttributeLocal(AttributeStudyProperties) \
122 __CreateClientAttributeLocal(AttributeExternalFileDef) \
123 __CreateClientAttributeLocal(AttributeFileType) \
124 __CreateClientAttributeLocal(AttributeFlags) \
125 __CreateClientAttributeLocal(AttributeGraphic) \
126 __CreateClientAttributeLocal(AttributeTreeNode) \
127 __CreateClientAttributeLocal(AttributeUserID)
128
129 #define __CreateGenericClientAttributeCORBA \
130 __CreateClientAttributeCORBA(AttributeReal) \
131 __CreateClientAttributeCORBA(AttributeInteger) \
132 __CreateClientAttributeCORBA(AttributeSequenceOfReal) \
133 __CreateClientAttributeCORBA(AttributeSequenceOfInteger) \
134 __CreateClientAttributeCORBA(AttributeName) \
135 __CreateClientAttributeCORBA(AttributeComment) \
136 __CreateClientAttributeCORBA(AttributeIOR) \
137 __CreateClientAttributeCORBA(AttributePixMap) \
138 __CreateClientAttributeCORBA(AttributeLocalID) \
139 __CreateClientAttributeCORBA(AttributeTableOfInteger) \
140 __CreateClientAttributeCORBA(AttributeTableOfReal) \
141 __CreateClientAttributeCORBA(AttributeTableOfString) \
142 __CreateClientAttributeCORBA(AttributePythonObject) \
143 __CreateClientAttributeCORBA(AttributePersistentRef) \
144 __CreateClientAttributeCORBA(AttributeDrawable) \
145 __CreateClientAttributeCORBA(AttributeSelectable) \
146 __CreateClientAttributeCORBA(AttributeExpandable) \
147 __CreateClientAttributeCORBA(AttributeOpened) \
148 __CreateClientAttributeCORBA(AttributeTextColor) \
149 __CreateClientAttributeCORBA(AttributeTextHighlightColor) \
150 __CreateClientAttributeCORBA(AttributeTarget) \
151 __CreateClientAttributeCORBA(AttributeStudyProperties) \
152 __CreateClientAttributeCORBA(AttributeExternalFileDef) \
153 __CreateClientAttributeCORBA(AttributeFileType) \
154 __CreateClientAttributeCORBA(AttributeFlags) \
155 __CreateClientAttributeCORBA(AttributeGraphic) \
156 __CreateClientAttributeCORBA(AttributeTreeNode) \
157 __CreateClientAttributeCORBA(AttributeUserID)
158
159 #endif