MAK RTIspy API Documentation for HLA 1516
serDelObj.h
Go to the documentation of this file.
1 /*********************************************************************
2 ** Copyright (c) 2001 MAK Technologies, Inc.
3 ** All rights reserved.
4 *********************************************************************/
5 /*********************************************************************
6 ** $RCSfile: serDelObj.h,v $ $Revision: 1.9 $ $State: Exp $
7 *********************************************************************/
8 #ifdef DtMOM
9 
12 
13 #ifndef DtDeleteObjectInstanceInteraction_H_
14 #define DtDeleteObjectInstanceInteraction_H_
15 
16 #include "rtiMsConfig.h"
17 #include "internalTypes.h"
18 #include "mInteraction.h"
19 #include <vlutil/vlList.h>
20 
21 #if defined(DtIFSPEC1516) || defined(DtIFSPEC1516E)
22 #include <RTI/VariableLengthData.h>
23 #include <RTI/LogicalTime.h>
24 #else
25 #ifdef DtIFSPEC13DLC
26 #include "RTI13.h"
27 #define RTI rti13
28 #else
29 #include "RTI.hh"
30 #endif
31 #endif
32 
33 
34 class DtMomInterCbMgr;
35 class DtDeleteObjectInstanceInteraction;
36 typedef void (*DtDeleteObjectInstanceInteractionCb)
37  (const DtDeleteObjectInstanceInteraction& inter, void* usr);
38 
39 class DT_DLL_LRC DtDeleteObjectInstanceInteraction :
40  public DtServiceInteraction
41 {
42 public:
43 
45  DtDeleteObjectInstanceInteraction();
46 
48  virtual ~DtDeleteObjectInstanceInteraction();
49 
51  DtDeleteObjectInstanceInteraction(
52  const DtDeleteObjectInstanceInteraction& orig);
53 
55  DtDeleteObjectInstanceInteraction& operator=(
56  const DtDeleteObjectInstanceInteraction& orig);
57 
60  virtual const DtPhvps& phvps();
61 
64  virtual bool setFromPhvps(const DtPhvps& phvps);
65 
67 #if defined(DtIFSPEC1516) || defined(DtIFSPEC1516E)
68  virtual DtObjectInstanceHandle instance() const;
69  virtual void setInstance(DtObjectInstanceHandle data);
70 #else
71  virtual MAKRti::DtString const & instance() const;
72  virtual MAKRti::DtString & instance();
73  virtual void setInstance(MAKRti::DtString const & data);
74 #endif
75 
77 #ifdef DtIFSPEC1516
78  virtual rti1516::VariableLengthData const & tag() const;
79  virtual rti1516::VariableLengthData & tag();
80  virtual void setTag(rti1516::VariableLengthData const & data);
81 #elif defined(DtIFSPEC1516E)
82  virtual rti1516e::VariableLengthData const & tag() const;
83  virtual rti1516e::VariableLengthData & tag();
84  virtual void setTag(rti1516e::VariableLengthData const & data);
85 #else
86  virtual MAKRti::DtString const & tag() const;
87  virtual MAKRti::DtString & tag();
88  virtual void setTag(MAKRti::DtString const & data);
89 #endif
90 
93 #ifdef DtIFSPEC1516
94  virtual bool getFedtime(rti1516::LogicalTime & time) const;
95  virtual void setFedtime(rti1516::LogicalTime const & time);
96 #elif defined(DtIFSPEC1516E)
97  virtual bool getFedtime(rti1516e::LogicalTime & time) const;
98  virtual void setFedtime(rti1516e::LogicalTime const & time);
99 #else
100  virtual bool getFedtime(RTI::FedTime & time) const;
101  virtual void setFedtime(RTI::FedTime const & time);
102 #endif
103 
105  virtual bool fedTimeReceived() const;
106 
107 public:
109  static DtServiceInteraction* create();
110 
112  static void addCallback(DtMomInterCbMgr* callBackManager,
113  DtDeleteObjectInstanceInteractionCb cb, void* usr);
114  static void removeCallback(DtMomInterCbMgr* callBackManager,
115  DtDeleteObjectInstanceInteractionCb cb, void* usr);
116 
117 protected:
118 
120  virtual void encodeInstance(
121  const DtMomInteraction& data,
122  DtPhvps* parameters,
123  DtParameterHandle parameterHandle);
124 
126  virtual void decodeInstance(
127  DtMomInteraction* data,
128  const DtPhvps& parameters,
129  int index);
131  virtual void encodeTag(
132  const DtMomInteraction& data,
133  DtPhvps* parameters,
134  DtParameterHandle parameterHandle);
135 
137  virtual void decodeTag(
138  DtMomInteraction* data,
139  const DtPhvps& parameters,
140  int index);
142  virtual void encodeFedtime(
143  const DtMomInteraction& data,
144  DtPhvps* parameters,
145  DtParameterHandle parameterHandle);
146 
148  virtual void decodeFedtime(
149  DtMomInteraction* data,
150  const DtPhvps& parameters,
151  int index);
152 
153 public:
154  static const char* theInteractionName;
155 
156 protected:
158 #ifdef DtIFSPEC1516
159  DtObjectInstanceHandle myInstance;
161 #elif defined(DtIFSPEC1516E)
162  DtObjectInstanceHandle myInstance;
164 #else
165  MAKRti::DtString myInstance;
166  MAKRti::DtString myTag;
167 #endif
168  DtMomNetParameter* myEncodedTime;
169 
170  bool myReceivedInstance;
171  bool myReceivedTag;
172  bool myReceivedEncodedTime;
173 
174  const char *OBJECT_INSTANCE_PARAMETER_NAME;
175  const char *TAG_PARAMETER_NAME;
176  const char *FEDTIME_PARAMETER_NAME;
177 };
178 
179 #endif
180 #endif

Document ID: Generated on Fri Mar 14 19:08:55 EDT 2014 from SVN revision 137085
Copyright © 2005-2014 VT MÄK Inc. All Rights Reserved (www.mak.com)