VR-Forces 4.1 Class Documentation
spawnControllerPSR.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2011 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
9 #pragma once
10 
11 #include <vrfobjcore/processSR.h>
12 #include <vrfutil/rwString.h>
13 #include <vrfutil/rwReal.h>
15 #include <vrfmsgs/rwSpawnData.h>
19 
20 namespace BHAVE
21 {
22 
23 const char DtSpawnControllerPSRType[] = "spawn-controller-psr";
24 
28 {
29 public:
30 
33  const DtString& rwName = DtString::nullString(),
34  DtReaderWriterRegistry* parentRegistry = 0);
35 
38  const DtString& rwName = DtString::nullString(),
39  DtReaderWriterRegistry* parentRegistry = 0);
40 
42  virtual ~DtSpawnControllerPSR();
43 
45  DtSpawnControllerPSR& operator=(const DtSpawnControllerPSR& orig);
46 
48  virtual DtVrfProcessStateRepository* clone(
49  const DtString& rwName = DtString::nullString(),
50  DtReaderWriterRegistry* parentRegistry = 0) const;
51 
53  virtual DtString type() const;
54 
56 
57  virtual void setNextCreationTime(double t);
58  virtual double nextCreationTime() const;
60 
67  virtual void setLastCycleStartTime(const DtTime start);
68  virtual DtTime lastCycleStartTime() const;
70 
78  virtual void setNextCycleStartTime(const DtTime start);
79  virtual DtTime nextCycleStartTime() const;
81 
84 
85  virtual DtRwTemplatedListPtr<DtRwTrafficSinkListEntry>& trafficAndSinkList();
86  virtual const DtRwTemplatedListPtr<DtRwTrafficSinkListEntry>& trafficAndSinkList() const;
87  virtual void addTraffic(const DtString& trafficName, const DtString& sinkName);
89 
100  virtual void setTemplateName(const DtString & name);
101  virtual const DtString& templateName() const;
102 
111 
114  virtual void setSpawnParameters (const DtRwSpawnData & params);
115  virtual const DtRwSpawnData & spawnParameters () ;
117 
120  virtual void setIsTimeBased (const bool tB);
121  virtual bool isTimeBased() const;
123 
126  virtual void setUsesClockTime( const bool cT);
127  virtual bool usesClockTime()const;
129 
130 
132 
133  virtual void setSpawnStartTime(double t);
134  virtual double spawnStartTime() const;
136 
138 
139  virtual void setSpawnEndTime(double t);
140  virtual double spawnEndTime() const;
142 
144 
145  virtual void setspawnPeriod(double t);
146  virtual double spawnPeriod() const;
148 
150 
151  virtual void setSpawnVariance(double t);
152  virtual double spawnVariance() const;
154 
155 
158  virtual void setIsCyclical(const bool c);
159  virtual bool isCyclical() const;
161 
164  virtual void setCyclePeriod(const DtReal cP);
165  virtual DtReal cyclePeriod() const;
167 
170  virtual void setBurstPeriodVariance(const DtReal bpv);
171  virtual DtReal burstPeriodVariance() const;
173 
176  virtual void setDutyCycle(const DtReal dC);
177  virtual DtReal dutyCycle() const;
179 
186  virtual void setStartOffset(const DtReal sO);
187  virtual DtReal startOffset() const;
189 
190 
195  virtual void setSpecifySpeed(bool);
196  virtual bool specifySpeed() const;
198 
200 
201  virtual void setSpawnMaxCount(unsigned n);
202  virtual unsigned spawnMaxCount() const;
204 
206 
207  virtual void setSpawnMinSpeed(double t);
208  virtual double spawnMinSpeed() const;
210 
212 
213  virtual void setSpawnMaxSpeed(double t);
214  virtual double spawnMaxSpeed() const;
216 
218 
219 
220  virtual const DtRwObjectTypeInfoList& spawnObjectTypes() const;
221  virtual void setSpawnObjectTypes(const DtRwObjectTypeInfoList &typeList);
223 
225 
226  virtual void setCreateOnVectorNetwork(bool t);
227  virtual bool createOnVectorNetwork() const;
229 
232  virtual const DtRwStringList& sinkNodeNames() const;
233  virtual void setSinkNodeNames(const DtRwStringList& sinkNodes);
238  virtual void removeSinkNode(const DtString& delName);
242  virtual void renameSinkNode(const DtString& oldName,
243  const DtString& newName);
245 
248  virtual const DtPlan& entityPlan() const;
249  virtual void setEntityPlan(DtPlan& plan);
251 
253 
254 public:
255 
257  static DtVrfProcessStateRepository* creator (const DtString& rwName,
258  DtVrfObject* vrfObject, DtReaderWriterRegistry* parentRegistry);
259 
260 protected:
265 
267 
272 };
273 
274 } //namespace BHAVE

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)