MAK RTIspy API Documentation for HLA 4
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
repObjSub.h
Go to the documentation of this file.
1 /*********************************************************************
2 ** Copyright (c) 2001 MAK Technologies, Inc.
3 ** All rights reserved.
4 *********************************************************************/
5 /*********************************************************************
6 ** $RCSfile: repObjSub.h,v $ $Revision: 1.10 $ $State: Exp $
7 *********************************************************************/
8 #ifdef DtMOM
9 
12 
13 #ifndef DtReportObjectSubscriptionInteraction_H_
14 #define DtReportObjectSubscriptionInteraction_H_
15 
16 #include "rtiMsConfig.h"
17 #include "internalTypes.h"
18 #include "mInteraction.h"
19 #include <vlutil/vlList.h>
20 
21 class DtMomInterCbMgr;
22 class DtReportObjectSubscriptionInteraction;
23 typedef void (*DtReportObjectSubscriptionInteractionCb)
24  (const DtReportObjectSubscriptionInteraction& inter, void* usr);
25 
26 class DT_DLL_LRC DtReportObjectSubscriptionInteraction :
27  public DtReportInteraction
28 {
29 public:
30 
32  DtReportObjectSubscriptionInteraction();
33 
35  virtual ~DtReportObjectSubscriptionInteraction();
36 
38  DtReportObjectSubscriptionInteraction(
39  const DtReportObjectSubscriptionInteraction& orig);
40 
42  DtReportObjectSubscriptionInteraction& operator=(
43  const DtReportObjectSubscriptionInteraction& orig);
44 
47  virtual const DtPhvps& phvps();
48 
51  virtual bool setFromPhvps(const DtPhvps& phvps);
52 
54  virtual long numberOfClasses() const;
55  virtual void setNumberOfClasses(long data);
56 
58  virtual const DtAttributeHandleSet& attributeList() const;
59  virtual void setAttributeList(const DtAttributeHandleSet& data);
60 
62  virtual bool active() const;
63  virtual void setActive(bool data);
64 
66  virtual DtObjectClassHandle objectClass() const;
67  virtual void setObjectClass(DtObjectClassHandle data);
68 
69 #if !defined(DtIFSPEC13) && !defined(DtIFSPEC1516)
70  virtual std::wstring maxUpdateRate() const;
72  virtual void setMaxUpdateRate(const std::wstring& data);
73 #endif
74 
75 public:
77  static DtReportInteraction* create();
78 
80  static void addCallback(DtMomInterCbMgr* callBackManager,
81  DtReportObjectSubscriptionInteractionCb cb, void* usr);
82  static void removeCallback(DtMomInterCbMgr* callBackManager,
83  DtReportObjectSubscriptionInteractionCb cb, void* usr);
84 
85 protected:
86 
88  virtual void encodeNumberOfClasses(
89  const DtMomInteraction& data,
90  DtPhvps* parameters,
91  DtParameterHandle parameterHandle);
92 
94  virtual void encodeActive(
95  const DtMomInteraction& data,
96  DtPhvps* parameters,
97  DtParameterHandle parameterHandle);
98 
100  virtual void encodeObjectClass(
101  const DtMomInteraction& data,
102  DtPhvps* parameters,
103  DtParameterHandle parameterHandle);
104 
106  virtual void decodeNumberOfClasses(
107  DtMomInteraction* data,
108  const DtPhvps& parameters,
109  int index);
110 
112  virtual void decodeActive(
113  DtMomInteraction* data,
114  const DtPhvps& parameters,
115  int index);
116 
118  virtual void decodeObjectClass(
119  DtMomInteraction* data,
120  const DtPhvps& parameters,
121  int index);
122 
124  virtual void encodeAttributeList(
125  DtPhvps* parameters,
126  DtParameterHandle parameterHandle);
127 
129  virtual void decodeAttributeList(
130  const DtPhvps& parameters,
131  int index);
132 
133 #if !defined(DtIFSPEC13) && !defined(DtIFSPEC1516)
134  virtual void encodeMaxUpdateRate(
136  const DtMomInteraction& data,
137  DtPhvps* parameters,
138  DtParameterHandle parameterHandle);
139 
141  virtual void decodeMaxUpdateRate(
142  DtMomInteraction* data,
143  const DtPhvps& parameters,
144  int index);
145 #endif
146 
147 public:
148  static const char* theInteractionName;
149 
150 protected:
152  long myNumberOfClasses;
153  DtAttributeHandleSet myAttributeSet;
154  bool myActive;
155  DtObjectClassHandle myObjectClass;
156  std::wstring myMaxUpdateRate;
157 
158  const char *NUMBER_OF_CLASSES_PARAMETER_NAME;
159  const char *ATTRIBUTE_LIST_PARAMETER_NAME;
160  const char *ACTIVE_PARAMETER_NAME;
161  const char *OBJECT_CLASS_PARAMETER_NAME;
162 #if !defined(DtIFSPEC13) && !defined(DtIFSPEC1516)
163  const char *MAX_UPDATE_RATE_PARAMETER_NAME;
164 #endif
165 
166 };
167 
168 #endif
169 #endif
DtHandle DtObjectClassHandle
Definition: internalTypes.h:48
Defines the internal representation of attribute/parameter handle sets.
Definition: attrHandSet.h:30
#define DT_DLL_LRC
Definition: rtiMsConfig.h:155
Definition: pHandValSet.h:38
The declaration of internal types.
DtHandle DtParameterHandle
Definition: internalTypes.h:56

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)