maliput
Phase Class Referencefinal

Detailed Description

A group of RightOfWayRule instances and their states.

It models coupling between these rules due to, for example, spatial co-location at intersections.

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

Public Types

using Id = TypeSpecificIdentifier< Phase >
 Unique identifier for a Phase. More...
 

Public Member Functions

 MALIPUT_DEFAULT_COPY_AND_MOVE_AND_ASSIGN (Phase)
 
 Phase (const Id &id, const RuleStates &rule_states, const DiscreteValueRuleStates &discrete_value_rule_states, std::optional< BulbStates > bulb_states=std::nullopt)
 Constructs a Phase. More...
 
const Idid () const
 Returns the phase's identifier. More...
 
const RuleStates & rule_states () const
 Returns the phase's RightOfWayRule instances and their states. More...
 
const DiscreteValueRuleStatesdiscrete_value_rule_states () const
 Returns the phase's DiscreteValueRule instances and their states. More...
 
const std::optional< BulbStates > & bulb_states () const
 Returns the phase's bulb states. More...
 

Member Typedef Documentation

◆ Id

Unique identifier for a Phase.

Constructor & Destructor Documentation

◆ Phase()

Phase ( const Id id,
const RuleStates &  rule_states,
const DiscreteValueRuleStates discrete_value_rule_states,
std::optional< BulbStates bulb_states = std::nullopt 
)

Constructs a Phase.

Parameters
idthe unique ID of the phase (in the RightOfWayRulePhaseRing)
rule_statesthe RightOfWayRules and their states when the phase is applied, e.g., to an intersection.
discrete_value_rule_statesthe DiscreteValueRules and their states when the phase is applied, e.g., to an intersection. Referenced rule type must be RightOfWayRuleType().
bulb_statesthe states of the bulbs when this phase is applied, e.g., to an intersection.
Note
rules_states and discrete_value_rule_states should reflect the same information. Rules should be duplicated while the transition from one type to the other happens.

Member Function Documentation

◆ bulb_states()

const std::optional<BulbStates>& bulb_states ( ) const

Returns the phase's bulb states.

◆ discrete_value_rule_states()

const DiscreteValueRuleStates& discrete_value_rule_states ( ) const

Returns the phase's DiscreteValueRule instances and their states.

◆ id()

const Id& id ( ) const

Returns the phase's identifier.

◆ MALIPUT_DEFAULT_COPY_AND_MOVE_AND_ASSIGN()

MALIPUT_DEFAULT_COPY_AND_MOVE_AND_ASSIGN ( Phase  )

◆ rule_states()

const RuleStates& rule_states ( ) const

Returns the phase's RightOfWayRule instances and their states.


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