MAK RTIspy API Documentation for HLA Evolved
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
reserveMultiNameMsg.h
Go to the documentation of this file.
1 /*********************************************************************
2 ** Copyright (c) 2003 MaK Technologies, Inc.
3 ** All rights reserved.
4 *********************************************************************/
5 /*********************************************************************
6 ** $RCSfile: reserveNameMsg.h,v $ $Revision: 1.6 $ $State: Exp $
7 *********************************************************************/
8 
11 
12 #ifndef DtReserveMultiNameMsg_H_
13 #define DtReserveMultiNameMsg_H_
14 
15 #include "rtiMsConfig.h"
16 #include <string>
17 #include "rtiMsg.h"
18 #include "netRtiMsgHdr.h"
19 
20 class DtConnectionMgr;
23 typedef void (*DtReserveMultiNameCb)(const DtReserveMultiNameMsg& inter, void* usr);
24 
26 {
27 public:
28 
30  DtReserveMultiNameMsg(DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
31 
33  std::set< std::wstring > const & objectNames,
34  DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
35 
38  DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
39 
41  virtual ~DtReserveMultiNameMsg();
42 
44  virtual DtRtiMsg* clone(bool copy = true) const;
45 
47  virtual void set(std::set< std::wstring > const & objectNames );
48 
49  virtual void setObjectNames(std::set< std::wstring > const & objectNames);
50  virtual void getObjectNames(std::set< std::wstring > & objectNames ) const;
51 
53  virtual void printData(DtLogicalTimeFactory* logicalTimeFactory) const;
54 
55 public:
56 
58  static DtRtiMsg* create(const DtNetMsgHeader* initial,
59  DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
60 
62  static DtRtiMsg* create(DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
63 
65  static void addCallback(DtConnectionMgr* conn,
66  DtReserveMultiNameCb cb, void* usr, bool isMomCallback=false);
67  static void removeCallback(DtConnectionMgr* conn,
68  DtReserveMultiNameCb cb, void* usr, bool isMomCallback=false);
69 
70 protected:
71 
73  virtual char const * objectNamesPtr() const;
74  virtual char* objectNamesPtr();
75 
77  virtual void setObjectNamesSize( unsigned long size );
78  virtual unsigned long objectNamesSize() const;
79 
81  int setMinSizes( const std::set<std::wstring>& objectNames);
82 
84  virtual DtNetReserveMultiNameMsg* netReserveMultiNameMsg();
85  virtual DtNetReserveMultiNameMsg const * netReserveMultiNameMsg() const;
86 
89 
91  virtual int minSize() const;
92 };
93 
94 #endif
95 
DtRtiMsgKind
Definition: rtiMsgKind.h:9
void(* DtReserveMultiNameCb)(const DtReserveMultiNameMsg &inter, void *usr)
Definition: reserveMultiNameMsg.h:23
Definition: netRtiMsgHdr.h:23
!DtIFSPEC1516
Definition: fedTimeFactory.h:190
virtual void printData(DtLogicalTimeFactory *logicalTimeFactory) const
Instances of DtConnectionMgr manage the communication objects that the RTI will use to either communi...
Definition: connectMgr.h:60
DtRtiMsg is the base class for messages between RTI components.
Definition: rtiMsg.h:45
virtual DtRtiMsg * clone(bool copy=true) const =0
Return a copy/empty object of the same type as this.
virtual DtRtiMsgKind internalDtRtiMsgKind()=0
Definition: reserveMultiNameMsg.h:25
Definition: netReserveMultiMsg.h:19
#define DT_DLL_LRC
Definition: rtiMsConfig.h:126

Document ID: Generated on Mon Sep 7 15:40:32 EDT 2020 from SVN revision 217499
Copyright © 2005-2020 MAK Technologies Inc. All Rights Reserved (www.mak.com)