AnimatLab  2
Test
ActivatedItem.h
Go to the documentation of this file.
1 
7 #pragma once
8 
9 namespace AnimatSim
10 {
27  class ANIMAT_PORT ActivatedItem : public AnimatBase
28  {
29  protected:
30 
34 
37 
40 
44 
47  float m_fltEndTime;
48 
54 
57 
60 
63 
66 
67  virtual void SetSliceData();
68 
69  public:
70  ActivatedItem();
71  virtual ~ActivatedItem();
72 
73  static ActivatedItem *CastToDerived(AnimatBase *lpBase) {return static_cast<ActivatedItem*>(lpBase);}
74 
75  virtual bool Enabled();
76  virtual void Enabled(bool bVal);
77 
78  virtual bool LoadedTime();
79  virtual void LoadedTime(bool bVal);
80 
81  virtual long StartSlice();
82  virtual void StartSlice(long lVal, bool bReInit = true);
83 
84  virtual long EndSlice();
85  virtual void EndSlice(long lVal, bool bReInit = true);
86 
87  virtual float StartTime();
88  virtual void StartTime(float fltVal, bool bReInit = true);
89 
90  virtual float EndTime();
91  virtual void EndTime(float fltVal, bool bReInit = true);
92 
93  virtual int StepInterval();
94  virtual void StepInterval(int iVal);
95 
96  virtual int StepIntervalCount();
97  virtual void StepIntervalCount(int iVal);
98 
99  virtual bool AlwaysActive();
100  virtual void AlwaysActive(bool bVal);
101 
102  bool IsActivated();
103  bool IsInitialized();
104 
105  bool NeedToActivate();
106  bool NeedToDeactivate();
107 
123  virtual bool operator<(ActivatedItem *lpItem) = 0;
124 
125  virtual void Initialize();
126  virtual void ReInitialize();
127  virtual bool NeedToStep();
128  virtual void ResetSimulation();
129  virtual void Activate();
130  virtual void Deactivate();
131  virtual void TimeStepModified();
132 
133  virtual bool SetData(const std::string &strDataType, const std::string &strValue, bool bThrowError = true);
134  virtual bool Overlaps(ActivatedItem *lpItem);
135  virtual void Load(CStdXml &oXml);
136  };
137 
138  bool ANIMAT_PORT LessThanActivatedItemCompare(ActivatedItem *lpItem1, ActivatedItem *lpItem2);
139 
140 } //AnimatSim
int m_iStepIntervalCount
Keeps track of how many time steps have occured since it was zeroed again.
Definition: ActivatedItem.h:56
long m_lEndSlice
The time slice where this item is deactived.
Definition: ActivatedItem.h:39
bool LessThanActivatedItemCompare(ActivatedItem *lpItem1, ActivatedItem *lpItem2)
Compares the start times of two activated items to see which is sooner.
Root namespace for the base simulation library for AnimatLab.
Base class for all activated items.
Definition: ActivatedItem.h:27
Animat base class.
Definition: AnimatBase.h:36
bool m_bInitialized
true if item has been initialized
Definition: ActivatedItem.h:62
bool m_bAlwaysActive
Determines whether this item is always active during simulation.
Definition: ActivatedItem.h:59
long m_lStartSlice
The time slice where this item becomes active.
Definition: ActivatedItem.h:36
bool m_bIsActivated
true if item has been activated
Definition: ActivatedItem.h:65