Drake
OutputPort3 Class Reference

An OutputPort3 represents a data output from a System. More...

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

Inheritance diagram for OutputPort3:

Public Member Functions

virtual ~OutputPort3 ()=default
 
 OutputPort3 ()
 Create an OutputPort3 that has no model value. More...
 
 OutputPort3 (std::unique_ptr< AbstractValue > model_value)
 Create an OutputPort3 with the indicated model value, taking over ownership of the model value. More...
 
void set_model_value (std::unique_ptr< AbstractValue > model_value)
 Set the model value for this OutputPort3. More...
 
const AbstractValueget_model_value () const
 Returns a const reference to a value of the type that this OutputPort3 will present at run time. More...
 
AbstractValueget_mutable_model_value ()
 Returns a mutable pointer to a value of the type that this OutputPort3 will present at run time. More...
 
std::pair< const AbstractSystem3 *, int > get_owner_system () const
 If this OutputPort3 is owned by a system, return that system and the output port number by which that system knows this port. More...
 

Friends

class AbstractSystem3
 

Detailed Description

An OutputPort3 represents a data output from a System.

Other Systems may have InputPort3 objects that depend on the values presented at an OutputPort3.

Every OutputPort3 produces a value at run time, represented as an AbstractValue object. A subclass VectorOutputPort3<T> requires that the actual type of the value be a numerical vector whose elements have scalar type T. VectorOutputPort3 values can participate in automatic differentiation, but more general OutputPort3 objects cannot.

An OutputPort3 has a particular data type and sampling information that together can be used to determine whether it satisfies the requirements of a particular InputPort3. The type is represented here by a "model" value in the form of an AbstractValue object that can be copied to initialize the Context3's cache entry that holds the value for this OutputPort3.

Constructor & Destructor Documentation

virtual ~OutputPort3 ( )
virtualdefault
OutputPort3 ( )
inline

Create an OutputPort3 that has no model value.

Here is the caller graph for this function:

OutputPort3 ( std::unique_ptr< AbstractValue model_value)
inlineexplicit

Create an OutputPort3 with the indicated model value, taking over ownership of the model value.

Here is the call graph for this function:

Member Function Documentation

const AbstractValue& get_model_value ( ) const
inline

Returns a const reference to a value of the type that this OutputPort3 will present at run time.

Here is the caller graph for this function:

AbstractValue* get_mutable_model_value ( )
inline

Returns a mutable pointer to a value of the type that this OutputPort3 will present at run time.

Here is the caller graph for this function:

std::pair<const AbstractSystem3*, int> get_owner_system ( ) const
inline

If this OutputPort3 is owned by a system, return that system and the output port number by which that system knows this port.

If unowned, the returned pair is (nullptr,-1).

Here is the call graph for this function:

Here is the caller graph for this function:

void set_model_value ( std::unique_ptr< AbstractValue model_value)
inline

Set the model value for this OutputPort3.

Replaces the existing one if there is one. Takes over ownership of the given value.

Here is the caller graph for this function:

Friends And Related Function Documentation

friend class AbstractSystem3
friend

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