VR-Link API Documentation for DIS
vlFedTarget.h
Go to the documentation of this file.
1 /*********************************************************************
2 ** Copyright (c) 1992-2010 VT MAK
3 ** All rights reserved.
4 *********************************************************************/
9 #pragma once
10 
11 #include "vlMachineTypes.h"
12 #include <vlutil/vlString.h>
13 #include <map>
14 #include <vector>
15 
16 #ifdef DtUSE_UTILITIES_NAMESPACE
17 namespace DtUSE_UTILITIES_NAMESPACE
18 {
19 #endif
20 
22 {
24  DtFom13 = 1,
25  DtFom1516 = 2,
27 };
28 
30 {
33 };
34 
36 {
39 };
40 
44 {
51 };
52 
53 typedef std::map<unsigned long, DtString> DtUpdateRateNameByHandleMap;
54 typedef std::map<DtString, unsigned long> DtUpdateRateHandleByNameMap;
55 
60 
62 {
63 public:
64 
66  DtFedTarget();
67 
69  virtual ~DtFedTarget();
70 
72  DtFedTarget(const DtFedTarget& orig);
73 
75  DtFedTarget& operator=(const DtFedTarget& orig);
76 
78  virtual void setFomType(DtFomType type);
79  virtual DtFomType fomType();
80 
82  virtual void addSpace(const char* name) = 0;
83 
86  virtual void addDimension(const char* SpaceName, const char* dimName) = 0;
87 
89  virtual void addDimension(const char* dimName, unsigned long upperBound,
90  unsigned long defaultLowerBound, unsigned long defaultUpperBound,
91  bool excluded) = 0;
92 
94  virtual void addInterClass(const char* name,
95  const char* baseName, DtTransportType transport,
96  DtOrderType order, const char* space=0) = 0;
97 
100  virtual void addParameter(const char* className,
101  const char* paramName) = 0;
102 
105  virtual bool addInteractionDimension(const char* interactionName,
106  const char* dimension) = 0;
107 
109  virtual void addObjClass(const char* name,
110  const char* baseName) = 0;
111 
114  virtual void addAttribute(const char* className,
115  const char* attributeName, DtTransportType transport,
116  DtOrderType order, const char* space=0) = 0;
117 
120  virtual bool addAttributeDimension(const char* className,
121  const char* attrName, const char* dimName) = 0;
122 
123 
124  //-------------------------------------------------------------------------
126  //-------------------------------------------------------------------------
127 
129  virtual bool autoProvide() const;
130  virtual void setAutoProvide(bool value);
131 
133  virtual bool conveyRegionDesignatorSets() const;
134  virtual void setConveyRegionDesignatorSets(bool value);
135 
137  virtual bool conveyProducingFederate() const;
138  virtual void setConveyProducingFederate(bool value);
139 
141  virtual bool attributeScopeAdvisory() const;
142  virtual void setAttributeScopeAdvisory(bool value);
143 
145  virtual bool attributeRelevanceAdvisory() const;
146  virtual void setAttributeRelevanceAdvisory(bool value);
147 
149  virtual bool objectClassRelevanceAdvisory() const;
150  virtual void setObjectClassRelevanceAdvisory(bool value);
151 
153  virtual bool interactionRelevanceAdvisory() const;
154  virtual void setInteractionRelevanceAdvisory(bool value);
155 
157  virtual bool serviceReporting() const;
158  virtual void setServiceReporting(bool value);
159 
161  virtual bool exceptionReporting() const;
162  virtual void setExceptionReporting(bool value);
163 
165  virtual bool delaySubscriptionEvaluation() const;
166  virtual void setDelaySubscriptionEvaluation(bool value);
167 
169  virtual DtResignAction automaticResignAction() const;
170  virtual void setAutomaticResignAction(DtResignAction value);
171 
173  virtual bool knownUpdateRate( const DtString updateRateName ) const;
174 
176  virtual void addUpdateRate( const DtString updateRateName, float rate );
177 
179  DtString updateRateNameByHandle( unsigned long handle );
180 
181 public:
182 
184  static void setDefaultAutoProvide(bool onOff);
185  static bool defaultAutoProvide();
186 
188  static void setDefaultConveyRegionDesignatorSets(bool onOff);
189  static bool defaultConveyRegionDesignatorSets();
190 
192  static void setDefaultConveyProducingFederate(bool onOff);
193  static bool defaultConveyProducingFederate();
194 
196  static void setDefaultObjectClassRelevanceAdvisory(bool onOff);
197  static bool defaultObjectClassRelevanceAdvisory();
198 
200  static void setDefaultAttributeRelevanceAdvisory(bool onOff);
201  static bool defaultAttributeRelevanceAdvisory();
202 
204  static void setDefaultAttributeScopeAdvisory(bool onOff);
205  static bool defaultAttributeScopeAdvisory();
206 
208  static void setDefaultInteractionRelevanceAdvisory(bool onOff);
209  static bool defaultInteractionRelevanceAdvisory();
210 
212  static void setDefaultServiceReporting(bool onOff);
213  static bool defaultServiceReporting();
214 
216  static void setDefaultExceptionReporting(bool onOff);
217  static bool defaultExceptionReporting();
218 
220  static void setDefaultAutomaticResignAction( DtResignAction val );
221  static DtResignAction defaultAutomaticResignAction();
222 
223 protected:
224 
236 
238 
240  std::vector<float> myUpdateRates;
241 
244 
247 
248 protected:
249 
260 };
261 
262 #ifdef DtUSE_UTILITIES_NAMESPACE
263 }
264 #endif
265 

Document ID: Generated on Wed Aug 14 15:35:11 EDT 2013 from SVN revision 130445
Copyright © 2005-2013 VT MÄK. All Rights Reserved (www.mak.com)