ADORe
ADORe is a modular open source software library and toolkit for decision making, planning, control and simulation of automated vehicles
adore::apps::CheckpointController Class Reference

A set of virtual traffic lights are switched according to test driver input. CheckpointController is provided with a list of coorindates. Virtual traffic lights are placed at these coordinates, initially with red-light phase active. If a clearance button is pressed by the test driver, the nearest checkpoint traffic light in the lane-following view is switched to green-light for a given amount of time. More...

#include <checkpoint_controller.h>

Collaboration diagram for adore::apps::CheckpointController:
Collaboration graph

Public Member Functions

 CheckpointController ()
 
 ~CheckpointController ()
 
void run ()
 
bool loadFromFile (std::string filename)
 read a set of 2d/3d coordinates from a csv file and add these to checkpoints_ More...
 

Private Attributes

adore::mad::AReader< adore::fun::VehicleMotionState9d > * x_reader_
 
adore::mad::AReader< adore::fun::VehicleExtendedState > * xx_reader_
 
adore::env::AFactory::TControlledConnectionWritercc_writer_
 
adore::env::ThreeLaneViewDecoupled lv_
 
std::vector< adore::env::ControlledConnectioncheckpoints_
 
adore::params::APCheckpointspcheckpoints_
 

Detailed Description

A set of virtual traffic lights are switched according to test driver input. CheckpointController is provided with a list of coorindates. Virtual traffic lights are placed at these coordinates, initially with red-light phase active. If a clearance button is pressed by the test driver, the nearest checkpoint traffic light in the lane-following view is switched to green-light for a given amount of time.

Constructor & Destructor Documentation

◆ CheckpointController()

adore::apps::CheckpointController::CheckpointController ( )
inline
Here is the call graph for this function:

◆ ~CheckpointController()

adore::apps::CheckpointController::~CheckpointController ( )
inline

Member Function Documentation

◆ loadFromFile()

bool adore::apps::CheckpointController::loadFromFile ( std::string  filename)
inline

read a set of 2d/3d coordinates from a csv file and add these to checkpoints_

Parameters
filenamethe input csv file path/filename The input text file should be structured as follows: X0; Y0[; Z0][#comment] X1; Y1[; Z1][#comment] .... E.g. two to three doubles per line, separated by semicolons, "[]" meaning optional.
Here is the caller graph for this function:

◆ run()

void adore::apps::CheckpointController::run ( )
inline
Here is the call graph for this function:
Here is the caller graph for this function:

Member Data Documentation

◆ cc_writer_

adore::env::AFactory::TControlledConnectionWriter* adore::apps::CheckpointController::cc_writer_
private

write checkpoint state

◆ checkpoints_

std::vector<adore::env::ControlledConnection> adore::apps::CheckpointController::checkpoints_
private

set of checkpoints

◆ lv_

adore::env::ThreeLaneViewDecoupled adore::apps::CheckpointController::lv_
private

project checkpoint to lane

◆ pcheckpoints_

adore::params::APCheckpoints* adore::apps::CheckpointController::pcheckpoints_
private

parameters for checkpoints

◆ x_reader_

adore::mad::AReader<adore::fun::VehicleMotionState9d>* adore::apps::CheckpointController::x_reader_
private

compare vehicle position to checkpoint position

◆ xx_reader_

adore::mad::AReader<adore::fun::VehicleExtendedState>* adore::apps::CheckpointController::xx_reader_
private

get clearance button state


The documentation for this class was generated from the following file: