MAK RTIspy API Documentation for HLA Evolved
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
updateTsoMsg.h
Go to the documentation of this file.
1 /*********************************************************************
2 ** Copyright (c) 1998 MaK Technologies, Inc.
3 ** All rights reserved.
4 *********************************************************************/
5 /*********************************************************************
6 ** $RCSfile: updateTsoMsg.h,v $ $Revision: 1.12 $ $State: Exp $
7 *********************************************************************/
8 
11 
13 #ifndef DtUpdateTsoMsg_H_
14 #define DtUpdateTsoMsg_H_
15 
16 #ifdef DtTIME
17 
18 #include "updateMsg.h"
19 #include "netUpdateTsoMsg.h"
20 
21 class DtConnectionMgr;
22 
23 class DT_DLL_LRC DtUpdateTsoMsg : public DtUpdateMsg
24 {
25 public:
26 
28  DtUpdateTsoMsg(DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
29 
30  DtUpdateTsoMsg(
31  DtObjectInstanceHandle objHand,
32  const char* objName,
33  DtObjectClassHandle classHand,
34  const DtAhvpBase& theAttributes,
35  DtOrderHandle order,
36  DtRtiApiTime const & theTime,
37  DtRtiApiTagConstRef theTag,
38  unsigned long serialNumberVal,
39  DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
40 
41  DtUpdateTsoMsg(const DtNetUpdateTsoMsg* netRepMsg,
42  DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
43 
45  virtual ~DtUpdateTsoMsg();
46 
48  virtual DtRtiMsg* clone(bool copy = true) const;
49 
51  virtual void set(DtObjectInstanceHandle objHand, const char* objName, DtObjectClassHandle theClass, const DtAhvpBase& theAttributes, DtOrderHandle order,
52  DtRtiApiTime const & theTime, DtRtiApiTagConstRef theTag, unsigned long serialNumberVal, bool adjustBufferSize = true);
53 
55  virtual void setClassHandle(DtObjectClassHandle hand);
56  virtual DtObjectClassHandle classHandle() const;
57 
59  virtual void setObjHandle(DtObjectInstanceHandle id);
60  virtual DtObjectInstanceHandle objHandle() const;
61 
63  virtual void setOrderType(DtOrderHandle type);
64  virtual DtOrderHandle orderType() const;
65 
66 
68  virtual void setSerialNumber(unsigned long handleValue);
69  virtual unsigned long serialNumber() const;
70 
72  virtual DtRtiApiTime const * time(DtLogicalTimeFactory* logicalTimeFactory) const;
73 
75  virtual void printData(DtLogicalTimeFactory* logicalTimeFactory) const;
76 
77 public:
78 
80  static DtRtiMsg* create(DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
81  static DtRtiMsg* create(const DtNetMsgHeader* initial,
82  DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
83 
85  static void addCallback(DtConnectionMgr *conn, DtUpdateCb cb, void *usr);
86  static void removeCallback(DtConnectionMgr *conn, DtUpdateCb cb, void *usr);
87 
88 protected:
89 
92 
93  virtual void setTime(DtRtiApiTime const & time, bool adjustBufferSize = true);
96 
98  virtual DtNetUpdateTsoMsg* netUpdateTsoMsg();
99  virtual const DtNetUpdateTsoMsg* netUpdateTsoMsg() const;
100 
103 
105  virtual int minSize(DtRtiApiTime const * theTime=NULL,
106  DtAhvpBase const * attrs=NULL,
107  char const * objName=NULL,
108  DtRtiApiTagConstRef theTag = theDefaultTag) const;
109 
111  virtual void setNameSize(int size);
112  virtual int nameSize() const;
113 
115  virtual void setTagSize(int size);
116  virtual int tagSize() const;
117 
119  virtual void setTimeSize(int size);
120  virtual int timeSize() const;
121 
123  virtual int attributeFieldSize() const;
124 
126  virtual DtNetAttrs* netAttrs();
127  virtual DtNetBigAttrs* netBigAttrs();
128 
130  virtual DtNetU32* channelPtr() const;
131 
133  virtual char* timePtr();
134 
136  virtual char* namePtr();
137 
139  virtual char* tagPtr();
140 
142  virtual DtUpdateTsoMsg* selfTso() const;
143 };
144 
145 inline DtUpdateTsoMsg* DtUpdateTsoMsg::selfTso() const
146 {
147  return const_cast<DtUpdateTsoMsg*>( this );
148 }
149 
150 #endif
151 #endif
Definition: aHandValBase.h:21
DtRtiMsgKind
Definition: rtiMsgKind.h:9
Definition: netRtiMsgHdr.h:23
virtual void setTime(const DtRtiApiTime &time)
Set/Get time Used in timestamped messages.
virtual void setTagSize(int size)=0
Set/Get tag size.
Definition: fedTimeFactory.h:73
Definition: netAttrs.h:99
virtual void printData(DtLogicalTimeFactory *logicalTimeFactory) const
virtual DtRtiApiTime const * time(DtLogicalTimeFactory *fedTimeFactory) const
virtual int nameSize() const =0
virtual DtObjectInstanceHandle objHandle() const =0
virtual char * namePtr()=0
Returns pointer to the name in the netMsg.
virtual int tagSize() const =0
RTI_API::LogicalTime DtRtiApiTime
Typedefs for RTI API types that frequently require conditional precompile directives.
Definition: rtiApiTypes.h:91
DtHandle DtObjectClassHandle
Definition: internalTypes.h:48
virtual DtObjectClassHandle classHandle() const =0
virtual DtNetBigAttrs * netBigAttrs()=0
Returns pointer to the network rep of the avList.
virtual void setNameSize(int size)=0
Set/Get name size.
DtRtiApiVariableLengthData const & DtRtiApiTagConstRef
Definition: rtiApiTypes.h:98
virtual unsigned long serialNumber() const
virtual void setClassHandle(DtObjectClassHandle hand)=0
Set/Get handle.
virtual DtNetU32 * channelPtr() const =0
Returns pointer to the channel in the netMsg.
Instances of DtConnectionMgr manage the communication objects that the RTI will use to either communi...
Definition: connectMgr.h:67
Format for arranging the data for a time stamped update message.
Definition: netUpdateTsoMsg.h:19
DtRtiMsg is the base class for messages between RTI components.
Definition: rtiMsg.h:34
DtHandle DtObjectInstanceHandle
Definition: internalTypes.h:50
virtual DtRtiMsg * clone(bool copy=true) const =0
Return a copy/empty object of the same type as this.
Definition: netAttrs.h:113
virtual DtRtiMsgKind internalDtRtiMsgKind()=0
virtual int attributeFieldSize() const =0
Returns the current size of the attribute field.
virtual void setObjHandle(DtObjectInstanceHandle id)=0
Set/Get handle.
virtual DtOrderHandle orderType() const
This base implementation always returns recieve order.
#define DT_DLL_LRC
Definition: rtiMsConfig.h:155
virtual char * tagPtr()=0
Returns pointer to the tag in the netMsg.
Definition: updateMsg.h:28
void(* DtUpdateCb)(const DtUpdateMsg &msg, void *usr)
Definition: updateMsg.h:26
virtual DtNetAttrs * netAttrs()=0
Returns pointer to the network rep of the avList.
virtual void setSerialNumber(unsigned long serialNumberValue)
Set/Get event retraction serial number Used in timestamped messages.
DtHandle DtOrderHandle
Definition: internalTypes.h:58

Document ID: Generated on Sun Jul 20 16:15:30 EDT 2025 from SVN revision 277985
Copyright © 2005-2025 MAK Technologies Inc. All Rights Reserved (www.mak.com)