3 #ifndef VISR_PML_SIGNAL_ROUTING_PARAMETER_HPP_INCLUDED 4 #define VISR_PML_SIGNAL_ROUTING_PARAMETER_HPP_INCLUDED 17 #include <initializer_list> 86 bool empty()
const {
return mRoutings.empty(); }
88 std::size_t
size()
const {
return mRoutings.size(); }
92 RoutingsType::const_iterator
begin()
const {
return mRoutings.begin(); }
94 RoutingsType::const_iterator
end()
const {
return mRoutings.end(); }
98 addRouting(
Entry{ inputIdx, outputIdx } );
105 void addRouting( Entry
const & newEntry );
111 bool removeEntry( Entry
const & entry );
117 bool removeEntry( IndexType outputIdx );
126 static const Entry returnInvalid{ cInvalidIndex, cInvalidIndex };
128 RoutingsType::const_iterator
const findIt = mRoutings.find(
Entry{ cInvalidIndex, outputIdx } );
129 return findIt == mRoutings.end() ? returnInvalid : *findIt;
134 RoutingsType::const_iterator
const findIt = mRoutings.find(
Entry{ cInvalidIndex, outputIdx } );
135 return findIt == mRoutings.end() ? cInvalidIndex : findIt->input;
138 IndexType getOutput( IndexType inputIdx )
const;
140 bool parse( std::string
const & encoded );
143 RoutingsType mRoutings;
151 #endif // VISR_PML_SIGNAL_ROUTING_PARAMETER_HPP_INCLUDED
std::set< Entry, CompareEntries > RoutingsType
Definition: signal_routing_parameter.hpp:65
SignalRoutingParameter()
Definition: signal_routing_parameter.hpp:71
IndexType getInput(IndexType outputIdx) const
Definition: signal_routing_parameter.hpp:132
RoutingsType::const_iterator end() const
Definition: signal_routing_parameter.hpp:94
bool empty() const
Definition: signal_routing_parameter.hpp:86
void addRouting(IndexType inputIdx, IndexType outputIdx)
Definition: signal_routing_parameter.hpp:96
bool operator()(Entry const &lhs, Entry const &rhs) const
Definition: signal_routing_parameter.hpp:56
IndexType output
Definition: signal_routing_parameter.hpp:50
static const constexpr ParameterType staticType()
Definition: typed_parameter_base.hpp:41
Definition: signal_routing_parameter.hpp:32
Definition: options.cpp:10
Definition: parameter_factory.hpp:20
Definition: parameter_config_base.hpp:22
RoutingsType::const_iterator begin() const
Definition: signal_routing_parameter.hpp:92
Entry const & getEntry(IndexType outputIdx) const
Definition: signal_routing_parameter.hpp:124
#define DEFINE_PARAMETER_TYPE(ParameterClassType, ParameterId, ParameterConfigType)
Definition: parameter_type.hpp:60
std::size_t IndexType
Definition: signal_routing_parameter.hpp:35
Definition: signal_routing_parameter.hpp:53
IndexType input
Definition: signal_routing_parameter.hpp:49
std::size_t size() const
Definition: signal_routing_parameter.hpp:88
Definition: empty_parameter_config.hpp:21
Definition: signal_routing_parameter.hpp:46