MAK RTIspy API Documentation for HLA 1.3
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
reqDiscObjMsg.h
Go to the documentation of this file.
1 /*********************************************************************
2 ** Copyright (c) 2001 MaK Technologies, Inc.
3 ** All rights reserved.
4 *********************************************************************/
5 /*********************************************************************
6 ** $RCSfile: reqDiscObjMsg.h,v $ $Revision: 1.6 $ $State: Exp $
7 *********************************************************************/
8 
11 
12 #ifndef DtReqDiscObjMsg_H_
13 #define DtReqDiscObjMsg_H_
14 
15 #include "rtiMsg.h"
16 #include "netDiscObjMsg.h"
17 
18 class DtConnectionMgr;
19 class DtReqDiscObjMsg;
20 
21 typedef void (*DtReqDiscObjCb)(const DtReqDiscObjMsg& msg, void* usr);
22 
24 {
25 public:
26 
28  DtReqDiscObjMsg(DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
29 
31  DtObjectInstanceHandle objHandleValue,
32  DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
33 
35  DtReqDiscObjMsg(const DtNetDiscObjMsg* netRepMsg,
36  DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
37 
39  virtual ~DtReqDiscObjMsg();
40 
42  virtual DtRtiMsg* clone(bool copy = true) const;
43 
45  virtual void set(
46  DtObjectInstanceHandle objHandleValue,
47  DtObjectClassHandle classHandleValue);
48 
50  virtual void setObjHandle(DtObjectInstanceHandle id);
51  virtual DtObjectInstanceHandle objHandle() const;
52 
54  virtual void setClassHandle(DtObjectClassHandle hand);
55  virtual DtObjectClassHandle classHandle() const;
56 
58  virtual void printData(DtLogicalTimeFactory* logicalTimeFactory) const;
59 
60 public:
61 
63  static DtRtiMsg* create(const DtNetMsgHeader* initial,
64  DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
65 
67  static DtRtiMsg* create(DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
68 
70  static void addCallback(DtConnectionMgr *conn,
71  DtReqDiscObjCb cb, void *usr);
72  static void removeCallback(DtConnectionMgr *conn,
73  DtReqDiscObjCb cb, void *usr);
74 
75 protected:
76 
78  virtual DtNetDiscObjMsg* netDiscObjMsg();
79  virtual const DtNetDiscObjMsg* netDiscObjMsg() const;
80 
83 
85  virtual int minSize() const;
86 
88  virtual DtReqDiscObjMsg* self() const;
89 };
90 
91 
93 {
94  return const_cast<DtReqDiscObjMsg*>( this );
95 }
96 
97 #endif
98 
DtRtiMsgKind
Definition: rtiMsgKind.h:9
Definition: netRtiMsgHdr.h:23
Definition: reqDiscObjMsg.h:23
!DtIFSPEC1516
Definition: fedTimeFactory.h:190
virtual void printData(DtLogicalTimeFactory *logicalTimeFactory) const
DtHandle DtObjectClassHandle
Definition: internalTypes.h:31
Definition: netDiscObjMsg.h:20
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
DtHandle DtObjectInstanceHandle
Definition: internalTypes.h:33
void(* DtReqDiscObjCb)(const DtReqDiscObjMsg &msg, void *usr)
Definition: reqDiscObjMsg.h:21
virtual DtReqDiscObjMsg * self() const
Casts away const-ness.
Definition: reqDiscObjMsg.h:92
virtual DtRtiMsg * clone(bool copy=true) const =0
Return a copy/empty object of the same type as this.
virtual DtRtiMsgKind internalDtRtiMsgKind()=0
#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)