maliput
PhaseRingBook Class Referenceabstract

Detailed Description

Abstract interface for providing the mapping from RightOfWayRule::Id to PhaseRing.

#include <include/maliput/api/rules/phase_ring_book.h>

Inheritance diagram for PhaseRingBook:
[legend]

Public Member Functions

 MALIPUT_NO_COPY_NO_MOVE_NO_ASSIGN (PhaseRingBook)
 
virtual ~PhaseRingBook ()=default
 
std::vector< PhaseRing::IdGetPhaseRings () const
 Gets a list of all PhaseRings within this book. More...
 
std::optional< PhaseRingGetPhaseRing (const PhaseRing::Id &ring_id) const
 Gets the specified PhaseRing. More...
 
std::optional< PhaseRingFindPhaseRing (const RightOfWayRule::Id &rule_id) const
 Finds and returns the PhaseRing containing the specified RightOfWayRule. More...
 
std::optional< PhaseRingFindPhaseRing (const Rule::Id &rule_id) const
 Finds and returns the PhaseRing containing the specified Rule. More...
 

Protected Member Functions

 PhaseRingBook ()=default
 

Constructor & Destructor Documentation

◆ ~PhaseRingBook()

virtual ~PhaseRingBook ( )
virtualdefault

◆ PhaseRingBook()

PhaseRingBook ( )
protecteddefault

Member Function Documentation

◆ FindPhaseRing() [1/2]

std::optional<PhaseRing> FindPhaseRing ( const RightOfWayRule::Id &  rule_id) const

Finds and returns the PhaseRing containing the specified RightOfWayRule.

Returns std::nullopt if rule_id is unrecognized.

◆ FindPhaseRing() [2/2]

std::optional<PhaseRing> FindPhaseRing ( const Rule::Id rule_id) const

Finds and returns the PhaseRing containing the specified Rule.

Returns std::nullopt if rule_id is unrecognized.

◆ GetPhaseRing()

std::optional<PhaseRing> GetPhaseRing ( const PhaseRing::Id ring_id) const

Gets the specified PhaseRing.

Returns std::nullopt if ring_id is unrecognized.

◆ GetPhaseRings()

std::vector<PhaseRing::Id> GetPhaseRings ( ) const

Gets a list of all PhaseRings within this book.

◆ MALIPUT_NO_COPY_NO_MOVE_NO_ASSIGN()

MALIPUT_NO_COPY_NO_MOVE_NO_ASSIGN ( PhaseRingBook  )

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