MAK RTIspy API Documentation for HLA 1.3
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
creRespMsg.h
Go to the documentation of this file.
1 /*********************************************************************
2 ** Copyright (c) 1998 MaK Technologies, Inc.
3 ** All rights reserved.
4 *********************************************************************/
5 /*********************************************************************
6 ** $RCSfile: creRespMsg.h,v $ $Revision: 1.18 $ $State: Exp $
7 *********************************************************************/
8 
11 
12 #ifndef DtCreateResponseMsg_H_
13 #define DtCreateResponseMsg_H_
14 
15 #include "rtiMsg.h"
16 #include "netRtiMsgHdr.h"
17 #include "netCrRespMsg.h"
18 
19 class DtConnectionMgr;
21 typedef void (*DtCreateResponseCb)(const DtCreateResponseMsg& inter, void* usr);
22 
24 {
34 };
35 
37 {
38 public:
39 
41 
42  DtCreateResponseMsg(DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
43  DtCreateResponseMsg(unsigned long ID, DtCreateResponseFlag flag, MAKRti::DtString const & errorString,
44  DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
45  DtCreateResponseMsg(const DtNetCreateResponseMsg* netRepMsg, DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
47 
49  virtual ~DtCreateResponseMsg();
50 
52  virtual DtRtiMsg* clone(bool copy = true) const;
53 
55  virtual void set(unsigned long ID, DtCreateResponseFlag flag, MAKRti::DtString const & errorString);
56 
58 
59  void setDestinationID( const unsigned long ID );
60  const unsigned long destinationID() const;
61 
62  void setResponseFlag(DtCreateResponseFlag flag);
63  DtCreateResponseFlag responseFlag() const;
64 
65  void setErrorString(MAKRti::DtString const& errorStr);
66  MAKRti::DtString errorString() const;
68 
70  virtual void printData(DtLogicalTimeFactory* logicalTimeFactory) const;
71 
72 public:
73 
75  static DtRtiMsg* create(const DtNetMsgHeader* initial, DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
76 
78  static DtRtiMsg* create(DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
79 
81 
82  static void addCallback(DtConnectionMgr* conn, DtCreateResponseCb cb, void* usr);
83  static void removeCallback(DtConnectionMgr* conn, DtCreateResponseCb cb, void* usr);
85 
86 protected:
87 
89 
90  virtual DtNetCreateResponseMsg* netCreateResponseMsg();
91  virtual const DtNetCreateResponseMsg* netCreateResponseMsg() const;
93 
96 
98  virtual int minSize() const;
99 
101  virtual DtCreateResponseMsg* self() const;
102 
104 
105  void setErrorStringSize(unsigned long size);
106  unsigned long errorStringSize() const;
108 
110 
111  char* errorStringPtr();
112  const char* errorStringPtr() const;
114 
115 };
116 
117 
119 {
120  return const_cast<DtCreateResponseMsg*>( this );
121 }
122 
123 #endif
124 
Definition: creRespMsg.h:25
DtRtiMsgKind
Definition: rtiMsgKind.h:9
Definition: netRtiMsgHdr.h:23
Definition: creRespMsg.h:29
Used as a invalid value while waiting for a response.
Definition: creRespMsg.h:30
Definition: fedTimeFactory.h:73
virtual void printData(DtLogicalTimeFactory *logicalTimeFactory) const
Definition: creRespMsg.h:33
Definition: creRespMsg.h:27
void(* DtCreateResponseCb)(const DtCreateResponseMsg &inter, void *usr)
Definition: creRespMsg.h:21
Definition: creRespMsg.h:36
Instances of DtConnectionMgr manage the communication objects that the RTI will use to either communi...
Definition: connectMgr.h:67
DtRtiMsg is the base class for messages between RTI components.
Definition: rtiMsg.h:34
virtual DtCreateResponseMsg * self() const
Casts away const-ness.
Definition: creRespMsg.h:118
DtCreateResponseFlag
Definition: creRespMsg.h:23
virtual DtRtiMsg * clone(bool copy=true) const =0
Return a copy/empty object of the same type as this.
virtual DtRtiMsgKind internalDtRtiMsgKind()=0
Definition: creRespMsg.h:28
#define DT_DLL_LRC
Definition: rtiMsConfig.h:155
Definition: netCrRespMsg.h:19
Definition: creRespMsg.h:31
Definition: creRespMsg.h:26

Document ID: Generated on Wed Jul 8 16:20:32 EDT 2026 from SVN revision 291616
Copyright © 2005-2025 MAK Technologies Inc. All Rights Reserved (www.mak.com)