Serveur OPCUA générique
 Tout Classes Espaces de nommage Fichiers Fonctions Variables Définitions de type Macros
cta_slc_server.h
Aller à la documentation de ce fichier.
1 /******************************************************************************
2  **
3  **
4  ** Copyright (C) LAPP. CNRS
5  **
6  ** Project: C++ OPCUA generique
7  **
8  ** Description:
9  **
10  ** Author : Panazol Jean Luc
11  ******************************************************************************/
12 
13 #ifndef CTA_SLC_SERVER_H
14 #define CTA_SLC_SERVER_H
15 
16 //#include "./cta_slc/cta_slc_nodemanager.h"
17 #include "cta_slc_nodemanager.h"
18 #include "string"
19 
20 namespace CTA_UA {
21 class Server;
22 }
23 
24 namespace CTA_Slc {
25 class NodeManagerSlc;
26 }
27 
28 namespace CTA_Slc {
29 
31  static CTA_SLC_Server *singleton; // pointeur vers le singleton
32  // construction / destruction
33  CTA_SLC_Server(const std::string& configurationFile,
34  const std::string& applicationPath, std::string fichier,
35  std::string repository);
36  ~CTA_SLC_Server();
37 public:
38  // Methodes
39  static void kill();
40  static CTA_SLC_Server *getInstance();
41  static CTA_SLC_Server *getInstance(const std::string& configurationFile,
42  const std::string& applicationPath, std::string fichier,
43  std::string repository);
44  int startServer();
45  int stopServer(OpcUa_Int32 secondsTillShutdown,
46  const UaLocalizedText& shutdownReason);
47 private:
48  // Variables
49  std::string m_configurationFile;
50  std::string m_applicationPath;
51  std::string m_xmlFileName;
52  std::string m_repository;
53  int m_idClientRepository;
54 
55  CTA_UA::Server* m_cta_ua_server;
56  NodeManagerSlc *m_pMyNodeManager;
57  CTA_UA::ClientManager *m_pClientManager;
58 };
59 
60 } // end namespace
61 #endif // CTA_SLC_SERVER_H