VR-Forces Development_Version Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
vrfObjectParameters.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2013 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
11 
12 #pragma once
13 
14 #include "vrfutil/readerWriter.h"
15 #include "vrfutil/rwObjectType.h"
20 #include "vrfutil/rwForceType.h"
21 #include "vrfutil/rwReal.h"
22 #include "vrfutil/rwBoolean.h"
23 #include "vrfutil/rwAppearance.h"
24 #include "vrfutil/rwString.h"
25 #include "vrfutil/simClock.h"
34 #include "vrfobjparam/simSector.h"
37 #include <list>
41 #include "vrfutil/rwProperties.h"
42 
43 class DtSimResource;
45 class DtFilename;
49 
56 {
57 
58 public:
60 
62  DtVrfObjectParameters(const DtString& name = DtString::nullString(),
63  DtReaderWriterRegistry* parentRegistry = NULL, DtEnvironmentSP env = DtEnvironmentSP(), DtEnvValueSP* objectNode = NULL);
65  DtReaderWriterRegistry* parentRegistry = NULL, DtEnvironmentSP env = DtEnvironmentSP(), DtEnvValueSP* objectNode = NULL);
66 
68  virtual ~DtVrfObjectParameters();
69 
70 protected:
73  const DtString& name = DtString::nullString(),
74  DtReaderWriterRegistry* parentRegistry = NULL);
75 
77  const DtSymbolString& name,
78  DtReaderWriterRegistry* parentRegistry = NULL);
79 
80 public:
83 
84  virtual DtVrfObjectParameters* clone(
85  const DtString& name = DtString::nullString(),
86  DtReaderWriterRegistry* parentRegistry = NULL) const;
87 
88  virtual DtVrfObjectParameters* clone(
89  const DtSymbolString& name,
90  DtReaderWriterRegistry* parentRegistry = NULL) const;
91 
97  virtual bool init();
98 
104  virtual DtString type() const;
105 
117  virtual bool inheritValues(const DtVrfObjectParameters * benefactor);
118 
119  virtual void inheritValuesFromThisType(
120  const DtVrfObjectParameters * benefactor);
121 
123  virtual bool createLocalSubComponentTypes();
124 
126  virtual bool createRemoteSubComponentTypes();
127 
132  virtual DtVrfObjectSubComponentTypes * localVrfSubComponentTypes() const;
133 
138  virtual DtVrfObjectSubComponentTypes * remoteVrfSubComponentTypes() const;
139 
142  virtual void setMinTickPeriod(DtReal minTickPeriod);
143 
146  virtual DtReal minTickPeriod() const;
147 
150  virtual void setMinTickPeriodVariance(DtReal minTickPeriodVariance);
151 
154  virtual DtReal minTickPeriodVariance() const;
155 
159  virtual DtForceType forceType() const;
160  virtual void setForceType(const DtForceType force);
161 
163  virtual const DtString& category() const;
164 
165  virtual void setCategory(const DtString& category);
166 
168  virtual bool categorySpecified() const;
169 
171  virtual const DtString& echelonLevel() const;
172 
173  virtual void setEchelonLevel(const DtString& echelonLevel);
174 
176  virtual bool echelonLevelSpecified() const;
177 
179  virtual bool organized() const;
180 
181  virtual void setOrganized(bool organized);
182 
184 
185  virtual const DtComponentSystemDescriptorList& systemDescriptorList() const;
186  virtual DtComponentSystemDescriptorList& systemDescriptorList();
187  virtual void setSystemDescriptorList(const DtComponentSystemDescriptorList& list);
189 
191  virtual const DtComponentDescriptorList& sensorDescriptorList() const;
192  virtual DtComponentDescriptorList& sensorDescriptorList();
193  virtual void setSensorDescriptorList(const DtComponentDescriptorList& list);
194 
196  virtual const DtComponentDescriptorList& controllerDescriptorList() const;
197  virtual DtComponentDescriptorList& controllerDescriptorList();
198  virtual void setControllerDescriptorList(const DtComponentDescriptorList&
199  list);
200 
202  virtual const DtComponentDescriptorList& actuatorDescriptorList() const;
203  virtual DtComponentDescriptorList& actuatorDescriptorList();
204  virtual void setActuatorDescriptorList(const DtComponentDescriptorList&
205  list);
206 
208  virtual const DtConnectionDescriptorList& connectionDescriptorList() const;
209  virtual DtConnectionDescriptorList& connectionDescriptorList();
210  virtual void setConnectionDescriptorList(const DtConnectionDescriptorList&
211  list);
212 
214  virtual DtDeadReckonTypes deadReckoningAlgorithm() const;
215  virtual void setDeadReckoningAlgorithm(DtDeadReckonTypes
216  deadReckoningAlgorithm);
217 
219  virtual const DtRwNavigationParameters& navigationParameters() const;
220  virtual DtRwNavigationParameters& navigationParameters();
221  virtual void setNavigationParameters(const DtRwNavigationParameters& parameters);
222 
224 
225  virtual const DtRwBoolean deadReckoningAllowGuiOverrides() const;
226  virtual void setDeadReckoningAllowGuiOverrides(bool allow);
228 
230  virtual const DtRwDeadReckonThresholds& deadReckoningThresholds() const;
231  virtual void setDeadReckoningThresholds(const DtRwDeadReckonThresholds&
232  deadReckoningThresholds);
233 
235  virtual DtReal mass() const;
236  virtual void setMass(const DtReal mass);
237 
239 
240  virtual const DtRadioDescriptorList& radioDescriptorList() const;
241  virtual DtRadioDescriptorList& radioDescriptorList();
243 
245  virtual const DtRwSensorSignatureList& sensorSignatureList() const;
246  virtual DtRwSensorSignatureList& sensorSignatureList();
247 
251  virtual const DtVrfSubObjectParameterList& subordinateObjects() const;
252  virtual void setSubordinateObjects(
253  const DtVrfSubObjectParameterList& subordinateObjects);
254 
259  virtual const DtVrfSubObjectParameterList& attachedObjects() const;
260  virtual void setAttachedObjects(
261  const DtVrfSubObjectParameterList& attachedObjects);
262 
267  virtual DtVrfObjectSubComponentTypes * localSubComponentTypes() const;
268 
273  virtual DtVrfObjectSubComponentTypes * remoteSubComponentTypes() const;
274 
277  virtual void putData(FILE *fp, int indentLevel = 0);
278 
281  virtual DtlObjPtr getData(DtlObjPtr args,
282  const DtReaderWriter::SearchPaths& searchPaths,
283  const DtVariableBindingsList& variableBindings);
284 
286  virtual const Dt3dBoundingVolume * boundingVolume() const;
287 
289  virtual void setBoundingVolume(const Dt3dBoundingVolume& newBoundingVolume);
290 
296  virtual void setBoundingVolume(const DtVector& localBvolDiagonal,
297  const DtVector& offset = DtVector::zero());
298 
301  boundingGeometryType() const;
302  virtual void setBoundingGeometryType(
304 
307  virtual double draft() const;
308 
310  virtual DtAggregateFormation formation() const;
311  virtual void setFormation(DtAggregateFormation formation);
312 
314  virtual DtU32 appearance() const;
315  virtual void setAppearance(const DtU32 appearance);
316  virtual bool appearanceSpecified() const;
317 
319  virtual const DtString& displayName() const;
320  virtual void setDisplayName(const DtString& s);
321 
323  virtual const DtString& displayDescription() const;
324  virtual void setDisplayDescription(const DtString& s);
325 
327  virtual const DtString& engagementRules() const;
328  virtual void setEngagementRules(const DtString& engagementRules);
329 
331  virtual const DtSimResourceManager& resourceManager() const;
332  virtual void setResourceManager(const DtSimResourceManager& resourceManager);
333 
335  virtual void setStateRepositoryUserExtensionType(const DtString& type);
336  virtual const DtString& stateRepositoryUserExtensionType() const;
337 
339  virtual DtObjectType objectType() const;
340  virtual void setObjectType(const DtObjectType& objectType);
341 
343  virtual DtObjectType matchType() const;
344  virtual void setMatchType(const DtObjectType& objectType);
345 
352  virtual bool taskedBySuperiorUponTaskComplete() const;
353  virtual void setTaskedBySuperiorUponTaskComplete(bool trueOrFalse);
354 
356  virtual void setRangeRingPublisherTickTime(double);
357  virtual double rangeRingPublisherTickTime() const;
358 
359  static DtVrfObjectParameters * createParameters(DtlObjPtr mtlStream,
360  const DtReaderWriter::SearchPaths& searchPaths, const DtVariableBindingsList& variableBindings,
361  DtEnvironmentSP env = DtEnvironmentSP(), DtEnvValueSP* objectNode = NULL);
362  static DtVrfObjectParameters * createParameters(const char* name,
363  DtEnvironmentSP env = DtEnvironmentSP(), DtEnvValueSP* objectNode = NULL);
364 
366 
367  static void setFactory(DtVrfObjectParameterFactory * factory);
368 
369  static void addParameterCreatorFcn(const DtString & type,
371 
373  static DtVrfObjectParameters * creator(DtEnvironmentSP env, DtEnvValueSP* objectNode);
374 
376  void setParameterType(const DtString&);
377  const DtString& parameterType() const;
378 
381  virtual void setStateRepositoryUserExtension(
382  const DtVrfStateRepositoryUserExtension& userExtension);
383  virtual DtVrfStateRepositoryUserExtension* stateRepositoryUserExtension() const;
384 
388  virtual void getSelf(DtlObjPtr args,
390  const DtVariableBindingsList& variableBindings = nullVariableReference());
391 
395  virtual DtTime underFireTime() const;
396 
400  virtual void setUnderFireTime(DtTime time);
401 
405  virtual bool underFireTimeSpecified() const;
406 
410  virtual DtReal underFireDistance() const;
411 
415  virtual void setUnderFireDistance(DtReal underFireDistance);
416 
421  virtual bool underFireDistanceSpecified() const;
422 
424 
425  virtual const DtSimSector& initialSectorOfResponsibility() const;
426  virtual void setInitialSectorOfResponsibility(const DtSimSector& sor);
428 
430 
431  virtual DtTaskExecutionRules& taskExecutionRules();
432  virtual const DtTaskExecutionRules& taskExecutionRules() const;
434 
436 
437  virtual void setTaskExecutionRulesFilename(const DtFilename&);
438  virtual const DtReaderWriterFile& taskExecutionRulesFilename() const;
440 
442  virtual const DtAutoConnectionsListPtr& autoConnections() const;
443  virtual DtAutoConnectionsListPtr& autoConnections();
444 
449  virtual const std::list<DtSimArtPartDescriptor*>* completeArtPartList() const;
450 
452  virtual void connectSystems();
453 
455  bool operator==(const DtVrfObjectParameters&) const;
456  bool operator!=(const DtVrfObjectParameters&) const;
457 
458  virtual DtEnvironmentSP xmlEnvironment();
459  virtual DtEnvValueSP objectNode();
460 
462  virtual const DtReaderWriter* findVariableBinding(const DtString&) const;
463 
467  virtual const DtVariableBindingsList& variableBindingsFromLoad() const;
468 
471  virtual DtReaderWriterRegistryData* findProperty(const DtString& rwName) const;
472 
474  virtual const DtRwProperties& parameterData() const;
475  virtual DtRwProperties& parameterData();
476 
478  virtual const DtRwProperties& stateData() const;
479  virtual DtRwProperties& stateData();
480 
484  virtual void setPublishParameterData(bool);
485  virtual bool publishParameterData() const;
486 
487  virtual void setUiFilename(const DtString& uiFilename);
488  virtual DtString uiFilename() const;
489 
490 protected:
491 
498  virtual DtVrfSubObjectParameterList* createSubordinateObjectsList(
499  const DtSymbolString& name, DtReaderWriterRegistry* parentRegistry) const;
500 
507  virtual DtVrfSubObjectParameterList* createAttachedObjectsList(
508  const DtSymbolString& name, DtReaderWriterRegistry* parentRegistry) const;
509 
512  virtual void rebuildArtPartList();
513 
517  virtual void addArtPartsFromSystem(DtComponentSystemDescriptor* systemDesc,
518  std::list<DtSimArtPartDescriptor*>& artPartList);
519 
520  virtual void createAutomaticConnections(DtRwAutoConnection* autoConnection);
521 
522 protected:
523 
540 
544 
557 
570 
576 
582 
594 
598 
610 
618 
626 
633 
640 
648 
662 
664 
674 
676 
680 
686 
690 
694 
698 
728 
734 
739 
770 
775 
785 
802 
810 
817 
825 
831 
837 
846 
855 
859 
863 
865 
870  std::list<DtSimArtPartDescriptor*> myCompleteArtPartList;
871 
872  DtEnvValueSP myObjectNode;
874 
876 
880 
884 
888 
895 
902 
908 
914 
921 
924 };
925 
927 {
928  myParameterType = t;
929 }
930 
932 {
933  return myParameterType;
934 }

Document ID: Generated on Tue Mar 8 22:13:38 EST 2016 from SVN revision 162938
Copyright © 2005-2015 VT MÄK. All Rights Reserved (www.mak.com)