00001 //## begin module%3796143E0382.cm preserve=no 00002 // %X% %Q% %Z% %W% 00003 //## end module%3796143E0382.cm 00004 00005 //## begin module%3796143E0382.cp preserve=no 00006 //## end module%3796143E0382.cp 00007 00008 //## Module: Server%3796143E0382; Pseudo Package specification 00009 //## Source file: E:\mpk\code\MPKserver\Server.h 00010 00011 #ifndef Server_h 00012 #define Server_h 1 00013 00014 //## begin module%3796143E0382.additionalIncludes preserve=no 00015 //## end module%3796143E0382.additionalIncludes 00016 00017 //## begin module%3796143E0382.includes preserve=yes 00018 #pragma warning( disable : 4786 ) 00019 #include "windows.h" 00020 #include <winsock.h> 00021 //## end module%3796143E0382.includes 00022 00023 // ObjectGroup 00024 #include "geometry\ObjectGroup.h" 00025 // ServerBase 00026 #include "server\ServerBase.h" 00027 //## begin module%3796143E0382.additionalDeclarations preserve=yes 00028 const int BUFSIZE = 300 ; 00029 //## end module%3796143E0382.additionalDeclarations 00030 00031 00032 //## begin Server%3796143E0382.preface preserve=yes 00033 //## end Server%3796143E0382.preface 00034 00035 //## Class: Server%3796143E0382 00036 //## Category: MPKserver%379614300038 00037 //## Persistence: Transient 00038 //## Cardinality/Multiplicity: n 00039 00040 class Server : public ServerBase //## Inherits: <unnamed>%37AB2C4F01C3 00041 { 00042 //## begin Server%3796143E0382.initialDeclarations preserve=yes 00043 //## end Server%3796143E0382.initialDeclarations 00044 00045 public: 00046 //## Constructors (specified) 00047 //## Operation: Server%933360616 00048 Server (SOCKET socket ); 00049 00050 //## Destructor (generated) 00051 virtual ~Server(); 00052 00053 00054 //## Other Operations (specified) 00055 //## Operation: ExecuteCommand%932581524 00056 bool ExecuteCommand (const char* command); 00057 00058 //## Operation: SpecifyRobot%932600044 00059 bool SpecifyRobot (const char* command); 00060 00061 //## Operation: SpecifyCollisionDetector%932600046 00062 bool SpecifyCollisionDetector (const char* command); 00063 00064 //## Operation: SpecifyPlanner%932600048 00065 bool SpecifyPlanner (const char* command); 00066 00067 //## Operation: Plan%932600050 00068 bool Plan (); 00069 00070 //## Operation: SendString%933360615 00071 void SendString (const char* str) const; 00072 00073 //## Operation: SocketOK%933360617 00074 bool SocketOK () const; 00075 00076 //## Operation: SendPath%933360618 00077 void SendPath () const; 00078 00079 //## Operation: StartConfig%933617731 00080 bool StartConfig (const char* command); 00081 00082 //## Operation: GoalConfig%933617732 00083 bool GoalConfig (const char* command); 00084 00085 //## Operation: FixNewlines%933617733 00086 static void FixNewlines (char* str); 00087 00088 //## Operation: SpecifyEnvironment%936229639 00089 bool SpecifyEnvironment (const char* command); 00090 00091 // Data Members for Associations 00092 00093 //## Association: MPKserver::<unnamed>%37965E5400DB 00094 //## Role: Server::<the_ObjectGroup>%37965E54032A 00095 //## begin Server::<the_ObjectGroup>%37965E54032A.role preserve=no public: ObjectGroup { -> 1VHAN} 00096 ObjectGroup* the_ObjectGroup; 00097 //## end Server::<the_ObjectGroup>%37965E54032A.role 00098 00099 // Additional Public Declarations 00100 //## begin Server%3796143E0382.public preserve=yes 00101 bool ConfigureRobot( const char* command ) ; 00102 bool Redraw( const char* command ) const ; 00103 //## end Server%3796143E0382.public 00104 00105 protected: 00106 void SetupServer(); 00107 // Data Members for Class Attributes 00108 00109 //## Attribute: socket%37A1F52F01D0 00110 //## begin Server::socket%37A1F52F01D0.attr preserve=no protected: SOCKET {UA} 00111 SOCKET socket; 00112 //## end Server::socket%37A1F52F01D0.attr 00113 00114 //## Attribute: numberOfServers%37A1F74F009C 00115 //## begin Server::numberOfServers%37A1F74F009C.attr preserve=no protected: static int {UA} 0 00116 static int numberOfServers; 00117 //## end Server::numberOfServers%37A1F74F009C.attr 00118 00119 //## Attribute: socketOK%37A1F7C90318 00120 //## begin Server::socketOK%37A1F7C90318.attr preserve=no protected: bool {UAM} true 00121 mutable bool socketOK; 00122 //## end Server::socketOK%37A1F7C90318.attr 00123 00124 // Additional Protected Declarations 00125 //## begin Server%3796143E0382.protected preserve=yes 00126 //## end Server%3796143E0382.protected 00127 00128 private: 00129 // Additional Private Declarations 00130 //## begin Server%3796143E0382.private preserve=yes 00131 //## end Server%3796143E0382.private 00132 00133 private: //## implementation 00134 // Additional Implementation Declarations 00135 //## begin Server%3796143E0382.implementation preserve=yes 00136 //## end Server%3796143E0382.implementation 00137 00138 }; 00139 00140 //## begin Server%3796143E0382.postscript preserve=yes 00141 //## end Server%3796143E0382.postscript 00142 00143 // Class Server 00144 00145 //## begin module%3796143E0382.epilog preserve=yes 00146 //## end module%3796143E0382.epilog 00147 00148 00149 #endif