Drake
InputPortBase Class Reference

An InputPort is a System resource that describes the kind of input a System accepts, on a given port. More...

#include <drake/systems/framework/input_port_base.h>

Public Member Functions

virtual ~InputPortBase ()
 
InputPortIndex get_index () const
 Returns the index of this input port within the owning System. More...
 
DependencyTicket ticket () const
 Returns the DependencyTicket for this input port within the owning System. More...
 
const SystemBaseget_system_base () const
 Returns a reference to the SystemBase that owns this input port. More...
 
PortDataType get_data_type () const
 Returns the port data type. More...
 
int size () const
 Returns the fixed size expected for a vector-valued input port. More...
 
bool is_random () const
 Returns true if this is a random port. More...
 
optional< RandomDistributionget_random_type () const
 Returns the RandomDistribution if this is a random port. More...
 
const std::string & get_name () const
 Get port name. More...
 
Does not allow copy, move, or assignment
 InputPortBase (const InputPortBase &)=delete
 
InputPortBaseoperator= (const InputPortBase &)=delete
 
 InputPortBase (InputPortBase &&)=delete
 
InputPortBaseoperator= (InputPortBase &&)=delete
 

Protected Member Functions

 InputPortBase (SystemBase *owning_system, std::string name, InputPortIndex index, DependencyTicket ticket, PortDataType data_type, int size, const optional< RandomDistribution > &random_type)
 Provides derived classes the ability to set the base class members at construction. More...
 

Detailed Description

An InputPort is a System resource that describes the kind of input a System accepts, on a given port.

It does not directly contain any runtime input port data; that is always contained in a Context. The actual value will be either the value of an OutputPort to which this is connected, or a fixed value set in a Context.

InputPortBase is the scalar type-independent part of an InputPort.

Constructor & Destructor Documentation

◆ InputPortBase() [1/3]

InputPortBase ( const InputPortBase )
delete

◆ InputPortBase() [2/3]

InputPortBase ( InputPortBase &&  )
delete

◆ ~InputPortBase()

~InputPortBase ( )
virtualdefault

◆ InputPortBase() [3/3]

InputPortBase ( SystemBase owning_system,
std::string  name,
InputPortIndex  index,
DependencyTicket  ticket,
PortDataType  data_type,
int  size,
const optional< RandomDistribution > &  random_type 
)
protected

Provides derived classes the ability to set the base class members at construction.

Parameters
owning_systemThe System that owns this input port.
nameA name for the port. Input port names should be non-empty and unique within a single System.
indexThe index to be assigned to this InputPort.
ticketThe DependencyTicket to be assigned to this InputPort.
data_typeWhether the port described is vector- or abstract-valued.
sizeIf the port described is vector-valued, the number of elements, or kAutoSize if determined by connections. Ignored for abstract-valued ports.
random_typeInput ports may optionally be labeled as random, if the port is intended to model a random-source "noise" or "disturbance" input.

Member Function Documentation

◆ get_data_type()

PortDataType get_data_type ( ) const
inline

Returns the port data type.

◆ get_index()

InputPortIndex get_index ( ) const
inline

Returns the index of this input port within the owning System.

For a Diagram, this will be the index within the Diagram, not the index within a LeafSystem whose input port was exported.

◆ get_name()

const std::string& get_name ( ) const
inline

Get port name.

◆ get_random_type()

optional<RandomDistribution> get_random_type ( ) const
inline

Returns the RandomDistribution if this is a random port.

◆ get_system_base()

const SystemBase& get_system_base ( ) const
inline

Returns a reference to the SystemBase that owns this input port.

Note that for a diagram input port this will be the diagram, not the leaf system whose input port was exported.

◆ is_random()

bool is_random ( ) const
inline

Returns true if this is a random port.

◆ operator=() [1/2]

InputPortBase& operator= ( const InputPortBase )
delete

◆ operator=() [2/2]

InputPortBase& operator= ( InputPortBase &&  )
delete

◆ size()

int size ( ) const
inline

Returns the fixed size expected for a vector-valued input port.

Not meaningful for abstract-valued input ports.

◆ ticket()

DependencyTicket ticket ( ) const
inline

Returns the DependencyTicket for this input port within the owning System.


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