GlobalObjects
Lade ...
Suche ...
Keine Treffer
GloServer.h
gehe zur Dokumentation dieser Datei
1#ifndef INC_GLOSERVER_H
2#define INC_GLOSERVER_H
3//-----------------------------------------------------------------------------
36//-----------------------------------------------------------------------------
37#include "GloTypes.h"
38#include <TcpServer.h>
39//-----------------------------------------------------------------------------
40namespace glo
41{
42 //---------------------------------------------------------------------------
43 /* Forwards */
44 struct ClientInfo;
45 class ServerThread;
46 class OrderMsg;
47 class Manager;
48 class ManagerActionVisualiser;
49 //---------------------------------------------------------------------------
64 {
65 public:
66 //-----------------------------------------------------------------------
67 // >>>>>>>>>>>>>> TcpServerReceiverTransmitter >>>>>>>>>>>>>>>>>>>>>>>>>>
68 //-----------------------------------------------------------------------
84 {
85 private:
86 //============== Attribute
87 //---------------------------------------------------------------------
106 //---------------------------------------------------------------------
107
108 protected:
109 //============== Konstruktoren
110 //---------------------------------------------------------------------
121 //---------------------------------------------------------------------
122
123 public:
124 //============== Konstruktoren
125 //---------------------------------------------------------------------
145 //---------------------------------------------------------------------
156 //---------------------------------------------------------------------
157
158 private:
159 //============== Copy-Konstruktor
160 //---------------------------------------------------------------------
171 //---------------------------------------------------------------------
172
173 public:
174 //============== Methoden
175 //---------------------------------------------------------------------
188 //---------------------------------------------------------------------
207 virtual int sendOrder( OrderMsg * pOrderMsg, tcp::ActionCode eTcpActionCode );
208 //---------------------------------------------------------------------
209
210 private:
211 //============== Operatoren
212 //---------------------------------------------------------------------
223 //---------------------------------------------------------------------
224 };
225 //-----------------------------------------------------------------------
226 // <<<<<<<<<<<<<<<< TcpServerReceiverTransmitter <<<<<<<<<<<<<<<<<<<<<<<<
227 //-----------------------------------------------------------------------
228
229 private:
230 //============== Attribute
231 //-----------------------------------------------------------------------
244 //-----------------------------------------------------------------------
245
246 protected:
247 //============== Konstruktor
248 //-----------------------------------------------------------------------
250
260 Server( unsigned int, int, int, int, int );
261 Server( unsigned int, int, int, int, unsigned int, int);
262 Server( unsigned int, int, int, int, unsigned int, unsigned long, int);
264 //-----------------------------------------------------------------------
265
266 public:
267 //============== Konstruktoren
268 //-----------------------------------------------------------------------
304 Server( const std::string & rsSchemaPath,
305 const std::vector< std::string > & rKnownSchemesVector,
306 unsigned int uiPort,
307 int iAdressFamily,
308 int iSocketType,
309 int iProtocol,
310 unsigned int uiDataSize,
311 unsigned long ulMaxClients,
312 int iSecTimeOut );
313 //-----------------------------------------------------------------------
323 virtual ~Server();
324 //-----------------------------------------------------------------------
325
326 private:
327 //============== Copy-Konstruktor
328 //-----------------------------------------------------------------------
338 Server( const Server & );
339 //-----------------------------------------------------------------------
340
341 public:
342 //============== Methoden
343 //-----------------------------------------------------------------------
355 std::string getSchemaPath() const;
356 //-----------------------------------------------------------------------
372 void getAllKnownBases( std::vector< std::string > & rKnownBasesVector ) const;
373 //-----------------------------------------------------------------------
387 void getAllClients( std::vector< ClientInfo > & rClientInfoVector ) const;
388 //-----------------------------------------------------------------------
407 void setActionVisualiser( ManagerActionVisualiser * pActionVisualiser );
408 //-----------------------------------------------------------------------
421 void setShowLevel( ShowLevel ulLevel );
422 //-----------------------------------------------------------------------
436 //-----------------------------------------------------------------------
458 virtual void processClientMessage( tcp::AbstractMessage * pTcpMessage ) override;
459 //-----------------------------------------------------------------------
460
461 protected:
462 //============== Methoden
463 //-----------------------------------------------------------------------
464 #if defined (__PTHREADS)
487 virtual void cleanUp();
488 //-----------------------------------------------------------------------
489 #else
490
491 public:
492 //============== Methoden
508 virtual void cancel() override;
509 #endif
510 //-----------------------------------------------------------------------
525 virtual void insertNewClient( Server::ServerReceiverTransmitter * pNewServerReceiverTransmitter ) override;
526 //-----------------------------------------------------------------------
543 virtual int removeClient( SOCKET nSocket ) override;
544 //-----------------------------------------------------------------------
563 SOCKET nSocket,
564 unsigned int uiDataSize ) const override;
565 //-----------------------------------------------------------------------
566
567 private:
568 //============== Operatoren
569 //-----------------------------------------------------------------------
579 Server & operator= ( const Server & );
580 //-----------------------------------------------------------------------
581 };
582 //---------------------------------------------------------------------------
583} // namespace glo
584#endif
Für jede Bibliothek, hier 'GlobalObjects' gibt es eine Typen-Datei.
#define __glo_export_dll
Definition GloTypes.h:63
Header für Server und Server::ServerReceiverTransmitter
Zeigt die Aktionen des Manager über std::cout an.
Definition GloManagerActionVisualiser.h:63
Das Objekt dieser Klasse ist die zentrale Anlaufstelle für Aktionen, welche mit GlobalObjects-Daten z...
Definition GloManager.h:184
Mittels dieser Klasse wird die Kommunikation zwischen der Applikation, welche GlobalObjects nutzt und...
Definition GloOrderMsg.h:77
Ein spezieller ServerReceiverTransmitter für den Server. Sein ServerReceiver ist vom abgeleiteten Typ...
Definition GloServer.h:84
ServerThread * m_pServerThread
Definition GloServer.h:105
TcpServerReceiverTransmitter(tcp::Transmitter *pTransmitter, tcp::ServerReceiver *pReceiver)
virtual int sendOrder(OrderMsg *pOrderMsg, tcp::ActionCode eTcpActionCode)
TcpServerReceiverTransmitter(const TcpServerReceiverTransmitter &)
Der Server, welcher mit Client's kommuniziert.
Definition GloServer.h:64
std::string getSchemaPath() const
Server(const std::string &rsSchemaPath, const std::vector< std::string > &rKnownSchemesVector, unsigned int uiPort, int iAdressFamily, int iSocketType, int iProtocol, unsigned int uiDataSize, unsigned long ulMaxClients, int iSecTimeOut)
Server(unsigned int, int, int, int, int)
Dieser Konstruktor steht nicht zur Verfügung.
void setActionVisualiser(ManagerActionVisualiser *pActionVisualiser)
void getAllKnownBases(std::vector< std::string > &rKnownBasesVector) const
Server(unsigned int, int, int, int, unsigned int, unsigned long, int)
Dieser Konstruktor steht nicht zur Verfügung.
Server(const Server &)
void setShowLevel(ShowLevel ulLevel)
Manager * m_pGloManager
Definition GloServer.h:243
virtual void processClientMessage(tcp::AbstractMessage *pTcpMessage) override
Server()
Dieser Konstruktor steht nicht zur Verfügung.
virtual void cancel() override
Server(unsigned int, int, int, int, unsigned int, int)
Dieser Konstruktor steht nicht zur Verfügung.
ShowLevel getShowLevel()
void getAllClients(std::vector< ClientInfo > &rClientInfoVector) const
virtual int removeClient(SOCKET nSocket) override
virtual ~Server()
virtual void insertNewClient(Server::ServerReceiverTransmitter *pNewServerReceiverTransmitter) override
virtual tcp::Server::ServerReceiverTransmitter * generateNewServerReceiverTransmitter(tcp::Server *pParent, SOCKET nSocket, unsigned int uiDataSize) const override
Ein Objekt dieser Klasse dient als Schnittstelle zwischen Manager und Base bzw. PrivateBase.
Definition GloServerThread.h:70
Basisklasse für Nachrichten, welche von den Tcp-Klassen verschickt, empfangen und bearbeitet werden k...
Definition TcpMessage.h:90
Tuple von Socket-Receiver und -Transmitter für den Server.
Definition TcpServer.h:279
Eine einfache TCP-Serverklasse, welche ihr KnowHow in den abgeleiteten Klassen lernen soll.
Definition TcpServer.h:261
Klasse, welche über ein SOCKET mit einem Client kommunizieret und ihr Empfangsergebnis vom Typ Server...
Definition TcpServerReceiver.h:74
Eine Klasse, welche über ein SOCKET mit einem Client oder Server kommunizieret und Senddaten vom Typ ...
Definition TcpTransmitter.h:68
Definition GloAbstractBaseLot.h:42
unsigned long ShowLevel
Definition GloTypes.h:854
ActionCode
Definition TcpTypes.h:118