Drake
VectorInterface< T > Class Template Referenceabstract

VectorInterface is a pure abstract interface that real-valued signals between Systems must satisfy. More...

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

Inheritance diagram for VectorInterface< T >:

Public Member Functions

virtual ~VectorInterface ()
 
virtual int size () const =0
 Returns the size of the vector, which must be equal to the number of rows in get_value(). More...
 
virtual void set_value (const Eigen::Ref< const VectorX< T >> &value)=0
 Sets the vector to the given value. More...
 
virtual Eigen::VectorBlock< const VectorX< T > > get_value () const =0
 Returns a column vector containing the entire value of the signal. More...
 
virtual Eigen::VectorBlock< VectorX< T > > get_mutable_value ()=0
 Returns a reference that allows mutation of the values in this vector, but does not allow resizing the vector itself. More...
 
virtual std::unique_ptr< VectorInterface< T > > Clone () const =0
 Copies the entire vector to a new VectorInterface, with the same concrete implementation type. More...
 

Protected Member Functions

 VectorInterface ()
 

Detailed Description

template<typename T>
class drake::systems::VectorInterface< T >

VectorInterface is a pure abstract interface that real-valued signals between Systems must satisfy.

Classes that inherit from VectorInterface may provide names for the elements of the vector, and may also provide other computations for the convenience of Systems handling the signal. The vector is always a column vector with elements stored in contiguous memory locations.

Template Parameters
TMust be a Scalar compatible with Eigen.

Constructor & Destructor Documentation

virtual ~VectorInterface ( )
inlinevirtual
VectorInterface ( )
inlineprotected

Here is the caller graph for this function:

Member Function Documentation

virtual std::unique_ptr<VectorInterface<T> > Clone ( ) const
pure virtual

Copies the entire vector to a new VectorInterface, with the same concrete implementation type.

Implemented in BasicVector< T >.

Here is the caller graph for this function:

virtual Eigen::VectorBlock<VectorX<T> > get_mutable_value ( )
pure virtual

Returns a reference that allows mutation of the values in this vector, but does not allow resizing the vector itself.

Implemented in BasicVector< T >.

Here is the caller graph for this function:

virtual Eigen::VectorBlock<const VectorX<T> > get_value ( ) const
pure virtual

Returns a column vector containing the entire value of the signal.

Implemented in BasicVector< T >.

Here is the caller graph for this function:

virtual void set_value ( const Eigen::Ref< const VectorX< T >> &  value)
pure virtual

Sets the vector to the given value.

After a.set_value(b.get_value()), a must be identical to b. May throw std::out_of_range if the new value has different dimensions than expected by the concrete class implementing VectorInterface.

Implemented in BasicVector< T >.

Here is the caller graph for this function:

virtual int size ( ) const
pure virtual

Returns the size of the vector, which must be equal to the number of rows in get_value().

Implemented in BasicVector< T >.

Here is the caller graph for this function:


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