![]() |
MAK RTIspy API Documentation for HLA 1.3
|
00001 /********************************************************************* 00002 ** Copyright (c) 2008 MaK Technologies, Inc. 00003 ** All rights reserved. 00004 *********************************************************************/ 00005 /********************************************************************* 00006 ** $RCSfile: assistantShmCompInfoMsg.h,v $ $Revision: 1.2 $ $State: Exp $ 00007 *********************************************************************/ 00008 00009 #ifndef assistantShmCompInfoMsg_H_ 00010 #define assistantShmCompInfoMsg_H_ 00011 00015 00016 #include <vlutil/vlFilename.h> 00017 #include <vlutil/vlPrint.h> 00018 00019 #include "assistantMsg.h" 00020 #include "assistantConnMsg.h" 00021 #include "netAssistantShmCompInfoMsg.h" 00022 00023 class DtAssistantShmCompInfoMsg; 00024 class DtRtiAssistantServer; 00025 class MAKRti::DtInetAddr; 00026 00027 typedef void (*DtAssistantShmCompInfoCb)(const DtAssistantShmCompInfoMsg& inter, void* usr); 00028 00029 00034 class DT_DLL_ASSISTANT DtAssistantShmCompInfoMsg : public DtAssistantMsg 00035 { 00036 00037 public: 00038 00040 DtAssistantShmCompInfoMsg(DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER); 00041 00042 DtAssistantShmCompInfoMsg(const DtNetAssistantShmCompInfoMsg* netRep, 00043 DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER); 00044 00046 virtual ~DtAssistantShmCompInfoMsg(); 00047 00049 virtual DtAssistantMsg* clone(bool copy = true) const; 00050 00052 virtual void setIpAddress(const MAKRti::DtInetAddr& ipAddr); 00053 00055 virtual MAKRti::DtInetAddr ipAddress() const; 00056 00058 virtual void setPort(int port); 00059 00061 virtual int port() const; 00062 00064 virtual void setLogFilename(const MAKRti::DtFilename& filename); 00065 00067 virtual MAKRti::DtFilename logFilename() const; 00068 00070 virtual void setNotifyLevel( DtNotifyLevelType level ); 00071 00073 virtual DtNotifyLevelType notifyLevel() const; 00074 00076 virtual void printData() const; 00077 00078 public: 00079 00081 static DtAssistantMsg* create(const DtNetAssistantMsgHeader* initial, 00082 DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER); 00083 00084 static DtAssistantMsg* create(DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER); 00085 00088 static void addCallback(DtRtiAssistantServer* conn, DtAssistantShmCompInfoCb cb, void* usr); 00089 static void removeCallback(DtRtiAssistantServer* conn, DtAssistantShmCompInfoCb cb, void* usr); 00090 00091 protected: 00092 00094 virtual void setAddressFamily(MAKRti::DtInetUtils::DtInetAddrFamily fam); 00095 00097 virtual MAKRti::DtInetUtils::DtInetAddrFamily addressFamily() const; 00098 00100 virtual DtNetAssistantShmCompInfoMsg* netAssistantShmCompInfoMsg(); 00101 virtual const DtNetAssistantShmCompInfoMsg* netAssistantShmCompInfoMsg() const; 00102 00104 virtual DtAssistantMsgKind internalMsgKind(); 00105 00107 virtual int minSize() const; 00108 00110 virtual void setLogFilenameSize( unsigned long size ); 00111 virtual unsigned long logFilenameSize() const; 00112 00114 virtual const char* logFilenamePtr() const; 00115 virtual char* logFilenamePtr(); 00116 00117 00118 00119 }; 00120 00121 #endif