VR-Link API Documentation for HLA Evolved
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
entityPublisherHLA.h
Go to the documentation of this file.
1 /*********************************************************************
2 ** Copyright (c) 1992-2025 MAK Technologies, Inc
3 ** All rights reserved.
4 *********************************************************************/
5 
9 #ifndef entityPublisherHLA_H_
10 #define entityPublisherHLA_H_
11 
12 #if DtHLA
13 
14 #include "objectPublisherHLA.h"
15 #include <vlpi/thresholder.h>
16 #include <vlpi/disEnums.h>
17 
18 
20 class DtGeodeticRegion;
22 
29 {
30 public:
31 
36  static const DtEntityType& guiseSameAsType();
37 
38 public:
39 
41  typedef DtEntityStateRepository* (*DtStateRepCreator)();
42 
43 public:
44 
47  DtEntityStateRepository* stateRepToUse,
48  DtExerciseConn* conn,
49  const char* name = 0,
50  const DtDDMRegionSet* regionSetToUse = 0);
51 
54  RTI::ObjectClassHandle h,
55  DtExerciseConn* conn,
56  const char* name = 0,
57  const DtDDMRegionSet* regionSetToUse = 0);
58 
61  const DtEntityType& type,
62  DtExerciseConn* conn,
63  const char* name = 0,
64  const DtDDMRegionSet* regionSetToUse = 0);
65 
68  const DtEntityType& type,
69  DtExerciseConn* conn,
70  DtDeadReckonTypes algorithm,
71  DtForceType forceId,
72  const DtEntityType& guise = guiseSameAsType(),
73  const char* name = 0,
74  const DtDDMRegionSet* regionSetToUse = 0);
75 
82 
84  virtual ~DtEntityPublisher();
85 
88  virtual DtEntityStateRepository* entityStateRep();
89 
91  virtual DtEntityStateRepository* esr();
92 
96  virtual void enableDiGuyInformation();
97 
100  virtual bool tick();
101 
105  virtual DtOwnershipHandler* setOwnershipHandler( DtOwnershipHandler* handler );
106 
108  virtual void divestObject();
109 
110 public:
111 
113  static DtStateRepCreator setStateRepCreator(DtStateRepCreator creator);
114 
115 public:
116 
118 
119  static void setDfltRotationThreshold(double r);
120  static double dfltRotationThreshold();
121  static void setDfltTranslationThreshold(double t);
122  static double dfltTranslationThreshold();
124 
125 
126 protected:
127 
133  const char* name = 0,
134  const DtDDMRegionSet* regionSetToUse = 0);
135 
137  void init();
138 
142  void createGeographicRegion(DtExerciseConn* conn);
143 
146 
149 
153  const char* objectClassNameFromType(const DtEntityType& type);
154 
155 protected:
156 
157  static DtStateRepCreator theStateRepCreator;
158 
160  std::shared_ptr<DtGeodeticRegion> myGeodeticPublishingRegion;
161 };
162 
164 {
166 }
167 
169 {
171 }
172 
173 #if DT_CANT_USE_STATIC_MEMBER_FCN_AS_DFLT_ARG
174 inline const DtEntityType& gGuiseSameAsType()
175 {
177 }
178 #else
179 #undef gGuiseSameAsType
180 #endif
181 
182 #endif
183 #endif
184 
DtStateRepository * myStateRep
Definition: objectPublisherHLA.h:221
Instances of DtExerciseConn are used to provide an application&#39;s interface or connection to the netwo...
Definition: exerciseConnHLA.h:61
Instances of DtDIGuyObjectPublisher publish DIGuyObject objects to the network.
Definition: diGuyObjectPublisherHLA.h:19
#define DT_DLL_VL
Definition: vlMachineTypes.h:108
std::shared_ptr< DtGeodeticRegion > myGeodeticPublishingRegion
Definition: entityPublisherHLA.h:160
DtDIGuyObjectPublisher * myDiGuyObjectPub
Definition: entityPublisherHLA.h:159
virtual DtEntityStateRepository * esr()
Synonym for entityStateRep().
Definition: entityPublisherHLA.h:168
Instances of DtObjectPublisher are used for local or source simulations of objects, (i.e.
Definition: objectPublisherHLA.h:34
std::set< DtDDMRegionSP > DtDDMRegionSet
Definition: region13.h:34
Instances of DtEntityPublisher are used for local or source simulations of entities (i...
Definition: entityPublisherHLA.h:28
Instances of DtEntityStateRepository are used to maintain attributes and state of entity objects in a...
Definition: entityStateRepository.h:42
virtual bool tick()
Tick (update) this object.
DtGeodeticRegion.
Definition: geodeticRegion.h:38
DtObjectPublisher & operator=(const DtObjectPublisher &orig)
assignment operator – not implemented
virtual DtEntityStateRepository * entityStateRep()
Returns a pointer to the EntityStateRepository - through which you can set or inspect current state i...
Definition: entityPublisherHLA.h:163
static DtStateRepCreator theStateRepCreator
Definition: entityPublisherHLA.h:157
This is a base class meant to encapsulate user callbacks on ownership management services.
Definition: ownershipHandlerHLA.h:27
DtForceType
Section 4.
Definition: disEnums.h:199
Contains the standard DIS enumerations.
DtDeadReckonTypes
Definition: disEnums.h:1013
This file provides a declaration of the class DtObjectPublisher.
void init(RTI::ObjectClassHandle hand, DtStateRepository *stateRep, DtStateRepository *asSeenByRemote, DtHlaStateEncoder *encoder=0, DtHlaStateDecoder *decoder=0)
static const DtEntityType & guiseSameAsType()
Returns a constant that can be passed to the constructor indicating that we should use the entity typ...
DtEntityType is used to represent the type an entity object.
Definition: entityType.h:26
class DtHlaObjectWithStateRep:
Definition: hlaObjectWithStateRep.h:28

Document ID: Generated on Thu Oct 16 00:12:25 EDT 2025 from SVN revision 280738
Copyright © 1992-2025 MAK Technologies. All Rights Reserved (www.mak.com)