Description
Agent wrapper of a copter model, sends out SynCopterMessage-s to synchronize its state.
#include <SynCopterAgent.h>


Public Member Functions | |
| SynCopterAgent (chrono::copter::Copter< 6 > *copter=nullptr) | |
| Construct a copter agent with an optional copter object. | |
| virtual | ~SynCopterAgent () |
| Destructor. | |
| virtual void | InitializeZombie (ChSystem *system) override |
| Initialize this agents zombie representation Bodies are added and represented in the lead agent's world. | |
| virtual void | SynchronizeZombie (std::shared_ptr< SynMessage > message) override |
| Synchronize this agents zombie with the rest of the simulation. | |
| virtual void | Update () override |
| Update this agent Typically used to update the state representation of the agent to be distributed to other agents. | |
| virtual void | GatherMessages (SynMessageList &messages) override |
| Generates messages to be sent to other nodes Will create or get messages and pass them into the referenced message vector. | |
| virtual void | GatherDescriptionMessages (SynMessageList &messages) override |
| Get the description messages for this agent A single agent may have multiple description messages. | |
| void | SetZombieVisualizationFiles (std::string chassis_vis_file, std::string propeller_vis_file) |
| Set the zombie visualization files. | |
| void | SetNumProps (int num_props) |
| Set the number of propellers of the underlying copter. | |
| virtual void | SetKey (AgentKey agent_key) override |
| Set the Agent ID. | |
Public Member Functions inherited from chrono::synchrono::SynAgent | |
| SynAgent (AgentKey agent_key={0, 0}) | |
| Construct a agent with the specified node_id. | |
| virtual | ~SynAgent () |
| Destructor. | |
| virtual void | ProcessMessage (std::shared_ptr< SynMessage > msg) |
| Process an incoming message. | |
| virtual void | RegisterZombie (std::shared_ptr< SynAgent > zombie) |
| Register a new zombie. | |
| void | SetProcessMessageCallback (std::function< void(std::shared_ptr< SynMessage >)> callback) |
| int | GetID () |
| AgentKey | GetKey () |
Protected Member Functions | |
| std::shared_ptr< ChVisualShapeTriangleMesh > | CreateMeshZombieComponent (const std::string &filename) |
| Helper method used to create a ChVisualShapeTriangleMesh to be used on as a zombie body. | |
| std::shared_ptr< ChBody > | CreateChassisZombieBody (const std::string &filename, ChSystem *system) |
| Create a zombie chassis body. | |
Protected Attributes | |
| chrono::copter::Copter< 6 > * | m_copter |
| Pointer to the ChCopter this class wraps. | |
| std::shared_ptr< SynCopterStateMessage > | m_state |
| State of the copter (See SynCopterMessage) | |
| std::shared_ptr< SynCopterDescriptionMessage > | m_description |
| Description for zombie creation on discovery. | |
| std::shared_ptr< ChBody > | m_zombie_body |
| agent's zombie body | |
| std::vector< std::shared_ptr< ChBody > > | m_prop_list |
| vector of this agent's zombie propellers | |
Protected Attributes inherited from chrono::synchrono::SynAgent | |
| AgentKey | m_agent_key |
| std::function< void(std::shared_ptr< SynMessage >)> | m_process_message_callback |
Constructor & Destructor Documentation
◆ SynCopterAgent()
| chrono::synchrono::SynCopterAgent::SynCopterAgent | ( | chrono::copter::Copter< 6 > * | copter = nullptr | ) |
Construct a copter agent with an optional copter object.
- Parameters
-
copter the copter this agent is responsible for (will be null if the agent is a zombie)
Member Function Documentation
◆ CreateChassisZombieBody()
|
protected |
Create a zombie chassis body.
- Parameters
-
filename the filename that describes the ChVisualShapeTriangleMesh that should represent the chassis system the system to add the body to
◆ CreateMeshZombieComponent()
|
protected |
Helper method used to create a ChVisualShapeTriangleMesh to be used on as a zombie body.
- Parameters
-
filename the file to generate a ChVisualShapeTriangleMesh from
- Returns
- std::shared_ptr<ChVisualShapeTriangleMesh>
◆ GatherDescriptionMessages()
|
inlineoverridevirtual |
Get the description messages for this agent A single agent may have multiple description messages.
- Parameters
-
messages a referenced vector containing messages to be distributed from this rank
Implements chrono::synchrono::SynAgent.
◆ GatherMessages()
|
inlineoverridevirtual |
Generates messages to be sent to other nodes Will create or get messages and pass them into the referenced message vector.
- Parameters
-
messages a referenced vector containing messages to be distributed from this rank
Implements chrono::synchrono::SynAgent.
◆ InitializeZombie()
|
overridevirtual |
Initialize this agents zombie representation Bodies are added and represented in the lead agent's world.
- Parameters
-
system the ChSystem used to initialize the zombie
Implements chrono::synchrono::SynAgent.
◆ SetKey()
|
overridevirtual |
Set the Agent ID.
Reimplemented from chrono::synchrono::SynAgent.
◆ SetNumProps()
|
inline |
Set the number of propellers of the underlying copter.
- Parameters
-
num_props number of propellers of the underlying copter
◆ SetZombieVisualizationFiles()
|
inline |
Set the zombie visualization files.
- Parameters
-
chassis_vis_file the file used for chassis visualization propeller_vis_file the file used for propeller visualization
◆ SynchronizeZombie()
|
overridevirtual |
Synchronize this agents zombie with the rest of the simulation.
Updates agent based on the passed message. Any message can be passed, so a check should be done to ensure this message was intended for this agent.
- Parameters
-
message the message to process and is used to update the position of the zombie
Implements chrono::synchrono::SynAgent.
◆ Update()
|
overridevirtual |
Update this agent Typically used to update the state representation of the agent to be distributed to other agents.
Implements chrono::synchrono::SynAgent.
The documentation for this class was generated from the following files:
- C:/M/B/src/chrono-9.0.1/src/chrono_synchrono/agent/SynCopterAgent.h
- C:/M/B/src/chrono-9.0.1/src/chrono_synchrono/agent/SynCopterAgent.cpp
Public Member Functions inherited from