VR-Forces 4.7 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties 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 
20 #include "vrfutil/rwForceType.h"
22 #include <readerWriter/rwReal.h>
23 #include <readerWriter/rwBoolean.h>
24 #include "vrfutil/rwAppearance.h"
25 #include "vrfutil/rwEntityType.h"
26 #include <readerWriter/rwString.h>
27 #include "vrfutil/simClock.h"
36 #include "vrfobjparam/simSector.h"
39 #include <list>
44 
45 class DtSimResource;
47 class DtFilename;
51 
58 {
59 
60 public:
62 
64  DtVrfObjectParameters(const DtString& name = DtString::nullString(),
65  DtReaderWriterRegistry* parentRegistry = NULL, DtEnvironmentSP env = DtEnvironmentSP(), DtEnvValueSP* objectNode = NULL);
67  DtReaderWriterRegistry* parentRegistry = NULL, DtEnvironmentSP env = DtEnvironmentSP(), DtEnvValueSP* objectNode = NULL);
68 
70  virtual ~DtVrfObjectParameters();
71 
72 protected:
75  const DtString& name = DtString::nullString(),
76  DtReaderWriterRegistry* parentRegistry = NULL);
77 
79  const DtSymbolString& name,
80  DtReaderWriterRegistry* parentRegistry = NULL);
81 
82 public:
85 
86  virtual DtVrfObjectParameters* clone(
87  const DtString& name = DtString::nullString(),
88  DtReaderWriterRegistry* parentRegistry = NULL) const;
89 
90  virtual DtVrfObjectParameters* clone(
91  const DtSymbolString& name,
92  DtReaderWriterRegistry* parentRegistry = NULL) const;
93 
99  virtual bool init();
100 
106  virtual DtString type() const;
107 
119  virtual bool inheritValues(const DtVrfObjectParameters * benefactor);
120 
121  virtual void inheritValuesFromThisType(
122  const DtVrfObjectParameters * benefactor);
123 
125  virtual bool createLocalSubComponentTypes();
126 
128  virtual bool createRemoteSubComponentTypes();
129 
134  virtual DtVrfObjectSubComponentTypes * localVrfSubComponentTypes() const;
135 
140  virtual DtVrfObjectSubComponentTypes * remoteVrfSubComponentTypes() const;
141 
144  virtual void setMinTickPeriod(DtReal minTickPeriod);
145 
148  virtual DtReal minTickPeriod() const;
149 
152  virtual void setMinTickPeriodVariance(DtReal minTickPeriodVariance);
153 
156  virtual DtReal minTickPeriodVariance() const;
157 
161  virtual DtForceType forceType() const;
162  virtual void setForceType(const DtForceType force);
163 
165  virtual const DtString& category() const;
166 
167  virtual void setCategory(const DtString& category);
168 
170  virtual bool categorySpecified() const;
171 
173  virtual const DtString& echelonLevel() const;
174 
175  virtual void setEchelonLevel(const DtString& echelonLevel);
176 
178  virtual bool echelonLevelSpecified() const;
179 
181  virtual bool organized() const;
182 
183  virtual void setOrganized(bool organized);
184 
186 
187  virtual const DtComponentSystemDescriptorList& systemDescriptorList() const;
188  virtual DtComponentSystemDescriptorList& systemDescriptorList();
189  virtual void setSystemDescriptorList(const DtComponentSystemDescriptorList& list);
191 
193  virtual const DtRwVisualMetaData& visualMetaData() const;
194  virtual void setVisualMetaData(const DtRwVisualMetaData&
195  list);
196 
198  virtual const DtComponentDescriptorList& sensorDescriptorList() const;
199  virtual DtComponentDescriptorList& sensorDescriptorList();
200  virtual void setSensorDescriptorList(const DtComponentDescriptorList& list);
201 
203  virtual const DtComponentDescriptorList& controllerDescriptorList() const;
204  virtual DtComponentDescriptorList& controllerDescriptorList();
205  virtual void setControllerDescriptorList(const DtComponentDescriptorList&
206  list);
207 
209  virtual const DtComponentDescriptorList& actuatorDescriptorList() const;
210  virtual DtComponentDescriptorList& actuatorDescriptorList();
211  virtual void setActuatorDescriptorList(const DtComponentDescriptorList&
212  list);
213 
215  virtual const DtConnectionDescriptorList& connectionDescriptorList() const;
216  virtual DtConnectionDescriptorList& connectionDescriptorList();
217  virtual void setConnectionDescriptorList(const DtConnectionDescriptorList&
218  list);
219 
221  virtual DtDeadReckonTypes deadReckoningAlgorithm() const;
222  virtual void setDeadReckoningAlgorithm(DtDeadReckonTypes
223  deadReckoningAlgorithm);
224 
226  virtual const DtRwNavigationParameters& navigationParameters() const;
227  virtual DtRwNavigationParameters& navigationParameters();
228  virtual void setNavigationParameters(const DtRwNavigationParameters& parameters);
229 
231 
232  virtual const DtRwBoolean deadReckoningAllowGuiOverrides() const;
233  virtual void setDeadReckoningAllowGuiOverrides(bool allow);
235 
237  virtual const DtRwDeadReckonThresholds& deadReckoningThresholds() const;
238  virtual void setDeadReckoningThresholds(const DtRwDeadReckonThresholds&
239  deadReckoningThresholds);
240 
242  virtual DtReal mass() const;
243  virtual void setMass(const DtReal mass);
244 
246 
247  virtual const DtRadioDescriptorList& radioDescriptorList() const;
248  virtual DtRadioDescriptorList& radioDescriptorList();
250 
252  virtual const DtRwSensorSignatureList& sensorSignatureList() const;
253  virtual DtRwSensorSignatureList& sensorSignatureList();
254 
258  virtual const DtVrfSubObjectParameterList& subordinateObjects() const;
259  virtual void setSubordinateObjects(
260  const DtVrfSubObjectParameterList& subordinateObjects);
261 
266  virtual const DtVrfSubObjectParameterList& attachedObjects() const;
267  virtual void setAttachedObjects(
268  const DtVrfSubObjectParameterList& attachedObjects);
269 
274  virtual DtVrfObjectSubComponentTypes * localSubComponentTypes() const;
275 
280  virtual DtVrfObjectSubComponentTypes * remoteSubComponentTypes() const;
281 
284  virtual void putData(std::string& fp, int indentLevel = 0);
285 
288  virtual DtlObjPtr getData(DtlObjPtr args,
289  const DtReaderWriter::SearchPaths& searchPaths,
290  const DtVariableBindingsList& variableBindings);
291 
293  virtual const Dt3dBoundingVolume * boundingVolume() const;
294 
296  virtual void setBoundingVolume(const Dt3dBoundingVolume& newBoundingVolume);
297 
303  virtual void setBoundingVolume(const DtVector& localBvolDiagonal,
304  const DtVector& offset = DtVector::zero());
305 
308  boundingGeometryType() const;
309  virtual void setBoundingGeometryType(
311 
314  virtual double draft() const;
315 
317  virtual DtAggregateFormation formation() const;
318  virtual void setFormation(DtAggregateFormation formation);
319 
321  virtual DtU32 appearance() const;
322  virtual void setAppearance(const DtU32 appearance);
323  virtual bool appearanceSpecified() const;
324 
326  virtual const DtString& displayName() const;
327  virtual void setDisplayName(const DtString& s);
328 
330  virtual const DtEntityType& defaultEntityType() const;
331  virtual void setDefaultEntityType(const DtEntityType& s);
332 
334  virtual const DtString& displayDescription() const;
335  virtual void setDisplayDescription(const DtString& s);
336 
338  virtual const DtString& engagementRules() const;
339  virtual void setEngagementRules(const DtString& engagementRules);
340 
342  virtual const DtSimResourceManager& resourceManager() const;
343  virtual void setResourceManager(const DtSimResourceManager& resourceManager);
344 
346  virtual void setStateRepositoryUserExtensionType(const DtString& type);
347  virtual const DtString& stateRepositoryUserExtensionType() const;
348 
350  virtual DtObjectType objectType() const;
351  virtual void setObjectType(const DtObjectType& objectType);
352 
354  virtual DtObjectType matchType() const;
355  virtual void setMatchType(const DtObjectType& objectType);
356 
363  virtual bool taskedBySuperiorUponTaskComplete() const;
364  virtual void setTaskedBySuperiorUponTaskComplete(bool trueOrFalse);
365 
367  virtual void setRangeRingPublisherTickTime(double);
368  virtual double rangeRingPublisherTickTime() const;
369 
370  static DtVrfObjectParameters * createParameters(DtlObjPtr mtlStream,
371  const DtReaderWriter::SearchPaths& searchPaths, const DtVariableBindingsList& variableBindings,
372  DtEnvironmentSP env = DtEnvironmentSP(), DtEnvValueSP* objectNode = NULL);
373  static DtVrfObjectParameters * createParameters(const char* name,
374  DtEnvironmentSP env = DtEnvironmentSP(), DtEnvValueSP* objectNode = NULL);
375 
377 
378  static void setFactory(DtVrfObjectParameterFactory * factory);
379 
380  static void addParameterCreatorFcn(const DtString & type,
382 
384  static DtVrfObjectParameters * creator(DtEnvironmentSP env, DtEnvValueSP* objectNode);
385 
387  void setParameterType(const DtString&);
388  const DtString& parameterType() const;
389 
392  virtual void setStateRepositoryUserExtension(
393  const DtVrfStateRepositoryUserExtension& userExtension);
394  virtual DtVrfStateRepositoryUserExtension* stateRepositoryUserExtension() const;
395 
399  virtual void getSelf(DtlObjPtr args,
401  const DtVariableBindingsList& variableBindings = nullVariableReference());
402 
406  virtual DtTime underFireTime() const;
407 
411  virtual void setUnderFireTime(DtTime time);
412 
416  virtual bool underFireTimeSpecified() const;
417 
421  virtual DtReal underFireDistance() const;
422 
426  virtual void setUnderFireDistance(DtReal underFireDistance);
427 
432  virtual bool underFireDistanceSpecified() const;
433 
435 
436  virtual const DtSimSector& initialSectorOfResponsibility() const;
437  virtual void setInitialSectorOfResponsibility(const DtSimSector& sor);
439 
441 
442  virtual DtTaskExecutionRules& taskExecutionRules();
443  virtual const DtTaskExecutionRules& taskExecutionRules() const;
445 
447 
448  virtual void setTaskExecutionRulesFilename(const DtFilename&);
449  virtual const DtReaderWriterFile& taskExecutionRulesFilename() const;
451 
453 
454  virtual void setHlaFomClass(const DtString&);
455  virtual const DtString& hlaFomClass() const;
457 
459  virtual const DtAutoConnectionsListPtr& autoConnections() const;
460  virtual DtAutoConnectionsListPtr& autoConnections();
461 
466  virtual const std::list<DtSimArtPartDescriptor*>* completeArtPartList() const;
467 
469  virtual void connectSystems();
470 
472  bool operator==(const DtVrfObjectParameters&) const;
473  bool operator!=(const DtVrfObjectParameters&) const;
474 
475  virtual DtEnvironmentSP xmlEnvironment();
476  virtual DtEnvValueSP objectNode();
477 
479  virtual const DtReaderWriter* findVariableBinding(const DtString&) const;
480 
484  virtual const DtVariableBindingsList& variableBindingsFromLoad() const;
485 
488  virtual DtReaderWriterRegistryData* findProperty(const DtString& rwName) const;
489 
491  virtual const DtRwProperties& parameterData() const;
492  virtual DtRwProperties& parameterData();
493 
495  virtual const DtRwProperties& stateData() const;
496  virtual DtRwProperties& stateData();
497 
501  virtual void setPublishParameterData(bool);
502  virtual bool publishParameterData() const;
503 
504  virtual void setUiFilename(const DtString& uiFilename);
505  virtual DtString uiFilename() const;
506 
507  virtual void setCanCreateAsNew(bool);
508  virtual bool canCreateAsNew() const;
509 
513  virtual void setCanMoveOntoEmbarked(bool);
514  virtual bool canMoveOntoEmbarked() const;
515 
516 protected:
517 
524  virtual DtVrfSubObjectParameterList* createSubordinateObjectsList(
525  const DtSymbolString& name, DtReaderWriterRegistry* parentRegistry) const;
526 
533  virtual DtVrfSubObjectParameterList* createAttachedObjectsList(
534  const DtSymbolString& name, DtReaderWriterRegistry* parentRegistry) const;
535 
538  virtual void rebuildArtPartList();
539 
543  virtual void addArtPartsFromSystem(DtComponentSystemDescriptor* systemDesc,
544  std::list<DtSimArtPartDescriptor*>& artPartList);
545 
546  virtual void createAutomaticConnections(DtRwAutoConnection* autoConnection);
547 
548 protected:
549 
566 
570 
583 
596 
602 
608 
620 
624 
636 
644 
652 
659 
666 
674 
688 
690 
700 
702 
706 
712 
716 
720 
724 
754 
760 
765 
796 
801 
811 
828 
836 
843 
851 
857 
863 
872 
881 
885 
889 
891 
896  std::list<DtSimArtPartDescriptor*> myCompleteArtPartList;
897 
898  DtEnvValueSP myObjectNode;
900 
902 
906 
910 
914 
921 
928 
934 
940 
947 
954 
962 
968 
974 
981 
984 };
985 
987 {
988  myParameterType = t;
989 }
990 
992 {
993  return myParameterType;
994 }

Document ID: Generated on Fri Apr 26 21:53:14 EDT 2019 from SVN revision 197883
Copyright © 2005-2019 VT MAK. All Rights Reserved (www.mak.com)