![]() |
MAK RTIspy API Documentation for HLA 1516
|
00001 /********************************************************************* 00002 ** Copyright (c) 2007 MaK Technologies, Inc. 00003 ** All rights reserved. 00004 *********************************************************************/ 00005 /********************************************************************* 00006 ** $RCSfile: forwarderNodeInfoProcessor.h,v $ $Revision: 1.7 $ $State: Exp $ 00007 *********************************************************************/ 00010 00011 #ifndef DtForwarderNodeInfoProcessor_H_ 00012 #define DtForwarderNodeInfoProcessor_H_ 00013 00014 #include "forwarderNode.h" 00015 #include "routeMap.h" 00016 #include "rtiMsConfig.h" 00017 #include <spyXmlDocument.h> 00018 #include <netMapForwarderXmlBlock.h> 00019 #include "forwarderNodeInfoMsg.h" 00020 00021 #include <vlutil/vlUtil.h> 00022 #include <vlutil/vlSmartPointers.h> 00023 #include <map> 00024 #include <set> 00025 #include <list> 00026 00027 class DT_DLL_FORWARDER DtForwarderNodeInfoFilter; 00028 class DtForwarderNodeInfoMsg; 00029 00036 class DT_DLL_FORWARDER DtForwarderNodeInfoProcessor 00037 { 00038 public: 00040 typedef bool (DtForwarderNodeInfoProcessor::* forwarderNodeInfoMsgHandlerMemberCb)( 00041 const DtForwarderPort::DtAddressMsgPair& msg ); 00042 00044 DtForwarderNodeInfoProcessor( DtBoost::shared_ptr<DtForwarderNode> parent ); 00045 00047 virtual ~DtForwarderNodeInfoProcessor(); 00048 00050 virtual bool processForwarderNodeInfoMsg( const DtForwarderPort::DtAddressMsgPair& msg ); 00051 00052 public: 00053 00058 static int lostConnection( const MAKRti::DtString& connName, 00059 unsigned int connID, const DtInetAddrAndPort& addr, void* usr ); 00060 00061 protected: 00062 00064 virtual int lostConnection( const MAKRti::DtString& connName, 00065 unsigned int connID, const DtInetAddrAndPort& addr ); 00066 00067 00068 protected: 00069 00070 DtBoost::shared_ptr<DtForwarderNode> myParent; 00071 DtForwarderNodeInfoFilter* myInitializationMsgsFilter; 00072 00073 00074 MAKRti::DtString myNodeName; 00075 MAKRti::DtString myHostName; 00076 unsigned long myConnId; 00077 DtInetAddrAndPort myIp; 00078 00079 DtNetMapForwarderXmlBlock::SiblingList mySiblingForwarders; 00080 00081 00082 }; 00083 00084 #endif //! DtForwarderNodeInfoProcessor_H_ 00085