BusValue is a value type used on input ports and output ports to group labeled signals into a single port.
Each signal is referred to by a unique name and stored using an AbstractValue.
In some cases the signal names are used only for human-readable logging or debugging, so can be anything. In other cases, the systems using the signals will require the signals to use specific names per some convention (e.g., for a BusSelector the signal names must match the output port names).
#include <drake/systems/framework/bus_value.h>
Classes | |
| class | Iterator |
| Provides a forward_iterator over BusValue signals. More... | |
Public Types | |
Container-like type aliases | |
| using | const_iterator = Iterator |
| using | value_type = std::pair<const std::string_view, const AbstractValue&> |
Public Member Functions | |
| BusValue () | |
| Constructs an empty BusValue. | |
| ~BusValue () | |
| const AbstractValue * | Find (std::string_view name) const |
| Gets one signal value. | |
| void | Clear () |
| Removes all signals from this. | |
| void | Set (std::string_view name, const AbstractValue &value) |
| Sets one signal value. | |
Implements CopyConstructible, CopyAssignable, MoveConstructible, MoveAssignable | |
| BusValue (const BusValue &) | |
| BusValue & | operator= (const BusValue &) |
| BusValue (BusValue &&) | |
| BusValue & | operator= (BusValue &&) |
Iterators | |
The iteration order is deterministic but unspecified. | |
| Iterator | begin () const |
| Iterator | end () const |
| using const_iterator = Iterator |
| using value_type = std::pair<const std::string_view, const AbstractValue&> |
| BusValue | ( | ) |
Constructs an empty BusValue.
| ~BusValue | ( | ) |
| Iterator begin | ( | ) | const |
| void Clear | ( | ) |
Removes all signals from this.
Invalidates all iterators.
| BusValue::Iterator end | ( | ) | const |
| const AbstractValue * Find | ( | std::string_view | name | ) | const |
Gets one signal value.
Returns nullptr if not found. Does not invalidate any iterators, but the return value is invalidated by a call to any non-const method on this.
| void Set | ( | std::string_view | name, |
| const AbstractValue & | value ) |
Sets one signal value.
Invalidates all iterators. The name can be any string without restriction, although we encourage valid UTF-8.