AnimatLab
2
Test
|
Manager for simulation windows. More...
#include <SimulationWindowMgr.h>
Public Member Functions | |
SimulationWindowMgr (void) | |
Default constructor. More... | |
~SimulationWindowMgr (void) | |
Destructor. More... | |
virtual SimulationWindow * | AddSimulationWindow (std::string strModule, std::string strType, bool bInit, HWND win, std::string strHudXml) |
Adds a simulation window. More... | |
virtual void | Close () |
Closes all windows. More... | |
virtual void | CloseAllWindows () |
Closes all windows internally. More... | |
virtual SimulationWindow * | FindSimulationWindow (HWND win, int &iIndex, bool bThrowError=true) |
Searches for simulation window with the specified HWND. More... | |
virtual bool | HasContainedWindow () |
Query if this object has contained window. More... | |
virtual void | Initialize () |
Initializes this object. More... | |
virtual void | Load (CStdXml &oXml) |
virtual void | Realize ()=0 |
Shows the windows. More... | |
virtual void | RemoveSimulationWindow (HWND win) |
Removes the simulation window described by the HWND win. More... | |
virtual void | ResetSimulation () |
Resets the simulation back to time 0. More... | |
virtual bool | Update () |
Updates all of the windows. More... | |
virtual void | UpdateBackgroundColor () |
Updates the background color for all simulation windows. More... | |
virtual CStdPtrArray< SimulationWindow > * | Windows () |
Gets the windows array. More... | |
Public Member Functions inherited from AnimatSim::AnimatBase | |
AnimatBase () | |
Constructs an AnimatBase object. More... | |
virtual | ~AnimatBase () |
Destroys the AnimatBase object.. More... | |
virtual bool | AddItem (const std::string &strItemType, const std::string &strXml, bool bThrowError=true, bool bDoNotInit=false) |
Adds a new object to this parent. More... | |
virtual void | AfterResetSimulation () |
Called after a simulation reset for some objects. More... | |
virtual long | CalculateSnapshotByteSize () |
Calculates the snapshot byte size. More... | |
virtual void | Copy (CStdSerialize *lpSource) |
virtual void | Enabled (bool bVal) |
Tells whether this item is enabled or not. This is not actually used for all objects, only specific ones. I am putting it in the base class though to prevent numerous duplications. More... | |
virtual bool | Enabled () |
Tells whether this item is enabled or not. This is not actually used for all objects, only specific ones. I am putting it in the base class though to prevent numerous duplications. More... | |
virtual float * | GetDataPointer (const std::string &strDataType) |
Returns a float pointer to a data item of interest in this object. More... | |
virtual NeuralModule * | GetNeuralModule () |
Gets the neural module. More... | |
virtual Node * | GetNode () |
Gets the node. More... | |
virtual Simulator * | GetSimulator () |
Gets the simulator pointer. More... | |
virtual Structure * | GetStructure () |
Gets the structure for this node. More... | |
virtual bool | HasProperty (const std::string &strName) |
Queries this object if it has a property with the given name. More... | |
virtual std::string | ID () |
Gets the unique GUID ID of this object. More... | |
virtual void | ID (std::string strValue) |
Sets the unique GUID ID of the object. More... | |
virtual void | Kill (bool bState=true) |
Kills. More... | |
virtual void | Load (StdUtils::CStdXml &oXml) |
Loads the item using an XML data packet. More... | |
virtual void | LoadKeyFrameSnapshot (byte *aryBytes, long &lIndex) |
Loads a key frame snapshot. More... | |
virtual std::string | Name () |
Gets the name of this object. More... | |
virtual void | Name (std::string strValue) |
Sets the name of the object. Blank is acceptable. More... | |
virtual AnimatPropertyType | PropertyType (const std::string &strName) |
virtual void | QueryProperties (CStdPtrArray< TypeProperty > &aryProperties) |
Queries this object for a list of properties that can be changed using SetData. More... | |
virtual void | ReInitialize () |
Re-initialize this object. More... | |
virtual bool | RemoveItem (const std::string &strItemType, const std::string &strID, bool bThrowError=true) |
Removes a child item from this parent. More... | |
virtual void | Reset () |
Resets this object. More... | |
virtual void | RigidBodyAdded (std::string strID) |
virtual void | RigidBodyRemoved (std::string strID) |
virtual void | SaveKeyFrameSnapshot (byte *aryBytes, long &lIndex) |
Saves a key frame snapshot. More... | |
virtual bool | Selected () |
Tells if this items is selected or not. More... | |
virtual void | Selected (bool bValue, bool bSelectMultiple) |
Selects this object. More... | |
virtual bool | SetData (const std::string &strDataType, const std::string &strValue, bool bThrowError=true) |
Set a variable based on a string data type name. More... | |
virtual bool | SetData (const std::string &strDataType, const float fltValue, bool bThrowError=true) |
Set a variable based on a string data type name. More... | |
virtual bool | SetData (const std::string &strDataType, const long lValue, bool bThrowError=true) |
Set a variable based on a string data type name. More... | |
virtual void | SetSystemPointers (Simulator *lpSim, Structure *lpStructure, NeuralModule *lpModule, Node *lpNode, bool bVerify) |
Sets the system pointers. More... | |
virtual void | SimPausing () |
Called just before the simulation pauses. More... | |
virtual void | SimStarting () |
Called just before the simulation starts. More... | |
virtual void | SimStopping () |
Called just before the simulation stops. More... | |
virtual void | StepSimulation () |
Step the simulation for this object. More... | |
virtual void | TimeStepModified () |
Notification method that the time step modified has been modified. Objects should recalculate any slice times as needed. More... | |
virtual std::string | Type () |
returns the string type name of this object. More... | |
virtual void | Type (std::string strValue) |
Sets the class type for this object. More... | |
virtual void | VerifySystemPointers () |
Verify that system pointers have been set correctly. More... | |
virtual void | VisualSelectionModeChanged (int iNewMode) |
Visual selection mode changed. More... | |
Static Public Member Functions | |
static SimulationWindowMgr * | CastToDerived (AnimatBase *lpBase) |
Protected Member Functions | |
SimulationWindow * | LoadSimulationWindow (CStdXml &oXml) |
Loads a simulation window. More... | |
virtual void | SetupCameras () |
Sets up the cameras for each window. More... | |
Protected Attributes | |
CStdPtrArray< SimulationWindow > | m_aryWindows |
Array of SimulationWindow objects. | |
Hud * | m_lpHudMgr |
Manager for heads-up display items. | |
CStdFPoint | m_ptPosition |
If this is a stand-alone group window then this is the position of the group window. | |
CStdFPoint | m_ptSize |
If this is a stand-alone group window then this is the size of the group window. | |
Protected Attributes inherited from AnimatSim::AnimatBase | |
bool | m_bEnabled |
Tells if this item is enabled or not. If it is not enabled then it is not run. | |
bool | m_bSelected |
Tells whether the object is selected or not. | |
AnimatSim::Behavior::NeuralModule * | m_lpModule |
The pointer to this items parentNeuralModule. If this is not relevant for this object then this is NULL. | |
Node * | m_lpNode |
The pointer to this items parent Node. If this is not relevant for this object then this is NULL. | |
Simulator * | m_lpSim |
The pointer to a Simulation. | |
AnimatSim::Environment::Structure * | m_lpStructure |
The pointer to this items parent Structure. If this is not relevant for this object then this is NULL. | |
std::string | m_strID |
The unique Id for this object. | |
std::string | m_strName |
The name for this object. | |
std::string | m_strType |
The type for this object. Examples are Box, Plane, Neuron, etc.. | |
Manager for simulation windows.
This object manages all of the simulation windows in the entire system. You call its Add/Remove methods to create/destroy new windows.
Definition at line 20 of file SimulationWindowMgr.h.
AnimatSim::SimulationWindowMgr::SimulationWindowMgr | ( | void | ) |
Default constructor.
Definition at line 57 of file SimulationWindowMgr.cpp.
References m_lpHudMgr.
AnimatSim::SimulationWindowMgr::~SimulationWindowMgr | ( | void | ) |
Destructor.
Definition at line 68 of file SimulationWindowMgr.cpp.
References Close(), and StdUtils::Std_TraceMsg().
|
virtual |
Adds a simulation window.
strModule | The dll module name. |
strType | Type ID of window to create. |
bInit | true to initialise the window here. |
win | HWND Handle of the window. |
strXml | The xml packet to use when creating the window. |
Definition at line 101 of file SimulationWindowMgr.cpp.
References AnimatSim::Simulator::CreateObject(), AnimatSim::AnimatBase::Initialize(), m_aryWindows, AnimatSim::AnimatBase::m_lpSim, AnimatSim::SimulationWindow::OnGetFocus(), AnimatSim::AnimatBase::SetSystemPointers(), and AnimatSim::SimulationWindow::WindowID().
|
virtual |
Closes all windows.
Definition at line 234 of file SimulationWindowMgr.cpp.
References CloseAllWindows(), m_lpHudMgr, and AnimatSim::Hud::Reset().
Referenced by CloseAllWindows(), AnimatSim::Simulator::Reset(), ~SimulationWindowMgr(), and AnimatSim::Simulator::~Simulator().
|
virtual |
Closes all windows internally.
Definition at line 252 of file SimulationWindowMgr.cpp.
References Close(), and m_aryWindows.
Referenced by Close().
|
virtual |
Searches for simulation window with the specified HWND.
win | Handle of the window to search for. | |
[in,out] | iIndex | Zero-based index of the found window in the array. |
bThrowError | If true and no matching window is found then it throws an error, else it returns NULL. |
Definition at line 165 of file SimulationWindowMgr.cpp.
References m_aryWindows.
Referenced by RemoveSimulationWindow().
|
virtual |
Query if this object has contained window.
Definition at line 281 of file SimulationWindowMgr.cpp.
References m_aryWindows.
|
virtual |
Initializes this object.
After an object is loaded in it must be initialized before it can be used. This allows the object to retrieve any pointers or setup memory that it will need during execution. Each object is responsible for initializing any of its child objects, so you simply need to call this method on the containing class to init all child objects. It also calls VerifySystemPointers to make sure that the system pointers have been setup correctly.
Reimplemented from AnimatSim::AnimatBase.
Reimplemented in OsgAnimatSim::Visualization::OsgSimulationWindowMgr, and VortexAnimatSim::Visualization::VsSimulationWindowMgr.
Definition at line 79 of file SimulationWindowMgr.cpp.
References AnimatSim::Hud::Initialize(), AnimatSim::AnimatBase::Initialize(), and m_lpHudMgr.
|
protected |
Loads a simulation window.
[in,out] | oXml | The xml for the window to load. |
Definition at line 373 of file SimulationWindowMgr.cpp.
References AnimatSim::Simulator::CreateObject(), StdUtils::CStdXml::GetChildString(), StdUtils::CStdXml::IntoElem(), AnimatSim::AnimatBase::m_lpSim, StdUtils::CStdXml::OutOfElem(), and AnimatSim::AnimatBase::SetSystemPointers().
|
pure virtual |
Shows the windows.
Implemented in OsgAnimatSim::Visualization::OsgSimulationWindowMgr, and VortexAnimatSim::Visualization::VsSimulationWindowMgr.
|
virtual |
Removes the simulation window described by the HWND win.
win | Handle of the window. |
Definition at line 192 of file SimulationWindowMgr.cpp.
References AnimatSim::SimulationWindow::Close(), FindSimulationWindow(), and m_aryWindows.
|
virtual |
Resets the simulation back to time 0.
This method calls the ResetSimulation method on all subitems in order to reset the simulation back to the beginning.
Reimplemented from AnimatSim::AnimatBase.
Definition at line 292 of file SimulationWindowMgr.cpp.
References m_aryWindows, m_lpHudMgr, and AnimatSim::Hud::ResetSimulation().
Referenced by AnimatSim::Simulator::ResetSimulation().
|
protectedvirtual |
Sets up the cameras for each window.
Definition at line 266 of file SimulationWindowMgr.cpp.
References m_aryWindows.
Referenced by OsgAnimatSim::Visualization::OsgSimulationWindowMgr::Realize(), and VortexAnimatSim::Visualization::VsSimulationWindowMgr::Realize().
|
virtual |
Updates all of the windows.
Definition at line 212 of file SimulationWindowMgr.cpp.
References m_aryWindows, and m_lpHudMgr.
|
virtual |
Updates the background color for all simulation windows.
Definition at line 146 of file SimulationWindowMgr.cpp.
References m_aryWindows.
Referenced by AnimatSim::Simulator::BackgroundColor().
|
inlinevirtual |
Gets the windows array.
Definition at line 55 of file SimulationWindowMgr.h.