VR-Forces 4.1 Class Documentation
vrfAggregateSR.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2004 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
9 #pragma once
10 
11 #include "vrfobjcore/vrfMvObjSR.h"
12 #include "vrfutil/rwFormType.h"
14 #include "geometry/tdbextent.h"
15 #include <vlpi/disEnums.h>
16 
17 class DtFormation;
18 class DtFormationState;
20 
23 {
24 protected:
27 
28 public:
29 
31  const DtObjectType& objectType, DtVrfObjectParameters* parameters,
32  const DtString& rwName = DtString::nullString(),
33  DtReaderWriterRegistry* parentRegistry = 0);
34 
36  const DtString& rwName = DtString::nullString(),
37  DtReaderWriterRegistry* parentRegistry = 0);
38 
40  const DtVrfAggregateStateRepository & orig);
41 
43 
45  const DtString& rwName = DtString::nullString(),
46  DtReaderWriterRegistry* parentRegistry = 0) const;
47 
50  virtual bool init();
51 
53  virtual DtString type() const;
54 
55  virtual DtFormationState* formationState() const;
56 
57  virtual void setFormation(DtAggregateFormation formation);
58  virtual DtAggregateFormation formation() const;
59 
61 
62 
63 
64 
65 
66 
67  virtual void setFormationName(const DtString& name);
68  virtual DtString formationName() const;
70 
76 
77  virtual void setAggregateState(enum DtAggregateState state);
78  virtual enum DtAggregateState aggregateState() const;
80 
82  virtual bool formationNameSpecified() const;
83 
85  virtual double formationHalfLength();
86 
96  virtual double numberSubordinateVehicles(void) const;
97  virtual void setNumberSubordinateVehicles(const double nVehicles);
98 
100  virtual const int vrfMovingObjectStateRepositorySubType() const;
101 
103  virtual const int aggregateStateRepositorySubType() const;
104 
106  virtual void getSelf(DtlObjPtr args,
107  const DtFilename& searchPath, const DtVariableBindingsList& variableBindings);
108 
110  static DtVrfObjectStateRepository* creator (const DtString& name,
111  DtVrfObject* vrfObject,const DtObjectType& objectType,
112  DtVrfObjectParameters* parameters,
113  DtReaderWriterRegistry* parentRegistry);
114 
117  static DtVrfAggregateStateRepository* isVrfAggregateStateRepository(
118  DtSimObjectStateRepository* repository);
119 
120  static const DtVrfAggregateStateRepository* isVrfAggregateStateRepository(
121  const DtSimObjectStateRepository* repository);
122 
123  virtual bool aggregatedExtent(DtExtent& extent);
124 
125  virtual bool computeExtentFromParameters(const DtString& formationName, DtExtent& extent);
126 
127  virtual void setParameterEntry(DtVrfObjectParameters* parameterEntry);
128 
129 protected:
130 
131  virtual void createFormationState();
132 
133  virtual bool computeExtent(const DtAggregateObjectParameters& parameterEntry,
134  const DtString& formationName, DtExtent& extent);
135 
136  virtual std::list<DtVector> generateFormationPositions(
137  const DtVrfObjectParameters& parameterEntry, DtFormation& formation);
138 
139  virtual bool getFormation(const DtString& formationName,
140  const DtAggregateObjectParameters& parameterEntry,
141  DtFormation& formation);
142 
147  virtual void preGetSelf();
148  virtual void postGetSelf();
149 
150 protected:
151 
156 
159 
161 };
162 

Document ID: Generated on Tue Jan 29 18:21:16 EST 2013 from SVN revision 123193
Copyright © 2005-2013 VT MÄK Inc. All Rights Reserved (www.mak.com)