![]() |
MAK RTIspy API Documentation for HLA 1.3
|
00001 /********************************************************************* 00002 ** Copyright (c) 2010 MaK Technologies, Inc. 00003 ** All rights reserved. 00004 *********************************************************************/ 00005 /********************************************************************* 00006 ** $RCSfile: queueFullMsg.h,v $ $Revision: 0.0 $ $State: Exp $ 00007 *********************************************************************/ 00008 00009 #ifndef DtQueueFullMsg_H_ 00010 #define DtQueueFullMsg_H_ 00011 00012 #include "rtiMsg.h" 00013 #include "netQueueFullMsg.h" 00014 00015 //typedef DtNetQueueFullMsg DtNetConnectMsg; 00016 00017 class DtConnectionMgr; 00018 class DtQueueFullMsg; 00019 typedef void (*DtQueueFullCb)(const DtQueueFullMsg& inter, void* usr); 00020 00021 class DT_DLL_LRC DtQueueFullMsg : public DtRtiMsg 00022 { 00023 public: 00024 00026 DtQueueFullMsg(DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER); 00027 00029 DtQueueFullMsg(const DtNetQueueFullMsg* netRep, 00030 DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER); 00031 00033 DtQueueFullMsg(unsigned long handle, 00034 DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER); 00035 00037 virtual ~DtQueueFullMsg(); 00038 00040 virtual DtRtiMsg* clone(bool copy = true) const; 00041 00042 public: 00043 00045 static DtRtiMsg* create(const DtNetMsgHeader* initial, 00046 DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER); 00047 00048 static DtRtiMsg* create(DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER); 00049 00051 static void addCallback(DtConnectionMgr* conn, 00052 DtQueueFullCb cb, void* usr, bool isMomCallback=false); 00053 static void removeCallback(DtConnectionMgr* conn, 00054 DtQueueFullCb cb, void* usr, bool isMomCallback=false); 00055 00056 unsigned long connectionHandle() const; 00057 void setConnectionHandle(unsigned long handle); 00058 00059 protected: 00060 00062 virtual DtRtiMsgKind internalDtRtiMsgKind(); 00063 00065 virtual DtNetQueueFullMsg* netQueueFullMsg(); 00066 virtual const DtNetQueueFullMsg* netQueueFullMsg() const; 00067 00068 virtual int minSize() const; 00069 }; 00070 00071 #endif 00072