Version: 9.12.0
SALOME_ModuleCatalog.idl
Go to the documentation of this file.
1 // Copyright (C) 2007-2023 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 : SALOME_ModuleCatalog.idl
24 // Author : Estelle Deville
25 // $Header$
26 //
38 {
43  MESH,
44  Med,
46  DATA,
47  VISU,
49  OTHER
50  } ;
53  {
54  string Parametertype;
55  string Parametername;
56  } ;
57 
63  } ;
64 
67  {
68  string Parametertype;
69  string Parametername;
71  } ;
72 
74  typedef sequence<ServicesParameter> ListOfServicesParameter;
76  typedef sequence<ServicesDataStreamParameter> ListOfServicesDataStreamParameter;
77 
79  typedef sequence<string> ListOfString;
80 
82  enum TypeKind
83  {
84  NONE ,
85  Dble ,
86  Int ,
87  Str ,
88  Bool ,
89  Objref ,
90  Seq ,
91  Array ,
92  Struc
93  };
94 
97  {
98  string name;
99  string type;
100  };
102  typedef sequence<MemberDefinition> ListOfMemberDefinition;
103 
106  {
107  string name;
109  string id;
110  string content;
113  };
114 
116  typedef sequence<TypeDefinition> ListOfTypeDefinition;
117 
119  struct Service
120  {
121  string ServiceName;
127  boolean TypeOfNode;
128  } ;
130  typedef sequence<Service> ListOfInterfaceService;
132  typedef sequence<string> ListOfServices ;
135  {
136  string interfacename ;
138  } ;
140  typedef sequence<DefinitionInterface> ListOfDefInterface ;
142  typedef sequence<string> ListOfInterfaces ;
143 
147  struct PathPrefix {
148  string machine;
149  string path;
150  };
151 
153  typedef sequence<PathPrefix> PathPrefixes;
154 
156  enum ImplType {
157  SO,
158  PY,
159  EXE,
160  CEXE
161  } ;
162 
165  {
167  string name;
168  string username;
170  string implname;
171  string icon;
172  string constraint;
175  };
176 
178  typedef sequence<string> ListOfComponents ;
180  typedef sequence<string> ListOfComputers ;
182  struct IAPP_Affich
183  {
184  string modulename;
185  string moduleusername;
186  string moduleicone;
187  string moduleversion;
188  string modulecomment;
189  };
194  typedef sequence<IAPP_Affich> ListOfIAPP_Affich ;
195 
197  exception NotFound
198  {
199  string what ;
200  } ;
201 
206  interface Acomponent
207  {
213 
220  DefinitionInterface GetInterface(in string interfacename) raises(NotFound);
221 
228  ListOfServices GetServiceList(in string interfacename) raises(NotFound);
229 
230 
238  Service GetService(in string interfacename,
239  in string servicename) raises(NotFound);
240 
247  Service GetDefaultService(in string interfacename) raises(NotFound);
248 
255  string GetPathPrefix(in string machinename) raises(NotFound);
256 
261  readonly attribute string constraint ;
262 
265  readonly attribute string componentname;
266 
269  readonly attribute string componentusername;
270 
273  readonly attribute ComponentType component_type ;
274 
277  readonly attribute string component_icone;
278 
283  readonly attribute ImplType implementation_type;
289  readonly attribute string implementation_name;
290  } ;
291 
296  interface ModuleCatalog
297  {
300  void ping();
301 
304  long getPID();
305 
308  oneway void ShutdownWithExit();
309 
313 
317 
319  string GetPathPrefix(in string machinename) raises(NotFound);
320 
323 
328 
332 
335  Acomponent GetComponent(in string componentname) raises(NotFound);
336 
339  ComponentDef GetComponentInfo(in string componentName) raises(NotFound);
340 
345  void ImportXmlCatalogFile(in string filename) raises(NotFound);
346 
349  void shutdown();
350  } ;
351 };
@ MESH
Definition: SALOME_ModuleCatalog_Parser.hxx:45
@ SUPERV
Definition: SALOME_ModuleCatalog_Parser.hxx:45
@ VISU
Definition: SALOME_ModuleCatalog_Parser.hxx:45
@ Med
Definition: SALOME_ModuleCatalog_Parser.hxx:45
@ DATA
Definition: SALOME_ModuleCatalog_Parser.hxx:45
@ GEOM
Definition: SALOME_ModuleCatalog_Parser.hxx:45
@ OTHER
Definition: SALOME_ModuleCatalog_Parser.hxx:45
@ SOLVER
Definition: SALOME_ModuleCatalog_Parser.hxx:45
This exception is raised when a component, a service or a pathPrefix is not found.
Definition: SALOME_ModuleCatalog.idl:198
string what
Indicates if it's a component, a service or a % pathPrefix.
Definition: SALOME_ModuleCatalog.idl:199
This interface provides the common functionality information of corresponding component.
Definition: SALOME_ModuleCatalog.idl:207
readonly attribute ComponentType component_type
Get the type of the component.
Definition: SALOME_ModuleCatalog.idl:273
Service GetService(in string interfacename, in string servicename)
Get a service of an interface of the component.
ListOfInterfaces GetInterfaceList()
Get the list of interface names of the component.
readonly attribute string componentusername
Get the user name of the component.
Definition: SALOME_ModuleCatalog.idl:269
DefinitionInterface GetInterface(in string interfacename)
Get an interface of the component.
readonly attribute string constraint
Get the constraint affected to the component.
Definition: SALOME_ModuleCatalog.idl:261
Service GetDefaultService(in string interfacename)
Get the default service of an interface of the component.
readonly attribute ImplType implementation_type
Get the implementation type of the component.
Definition: SALOME_ModuleCatalog.idl:283
readonly attribute string implementation_name
Get the implementation name of the component.
Definition: SALOME_ModuleCatalog.idl:289
readonly attribute string componentname
Get the component name.
Definition: SALOME_ModuleCatalog.idl:265
ListOfServices GetServiceList(in string interfacename)
Get the list of service names of an interface belonging to the component.
readonly attribute string component_icone
Get the icone of the component (for IAPP)
Definition: SALOME_ModuleCatalog.idl:277
string GetPathPrefix(in string machinename)
Get the prefix path of the computer containing the component.
Module catalog interface
Definition: SALOME_ModuleCatalog.idl:297
void ImportXmlCatalogFile(in string filename)
Read a xml file and import new components from this file.
void shutdown()
Shutdown the module catalog server.
void ping()
ping the ModuleCatalog server
Acomponent GetComponent(in string componentname)
Get one component of the catalog.
long getPID()
Returns the PID of the ModuleCatalog server.
oneway void ShutdownWithExit()
Shutdown the ModuleCatalog server.
ListOfComputers GetComputerList()
Get a list of computer names of the catalog.
string GetPathPrefix(in string machinename)
Get the PathPrefix of a computer.
ListOfIAPP_Affich GetComponentIconeList()
Get a list of pair GUI elements (component name, component icone) used for representation of the modu...
ListOfComponents GetComponentList()
Get a list of component names of the catalog.
ComponentDef GetComponentInfo(in string componentName)
Get the description of a component of the catalog.
ListOfTypeDefinition GetTypes()
Get the types of the catalog.
ListOfComponents GetTypedComponentList(in ComponentType _component_type)
Get a list of component names of a particular type, which belong to this catalog.
The main package of interfaces used for the module catalog in SALOME application.
Definition: SALOME_ModuleCatalog.idl:38
sequence< TypeDefinition > ListOfTypeDefinition
list of type definitions
Definition: SALOME_ModuleCatalog.idl:116
sequence< string > ListOfString
a string list
Definition: SALOME_ModuleCatalog.idl:79
sequence< ServicesParameter > ListOfServicesParameter
The list of the parameters of service.
Definition: SALOME_ModuleCatalog.idl:74
ImplType
Component implementation type.
Definition: SALOME_ModuleCatalog.idl:156
@ SO
component implemented as a dynamic library loadable with dlopen
Definition: SALOME_ModuleCatalog.idl:157
@ PY
component implemented as a python module loadable with import
Definition: SALOME_ModuleCatalog.idl:158
@ CEXE
component to be loaded by a container which executable is given in the catalog
Definition: SALOME_ModuleCatalog.idl:160
@ EXE
component implemented as an executable
Definition: SALOME_ModuleCatalog.idl:159
TypeKind
enumeration to define data types used by services
Definition: SALOME_ModuleCatalog.idl:83
@ Objref
an object reference
Definition: SALOME_ModuleCatalog.idl:89
@ Struc
a structure with named members
Definition: SALOME_ModuleCatalog.idl:92
@ Int
an integer
Definition: SALOME_ModuleCatalog.idl:86
@ Array
an array
Definition: SALOME_ModuleCatalog.idl:91
@ Dble
a double
Definition: SALOME_ModuleCatalog.idl:85
@ Seq
a sequence of a content type
Definition: SALOME_ModuleCatalog.idl:90
@ Str
a string
Definition: SALOME_ModuleCatalog.idl:87
@ Bool
a boolean
Definition: SALOME_ModuleCatalog.idl:88
@ NONE
Definition: SALOME_ModuleCatalog.idl:84
sequence< Service > ListOfInterfaceService
List of services of the interface.
Definition: SALOME_ModuleCatalog.idl:130
sequence< string > ListOfComputers
List of computer names.
Definition: SALOME_ModuleCatalog.idl:180
ComponentType
This enumeration contains a current set of definitions of the components integrated into SALOME appli...
Definition: SALOME_ModuleCatalog.idl:42
DataStreamDependency
enumeration to define datastream ports dependency
Definition: SALOME_ModuleCatalog.idl:59
@ DATASTREAM_ITERATIVE
iterative dependency
Definition: SALOME_ModuleCatalog.idl:62
@ DATASTREAM_TEMPORAL
time dependency
Definition: SALOME_ModuleCatalog.idl:61
@ DATASTREAM_UNDEFINED
dependency not defined
Definition: SALOME_ModuleCatalog.idl:60
sequence< MemberDefinition > ListOfMemberDefinition
List of member definitions in a structure.
Definition: SALOME_ModuleCatalog.idl:102
sequence< IAPP_Affich > ListOfIAPP_Affich
List of pair GUI elements (component name, component icone)
Definition: SALOME_ModuleCatalog.idl:194
sequence< string > ListOfServices
List of services.
Definition: SALOME_ModuleCatalog.idl:132
sequence< string > ListOfComponents
List of component names.
Definition: SALOME_ModuleCatalog.idl:178
sequence< DefinitionInterface > ListOfDefInterface
List of interface definitions.
Definition: SALOME_ModuleCatalog.idl:140
sequence< PathPrefix > PathPrefixes
List of path prefixes.
Definition: SALOME_ModuleCatalog.idl:153
sequence< ServicesDataStreamParameter > ListOfServicesDataStreamParameter
The list of datastream parameters of service.
Definition: SALOME_ModuleCatalog.idl:76
sequence< string > ListOfInterfaces
List of interface names.
Definition: SALOME_ModuleCatalog.idl:142
filename
Definition: pythfilter.py:558
Description of a component.
Definition: SALOME_ModuleCatalog.idl:165
PathPrefixes paths
Definition: SALOME_ModuleCatalog.idl:174
string username
Definition: SALOME_ModuleCatalog.idl:168
ListOfDefInterface interfaces
Definition: SALOME_ModuleCatalog.idl:173
ImplType implementationType
Definition: SALOME_ModuleCatalog.idl:169
string constraint
Definition: SALOME_ModuleCatalog.idl:172
string name
Definition: SALOME_ModuleCatalog.idl:167
string implname
Definition: SALOME_ModuleCatalog.idl:170
ComponentType type
Definition: SALOME_ModuleCatalog.idl:166
string icon
Definition: SALOME_ModuleCatalog.idl:171
This struct contains fields defining each interface.
Definition: SALOME_ModuleCatalog.idl:135
string interfacename
Name of the interface.
Definition: SALOME_ModuleCatalog.idl:136
ListOfInterfaceService interfaceservicelist
List of services of the interface.
Definition: SALOME_ModuleCatalog.idl:137
This struct contains GUI elements used for representation of the module in IAPP component.
Definition: SALOME_ModuleCatalog.idl:183
string modulecomment
Comment to the module.
Definition: SALOME_ModuleCatalog.idl:188
string moduleicone
Icone representing the module.
Definition: SALOME_ModuleCatalog.idl:186
string modulename
Name of the module.
Definition: SALOME_ModuleCatalog.idl:184
string moduleusername
UserName of the module.
Definition: SALOME_ModuleCatalog.idl:185
string moduleversion
Version of the module.
Definition: SALOME_ModuleCatalog.idl:187
struct to define members of a Struc TypeKind
Definition: SALOME_ModuleCatalog.idl:97
string name
Member name.
Definition: SALOME_ModuleCatalog.idl:98
string type
Member type name.
Definition: SALOME_ModuleCatalog.idl:99
PathPrefix : association of a machine name and a path to a component.
Definition: SALOME_ModuleCatalog.idl:147
string machine
Definition: SALOME_ModuleCatalog.idl:148
string path
Definition: SALOME_ModuleCatalog.idl:149
This struct contains fields defining each service.
Definition: SALOME_ModuleCatalog.idl:120
ListOfServicesParameter ServiceinParameter
List of input parameters of the services.
Definition: SALOME_ModuleCatalog.idl:122
string ServiceName
Name of the service.
Definition: SALOME_ModuleCatalog.idl:121
ListOfServicesParameter ServiceoutParameter
List of output parameters of the services.
Definition: SALOME_ModuleCatalog.idl:123
ListOfServicesDataStreamParameter ServiceinDataStreamParameter
List of input parameters of the services.
Definition: SALOME_ModuleCatalog.idl:124
boolean TypeOfNode
True is the service is a factory node.
Definition: SALOME_ModuleCatalog.idl:127
ListOfServicesDataStreamParameter ServiceoutDataStreamParameter
List of output parameters of the services.
Definition: SALOME_ModuleCatalog.idl:125
boolean Servicebydefault
True if the service is taken with its default fields.
Definition: SALOME_ModuleCatalog.idl:126
struct to define datastream ports
Definition: SALOME_ModuleCatalog.idl:67
string Parametertype
Parameter type name.
Definition: SALOME_ModuleCatalog.idl:68
string Parametername
Parameter name.
Definition: SALOME_ModuleCatalog.idl:69
DataStreamDependency Parameterdependency
Temporal or iterative dependency.
Definition: SALOME_ModuleCatalog.idl:70
This struct contains fields defining the parameter of the service.
Definition: SALOME_ModuleCatalog.idl:53
string Parametername
Parameter name.
Definition: SALOME_ModuleCatalog.idl:55
string Parametertype
Parameter type name.
Definition: SALOME_ModuleCatalog.idl:54
Struct to get the definition of types used in Salome catalogs.
Definition: SALOME_ModuleCatalog.idl:106
ListOfString bases
base types (if needed)
Definition: SALOME_ModuleCatalog.idl:111
string content
Content type (if needed)
Definition: SALOME_ModuleCatalog.idl:110
ListOfMemberDefinition members
Member types (if needed)
Definition: SALOME_ModuleCatalog.idl:112
string id
id (if needed)
Definition: SALOME_ModuleCatalog.idl:109
string name
Type name.
Definition: SALOME_ModuleCatalog.idl:107
TypeKind kind
Type kind.
Definition: SALOME_ModuleCatalog.idl:108