MAK RTIspy API Documentation for HLA 1.3
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
interTsoMsg.h
Go to the documentation of this file.
1 /*********************************************************************
2 ** Copyright (c) 1998 MaK Technologies, Inc.
3 ** All rights reserved.
4 *********************************************************************/
5 /*********************************************************************
6 ** $RCSfile: interTsoMsg.h,v $ $Revision: 1.13 $ $State: Exp $
7 *********************************************************************/
8 
11 
12 #pragma once
13 
14 #ifdef DtTIME
15 
16 #include "interactMsg.h"
17 #include "netIntTsoMsg.h"
18 
20 
21 class DT_DLL_LRC DtInteractionTsoMsg : public DtInteractionMsg
22 {
23 public:
24 
26  DtInteractionTsoMsg(DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
27 
28  DtInteractionTsoMsg(
29  DtInteractionClassHandle theInteraction,
30  const DtPhvps& theParameters,
31  DtOrderHandle type,
32  DtRtiApiTime const & theTime,
33  DtRtiApiTagConstRef theTag,
34  unsigned long serialNumberVal,
35  unsigned long channel,
36  DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
37 
38  DtInteractionTsoMsg(const DtNetInteractionTsoMsg* netRepMsg,
39  DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
40 
42  virtual ~DtInteractionTsoMsg();
43 
45  virtual DtRtiMsg* clone(bool copy = true) const;
46 
48  virtual void set(DtInteractionClassHandle theInteraction, const DtPhvps& theParameters, DtOrderHandle type,
49  DtRtiApiTime const & theTime, DtRtiApiTagConstRef theTag, unsigned long serialNumberVal, unsigned long channel,
50  bool adjustBufferSize = true);
51 
53  virtual void set(DtInteractionClassHandle theInteraction, DtObjectInstanceHandle objectHandle,
54  const DtPhvps& theParameters, DtOrderHandle type, DtRtiApiTime const& theTime, DtRtiApiTagConstRef theTag,
55  unsigned long serialNumberVal, unsigned long channel, bool adjustBufferSize = true);
56 
58  virtual void setHandle(DtInteractionClassHandle hand);
59  virtual DtInteractionClassHandle handle() const;
60 
62  virtual void setObjectHandle(DtObjectInstanceHandle hand);
63  virtual DtObjectInstanceHandle objectHandle() const;
64 
66  virtual void setOrderType(DtOrderHandle type);
67  virtual DtOrderHandle orderType() const;
68 
70  virtual void setTime(DtRtiApiTime const & time, bool adjustBufferSize = true);
71  virtual DtRtiApiTime const * time(DtLogicalTimeFactory* logicalTimeFactory) const;
72 
74  virtual void setSerialNumber(unsigned long handleValue);
75  virtual unsigned long serialNumber() const;
76 
78  virtual void printData(DtLogicalTimeFactory* logicalTimeFactory) const;
79 
80 public:
81 
83  static DtRtiMsg* create(DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
84  static DtRtiMsg* create(const DtNetMsgHeader* initial,
85  DtBufferPtr buffer = DtUSE_INTERNAL_BUFFER);
86 
88  static void addCallback(DtConnectionMgr *conn,
89  DtInteractionCb cb, void *usr, bool isMomCallback=false);
90  static void removeCallback(DtConnectionMgr *conn,
91  DtInteractionCb cb, void *usr, bool isMomCallback=false);
92 
93 protected:
94 
96  virtual DtNetParams* netParams();
97  virtual DtNetBigParams* netBigParams();
98 
100  virtual DtNetInteractionTsoMsg* netInterTsoMsg();
101  virtual const DtNetInteractionTsoMsg* netInterTsoMsg() const;
102 
105 
107  virtual int minSize(const DtPhvps* params=NULL, DtRtiApiTime const * theTime=NULL,
108  DtRtiApiTagConstRef theTag=theDefaultTag) const;
109 
111  virtual void setTagSize(int size);
112  virtual int tagSize() const;
113 
115  virtual void setTimeSize(int size);
116  virtual int timeSize() const;
117 
119  virtual DtNetU32* channelPtr() const;
120 
122  virtual char* tagPtr();
123 
125  DtNetU32* serialNumberPtr() const;
126 
128  virtual char* timePtr();
129 
131  virtual DtInteractionTsoMsg* selfTso() const;
132 };
133 
134 inline DtInteractionTsoMsg* DtInteractionTsoMsg::selfTso() const
135 {
136  return const_cast<DtInteractionTsoMsg*>( this );
137 }
138 
139 #endif
Definition: netParms.h:112
virtual DtInteractionClassHandle handle() const =0
DtRtiMsgKind
Definition: rtiMsgKind.h:9
Definition: netRtiMsgHdr.h:23
virtual void setTime(const DtRtiApiTime &time)
Set/Get time Used in timestamped messages.
virtual char * tagPtr()=0
Returns pointer to the tag in the netMsg.
virtual DtNetBigParams * netBigParams()=0
Returns pointer to the network rep of the pvList.
Definition: fedTimeFactory.h:73
virtual void printData(DtLogicalTimeFactory *logicalTimeFactory) const
virtual DtRtiApiTime const * time(DtLogicalTimeFactory *fedTimeFactory) const
Definition: netParms.h:98
virtual void setObjectHandle(DtInteractionClassHandle hand)=0
Set/Get object instance handle.
RTI_API::LogicalTime DtRtiApiTime
Typedefs for RTI API types that frequently require conditional precompile directives.
Definition: rtiApiTypes.h:91
virtual void setTagSize(int size)=0
Set/Get tag size.
DtHandle DtInteractionClassHandle
Definition: internalTypes.h:52
DtRtiApiVariableLengthData const & DtRtiApiTagConstRef
Definition: rtiApiTypes.h:98
#define NULL
Definition: baseTypes13.h:8
virtual unsigned long serialNumber() const
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
DtHandle DtObjectInstanceHandle
Definition: internalTypes.h:50
void(* DtInteractionCb)(const DtInteractionMsg &inter, void *usr)
Definition: interactMsg.h:22
Format for arranging the data for an time stamped interaction message.
Definition: netIntTsoMsg.h:19
virtual DtRtiMsg * clone(bool copy=true) const =0
Return a copy/empty object of the same type as this.
virtual DtRtiMsgKind internalDtRtiMsgKind()=0
virtual DtOrderHandle orderType() const
This base implementation always returns recieve order.
virtual DtObjectInstanceHandle objectHandle() const =0
virtual DtNetParams * netParams()=0
Returns pointer to the network rep of the pvList.
#define DT_DLL_LRC
Definition: rtiMsConfig.h:155
Definition: pHandValSet.h:38
virtual void setHandle(DtInteractionClassHandle hand)=0
Set/Get handle.
virtual int tagSize() const =0
virtual void setSerialNumber(unsigned long serialNumberValue)
Set/Get event retraction serial number Used in timestamped messages.
DtHandle DtOrderHandle
Definition: internalTypes.h:58
virtual DtNetU32 * channelPtr() const =0
Returns pointer to the channel in the netMsg.
DtInteractionMsg is a message type that represents an HLA Interaction.
Definition: interactMsg.h:26

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)