Version: 9.16.0
SALOME_ModuleCatalog_impl.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// SALOME ModuleCatalog : implementation of ModuleCatalog server which parsers xml description of modules
24// File : SALOME_ModuleCatalog_impl.hxx
25// Author : Estelle Deville
26// Module : SALOME
27// $Header$
28//
29#ifndef __SALOME_MODULECATALOG_IMPL_HXX__
30#define __SALOME_MODULECATALOG_IMPL_HXX__
31#pragma once
32
35
36#include <string>
37#include <map>
38
39#include <SALOMEconfig.h>
40#include CORBA_SERVER_HEADER(SALOME_ModuleCatalog)
41
42#ifdef WIN32
43#pragma warning(disable:4275) // Disable warning interface non dll
44#pragma warning(disable:4290) // Warning Exception ...
45#endif
46
47namespace KERNEL
48{
49 MODULECATALOG_EXPORT SALOME_ModuleCatalog::ModuleCatalog_ptr getModuleComponentServantSA(const char *listOfCatalogs = nullptr);
50}
51
52class MODULECATALOG_EXPORT SALOME_ModuleCatalogImpl: public POA_SALOME_ModuleCatalog::ModuleCatalog
53{
54 class Private;
55
56public:
58 SALOME_ModuleCatalogImpl(int artgc, char** argv, CORBA::ORB_ptr orb = NULL);
59
62
64
67 virtual SALOME_ModuleCatalog::ListOfComputers* GetComputerList();
68
70
74
76
80 virtual char* GetPathPrefix(const char* machinename);
81
83
86 virtual void ImportXmlCatalogFile(const char* xmlFileName);
87
89
92 virtual SALOME_ModuleCatalog::ListOfComponents* GetComponentList();
93
95
98 virtual SALOME_ModuleCatalog::ListOfIAPP_Affich* GetComponentIconeList();
99
101
105 GetTypedComponentList(SALOME_ModuleCatalog::ComponentType component_type);
106
108
112 virtual SALOME_ModuleCatalog::Acomponent_ptr
113 GetComponent(const char* componentname);
114
116
121 GetComponentInfo(const char *name);
122
124 void ping();
125
127 CORBA::Long getPID();
128
130 void ShutdownWithExit();
131
133 void shutdown();
134
135 static const char ENTRY_IN_NS[];
136
137private:
139
145 virtual bool _parseArguments(int argc, char **argv,
146 char **_general, char** _personal);
147
148
149 CORBA::ORB_ptr _orb;
151};
152#endif //__SALOME_MODULECATALOG_IMPL_HXX__
#define MODULECATALOG_EXPORT
Definition: SALOME_ModuleCatalog.hxx:37
Definition: SALOME_ModuleCatalog_impl.cxx:106
Definition: SALOME_ModuleCatalog_impl.hxx:53
CORBA::ORB_ptr _orb
Definition: SALOME_ModuleCatalog_impl.hxx:149
Private * myPrivate
Definition: SALOME_ModuleCatalog_impl.hxx:150
Methods to be used in SSL mode to skip NS.
Definition: SALOME_Container_i.hxx:335
SALOME_ModuleCatalog::ModuleCatalog_ptr getModuleComponentServantSA(const char *listOfCatalogs=nullptr)
Definition: SALOME_ModuleCatalog_impl.cxx:62
sequence< TypeDefinition > ListOfTypeDefinition
list of type definitions
Definition: SALOME_ModuleCatalog.idl:116
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
sequence< IAPP_Affich > ListOfIAPP_Affich
List of pair GUI elements (component name, component icone)
Definition: SALOME_ModuleCatalog.idl:194
sequence< string > ListOfComponents
List of component names.
Definition: SALOME_ModuleCatalog.idl:178
@ shutdown
Session is shutting down.
Definition: SALOME_Session.idl:41
argv
Definition: envSalome.py:42
string name
Definition: pythfilter.py:56
orb
Definition: salome.py:122
Description of a component.
Definition: SALOME_ModuleCatalog.idl:165