Version: 9.16.0
SALOMEDS_ClientAttributes.hxx
Go to the documentation of this file.
1// Copyright (C) 2007-2026 CEA, EDF, OPEN CASCADE
2//
3// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
4// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
5//
6// This library is free software; you can redistribute it and/or
7// modify it under the terms of the GNU Lesser General Public
8// License as published by the Free Software Foundation; either
9// version 2.1 of the License, or (at your option) any later version.
10//
11// This library is distributed in the hope that it will be useful,
12// but WITHOUT ANY WARRANTY; without even the implied warranty of
13// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14// Lesser General Public License for more details.
15//
16// You should have received a copy of the GNU Lesser General Public
17// License along with this library; if not, write to the Free Software
18// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
19//
20// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
21//
22
23// File : SALOMEDS_Attributes.hxx
24// Author : Sergey RUIN
25// Module : SALOME
26//
27#ifndef __SALOMEDSCLIENT_ATTRIBUTES__H__
28#define __SALOMEDSCLIENT_ATTRIBUTES__H__
29
30#include CORBA_SERVER_HEADER(SALOMEDS_Attributes)
31
63
95
96#define __CreateClientAttributeLocal(CORBA_Name) if (strcmp(aTypeOfAttribute.c_str(), #CORBA_Name) == 0) { \
97 SALOMEDSImpl_##CORBA_Name* A = dynamic_cast<SALOMEDSImpl_##CORBA_Name*>(theGA); \
98 aGA = new SALOMEDS_##CORBA_Name(A); \
99 }
100
101#define __CreateClientAttributeCORBA(CORBA_Name) if (strcmp(aTypeOfAttribute.c_str(), #CORBA_Name) == 0) { \
102 SALOMEDS::CORBA_Name##_var A = SALOMEDS::CORBA_Name::_narrow(theGA); \
103 aGA = new SALOMEDS_##CORBA_Name(A); \
104 }
105
106#define __CreateGenericClientAttributeLocal \
107__CreateClientAttributeLocal(AttributeReal) \
108__CreateClientAttributeLocal(AttributeInteger) \
109__CreateClientAttributeLocal(AttributeSequenceOfReal) \
110__CreateClientAttributeLocal(AttributeSequenceOfInteger) \
111__CreateClientAttributeLocal(AttributeName) \
112__CreateClientAttributeLocal(AttributeComment) \
113__CreateClientAttributeLocal(AttributeIOR) \
114__CreateClientAttributeLocal(AttributePixMap) \
115__CreateClientAttributeLocal(AttributeLocalID) \
116__CreateClientAttributeLocal(AttributeTableOfInteger) \
117__CreateClientAttributeLocal(AttributeTableOfReal) \
118__CreateClientAttributeLocal(AttributeTableOfString) \
119__CreateClientAttributeLocal(AttributePythonObject) \
120__CreateClientAttributeLocal(AttributePersistentRef) \
121__CreateClientAttributeLocal(AttributeDrawable) \
122__CreateClientAttributeLocal(AttributeSelectable) \
123__CreateClientAttributeLocal(AttributeExpandable) \
124__CreateClientAttributeLocal(AttributeOpened) \
125__CreateClientAttributeLocal(AttributeTextColor) \
126__CreateClientAttributeLocal(AttributeTextHighlightColor) \
127__CreateClientAttributeLocal(AttributeTarget) \
128__CreateClientAttributeLocal(AttributeStudyProperties) \
129__CreateClientAttributeLocal(AttributeExternalFileDef) \
130__CreateClientAttributeLocal(AttributeFileType) \
131__CreateClientAttributeLocal(AttributeFlags) \
132__CreateClientAttributeLocal(AttributeGraphic) \
133__CreateClientAttributeLocal(AttributeTreeNode) \
134__CreateClientAttributeLocal(AttributeUserID) \
135__CreateClientAttributeLocal(AttributeParameter) \
136__CreateClientAttributeLocal(AttributeString)
137
138#define __CreateGenericClientAttributeCORBA \
139__CreateClientAttributeCORBA(AttributeReal) \
140__CreateClientAttributeCORBA(AttributeInteger) \
141__CreateClientAttributeCORBA(AttributeSequenceOfReal) \
142__CreateClientAttributeCORBA(AttributeSequenceOfInteger) \
143__CreateClientAttributeCORBA(AttributeName) \
144__CreateClientAttributeCORBA(AttributeComment) \
145__CreateClientAttributeCORBA(AttributeIOR) \
146__CreateClientAttributeCORBA(AttributePixMap) \
147__CreateClientAttributeCORBA(AttributeLocalID) \
148__CreateClientAttributeCORBA(AttributeTableOfInteger) \
149__CreateClientAttributeCORBA(AttributeTableOfReal) \
150__CreateClientAttributeCORBA(AttributeTableOfString) \
151__CreateClientAttributeCORBA(AttributePythonObject) \
152__CreateClientAttributeCORBA(AttributePersistentRef) \
153__CreateClientAttributeCORBA(AttributeDrawable) \
154__CreateClientAttributeCORBA(AttributeSelectable) \
155__CreateClientAttributeCORBA(AttributeExpandable) \
156__CreateClientAttributeCORBA(AttributeOpened) \
157__CreateClientAttributeCORBA(AttributeTextColor) \
158__CreateClientAttributeCORBA(AttributeTextHighlightColor) \
159__CreateClientAttributeCORBA(AttributeTarget) \
160__CreateClientAttributeCORBA(AttributeStudyProperties) \
161__CreateClientAttributeCORBA(AttributeExternalFileDef) \
162__CreateClientAttributeCORBA(AttributeFileType) \
163__CreateClientAttributeCORBA(AttributeFlags) \
164__CreateClientAttributeCORBA(AttributeGraphic) \
165__CreateClientAttributeCORBA(AttributeTreeNode) \
166__CreateClientAttributeCORBA(AttributeUserID) \
167__CreateClientAttributeCORBA(AttributeParameter) \
168__CreateClientAttributeCORBA(AttributeString)
169
170#endif