delphyne
NamedPortSystem< Base, T > Class Template Reference

Detailed Description

template<typename Base, typename T>
class delphyne::detail::NamedPortSystem< Base, T >

A generic bundle containing and describing a diagram.

There's no easy way to introspect on the input/output ports of a diagram or even enumerate the indices of the port since they are dynamically generated at build time, so this passes along the indices with the diagram so that it can be encapsulated inside other diagrams and wired up with that diagram's systems.

To avoid zombie diagram bundles, this class should be exclusively used with unique pointers. Copy/Move/Assign capabilities are disabled.

Template Parameters
Oneof double, delphyne::AutoDiff or delphyne::Symbolic.

#include <include/delphyne/mi6/diagram_bundle.h>

Inheritance diagram for NamedPortSystem< Base, T >:
[legend]

Public Member Functions

 DRAKE_NO_COPY_NO_MOVE_NO_ASSIGN (NamedPortSystem)
 
template<typename... Args>
 NamedPortSystem (Args... args)
 
void set_input_names (std::map< std::string, drake::systems::InputPortIndex > inputs_mapping)
 
void set_output_names (std::map< std::string, drake::systems::OutputPortIndex > outputs_mapping)
 
const drake::systems::InputPort< T > & get_input_port (int port_index) const
 
const drake::systems::InputPort< T > & get_input_port (const std::string &port_name) const
 
const drake::systems::OutputPort< T > & get_output_port (int port_index) const
 
const drake::systems::OutputPort< T > & get_output_port (const std::string &port_name) const
 

Constructor & Destructor Documentation

◆ NamedPortSystem()

NamedPortSystem ( Args...  args)
explicit

Member Function Documentation

◆ DRAKE_NO_COPY_NO_MOVE_NO_ASSIGN()

DRAKE_NO_COPY_NO_MOVE_NO_ASSIGN ( NamedPortSystem< Base, T >  )

◆ get_input_port() [1/2]

const drake::systems::InputPort<T>& get_input_port ( const std::string &  port_name) const

◆ get_input_port() [2/2]

const drake::systems::InputPort<T>& get_input_port ( int  port_index) const

◆ get_output_port() [1/2]

const drake::systems::OutputPort<T>& get_output_port ( const std::string &  port_name) const

◆ get_output_port() [2/2]

const drake::systems::OutputPort<T>& get_output_port ( int  port_index) const

◆ set_input_names()

void set_input_names ( std::map< std::string, drake::systems::InputPortIndex inputs_mapping)

◆ set_output_names()

void set_output_names ( std::map< std::string, drake::systems::OutputPortIndex outputs_mapping)

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