Vehicle Brain instance that instructs its vehicle to follow a given curve and stop based on lidar data and traffic light message data.

#include <SynACCBrain.h>

Inheritance diagram for chrono::synchrono::SynACCBrain:
Collaboration diagram for chrono::synchrono::SynACCBrain:

Public Member Functions

 SynACCBrain (int rank, std::shared_ptr< vehicle::ChDriver > driver, vehicle::ChVehicle &vehicle, bool is_multi_path=false)
virtual void Synchronize (double time)
 Synchronize this brain to the specified time.
virtual void Advance (double step)
 Advance the state of this brain until brain time syncs with passed time.
virtual void ProcessMessage (SynMessage *msg)
 Process an incoming message.
void setMultipath (bool Mul)
void SetNearestVehicleDistance (float dist)
- Public Member Functions inherited from chrono::synchrono::SynVehicleBrain
 SynVehicleBrain (int rank, std::shared_ptr< vehicle::ChDriver > driver, vehicle::ChVehicle &vehicle)
 Constructor which takes and sets this brains ChDriver and ChVehicle.
 ~SynVehicleBrain ()
virtual void GenerateMessagesToSend (std::vector< SynMessage * > &messages) override
 Generate vector of SynMessage's to send.
vehicle::ChDriver::Inputs GetDriverInputs ()
 Get the driver inputs from the attached driver.
std::shared_ptr< vehicle::ChDriverGetDriver ()
 Get the attached driver.
void SetDriver (std::shared_ptr< vehicle::ChDriver > driver)
 Set the attached driver.
vehicle::ChVehicleGetVehicle ()
- Public Member Functions inherited from chrono::synchrono::SynBrain
 SynBrain (int rank)
virtual ~SynBrain ()
int GetRank ()
 Get this brain's rank.

Public Attributes

bool m_sen_init_called
const double FAR_DISTANCE = 1000

Additional Inherited Members

- Protected Attributes inherited from chrono::synchrono::SynVehicleBrain
std::shared_ptr< vehicle::ChDriverm_driver
 handle to the ChDriver
- Protected Attributes inherited from chrono::synchrono::SynBrain
int m_rank
 rank of this brain

The documentation for this class was generated from the following files:
  • /builds/uwsbel/chrono/src/chrono_synchrono/brain/SynACCBrain.h
  • /builds/uwsbel/chrono/src/chrono_synchrono/brain/SynACCBrain.cpp