#include <Lane.hh>
Public Member Functions | |
LaneHeader () | |
Default constructor. More... | |
~LaneHeader ()=default | |
Destructor. More... | |
bool | AddCheckpoint (const rndf::Checkpoint &_newCheckpoint) |
Add a new checkpoint. More... | |
bool | AddExit (const Exit &_newExit) |
Add a new exit. More... | |
bool | AddStop (const int _waypointId) |
Add a new stop. More... | |
bool | Checkpoint (const int _cpId, rndf::Checkpoint &_cp) const |
Get the details of one of the checkpoints with Id _cpId. More... | |
std::vector< rndf::Checkpoint > & | Checkpoints () |
Get a mutable reference to the vector of checkpoints;. More... | |
const std::vector < rndf::Checkpoint > & | Checkpoints () const |
Get the vector of checkpoints;. More... | |
std::vector< Exit > & | Exits () |
Get a mutable reference to the vector of exits. More... | |
const std::vector< Exit > & | Exits () const |
Get the vector of stops. More... | |
Marking | LeftBoundary () const |
Boundaries. More... | |
bool | Load (std::ifstream &_rndfFile, const int _segmentId, const int _laneId, int &_lineNumber) |
Parsing. More... | |
unsigned int | NumCheckpoints () const |
Checkpoints. More... | |
unsigned int | NumExits () const |
Exits. More... | |
unsigned int | NumStops () const |
Stops. More... | |
bool | RemoveCheckpoint (const int _cpId) |
Remove an existing checkpoint. More... | |
bool | RemoveExit (const Exit &_exit) |
Remove an existing exit. More... | |
bool | RemoveStop (const int _waypointId) |
Remove an existing stop. More... | |
Marking | RightBoundary () const |
Get the right boundary type. More... | |
void | SetLeftBoundary (const Marking &_boundary) |
Set the new left boundary type. More... | |
void | SetRightBoundary (const Marking &_boundary) |
Set the new right boundary type. More... | |
bool | SetWidth (const double _newWidth) |
Set the lane width. More... | |
std::vector< int > & | Stops () |
Get a mutable reference to the vector of stops. More... | |
const std::vector< int > & | Stops () const |
Get the vector of stops. More... | |
bool | UpdateCheckpoint (const rndf::Checkpoint &_cp) |
Update an existing checkpoint. More... | |
double | Width () const |
Width. More... | |
manifold::rndf::LaneHeader::LaneHeader | ( | ) |
Default constructor.
|
default |
Destructor.
bool manifold::rndf::LaneHeader::AddCheckpoint | ( | const rndf::Checkpoint & | _newCheckpoint | ) |
Add a new checkpoint.
[in] | _newCheckpoint | A new checkpoint to be added. |
bool manifold::rndf::LaneHeader::AddExit | ( | const Exit & | _newExit | ) |
Add a new exit.
[in] | _newExit | The exit to add. |
bool manifold::rndf::LaneHeader::AddStop | ( | const int | _waypointId | ) |
Add a new stop.
[in] | _waypointId | The Id of a new waypoint considered a stop. |
bool manifold::rndf::LaneHeader::Checkpoint | ( | const int | _cpId, |
rndf::Checkpoint & | _cp | ||
) | const |
Get the details of one of the checkpoints with Id _cpId.
[in] | _cpId | The checkpoint Id. |
[out] | _cp | The checkpoint requested. |
std::vector<rndf::Checkpoint>& manifold::rndf::LaneHeader::Checkpoints | ( | ) |
Get a mutable reference to the vector of checkpoints;.
const std::vector<rndf::Checkpoint>& manifold::rndf::LaneHeader::Checkpoints | ( | ) | const |
Get the vector of checkpoints;.
std::vector<Exit>& manifold::rndf::LaneHeader::Exits | ( | ) |
Get a mutable reference to the vector of exits.
const std::vector<Exit>& manifold::rndf::LaneHeader::Exits | ( | ) | const |
Get the vector of stops.
Marking manifold::rndf::LaneHeader::LeftBoundary | ( | ) | const |
Boundaries.
Get the left boundary type.
bool manifold::rndf::LaneHeader::Load | ( | std::ifstream & | _rndfFile, |
const int | _segmentId, | ||
const int | _laneId, | ||
int & | _lineNumber | ||
) |
Parsing.
Load a lane header from an input stream coming from a text file. The expected format is the one specified on the RNDF spec.
[in,out] | _rndfFile | Input file stream. |
[in] | _segmentId | The expected zone Id. |
[in] | _laneId | The expected lane Id. |
[in,out] | _lineNumber | Line number pointed by the stream position indicator. |
unsigned int manifold::rndf::LaneHeader::NumCheckpoints | ( | ) | const |
Checkpoints.
Get the number of checkpoints stored.
unsigned int manifold::rndf::LaneHeader::NumExits | ( | ) | const |
Exits.
Get the number of exits stored.
unsigned int manifold::rndf::LaneHeader::NumStops | ( | ) | const |
Stops.
Get the number of stops stored.
bool manifold::rndf::LaneHeader::RemoveCheckpoint | ( | const int | _cpId | ) |
Remove an existing checkpoint.
[in] | _cpId | The checkpoint Id to be removed. |
bool manifold::rndf::LaneHeader::RemoveExit | ( | const Exit & | _exit | ) |
Remove an existing exit.
[in] | _exit | The exit to be removed. |
bool manifold::rndf::LaneHeader::RemoveStop | ( | const int | _waypointId | ) |
Remove an existing stop.
[in] | _waypointId | The waypoint Id (of a stop sign) to be removed. |
Marking manifold::rndf::LaneHeader::RightBoundary | ( | ) | const |
Get the right boundary type.
void manifold::rndf::LaneHeader::SetLeftBoundary | ( | const Marking & | _boundary | ) |
Set the new left boundary type.
[in] | _boundary | The new left boundary type. |
void manifold::rndf::LaneHeader::SetRightBoundary | ( | const Marking & | _boundary | ) |
Set the new right boundary type.
[in] | _boundary | The new right boundary type. |
bool manifold::rndf::LaneHeader::SetWidth | ( | const double | _newWidth | ) |
Set the lane width.
[in] | _newWidth | The new width in meters. |
std::vector<int>& manifold::rndf::LaneHeader::Stops | ( | ) |
Get a mutable reference to the vector of stops.
The elements are waypoint Ids.
const std::vector<int>& manifold::rndf::LaneHeader::Stops | ( | ) | const |
Get the vector of stops.
The elements are waypoint Ids.
bool manifold::rndf::LaneHeader::UpdateCheckpoint | ( | const rndf::Checkpoint & | _cp | ) |
Update an existing checkpoint.
[in] | _cp | The updated checkpoint. |
double manifold::rndf::LaneHeader::Width | ( | ) | const |
Width.
Get the lane width in meters.