Drake
VectorConstant3< T > Class Template Reference

This System produces a constant VectorInterface value on its single OutputPort. More...

#include <drake/systems/framework/primitives/vector_constant3.h>

Inheritance diagram for VectorConstant3< T >:
Collaboration diagram for VectorConstant3< T >:

Public Member Functions

 VectorConstant3 (const std::string &name, std::unique_ptr< VectorInterface< T >> value)
 Takes over ownership of the given VectorInterface, which will be regurgitated as the value of the OutputPort. More...
 
 VectorConstant3 (const std::string &name, const Eigen::Ref< const VectorX< T >> &vector)
 Given an Eigen vector value, create a BasicVector containing that value as the output of this system. More...
 
 VectorConstant3 (const std::string &name, const T &scalar_value)
 Given a scalar, create a one-element BasicVector containing that value as the output of this system. More...
 
- Public Member Functions inherited from System3< T >
std::unique_ptr< Context3< T > > CreateDefaultContext () const
 Get a default Context<T> compatible with this System<T>. More...
 
const VectorInterface< T > & EvalVectorOutputPort (const Context3< T > &context, int port_num) const
 Convenience method for obtaining the up-to-date value for an output port which is known to be vector valued. More...
 
const T & EvalPotentialEnergy (const Context3< T > &context) const
 Returns the potential energy currently stored in the configuration provided in the given Context3. More...
 
const T & EvalKineticEnergy (const Context3< T > &context) const
 Return the kinetic energy currently present in the motion provided in the given Context3. More...
 
void UpdateDiscreteVariables (Context3< T > &context, int sample_key) const
 TODO: update discrete variables. More...
 
std::pair< double, int > GetNextSampleTime (const Context3< T > &context) const
 Returns the next sample time required by any subsystem of this System. More...
 
Eigen::VectorBlock< const VectorX< T > > EvalTimeDerivatives (const Context3< T > &context, DerivativeBlock block) const
 Returns time derivatives of one or all of the continuous state variable groups. More...
 
const T & EvalConservativePower (const Context3< T > &context) const
 For continuous, physical systems only, returns the rate at which energy is being converted from potential energy to kinetic energy by this system in the given Context3. More...
 
const T & EvalNonConservativePower (const Context3< T > &context) const
 For continuous, physical systems only, returns the rate at which energy is being added to (positive) or dissipated from (negative) this sytem other than* by conversion between potential and kinetic energy (in the given Context3). More...
 
void MapVelocityToConfigurationDerivatives (const Context3< T > &context, const Eigen::Ref< const VectorX< T >> &generalized_velocity, Eigen::Ref< VectorX< T >> *configuration_derivatives) const
 Transforms a given generalized velocity v into qdot, the time derivative of the generalized configuration q. More...
 
void MapAccelerationToConfigurationSecondDerivatives (const Context3< T > &context, const Eigen::Ref< const VectorX< T >> &generalized_acceleration, Eigen::Ref< VectorX< T >> *configuration_second_derivatives) const
 Transforms a given generalized acceleration vdot into qdotdot, the second time derivative of the generalized configuration q. More...
 
- Public Member Functions inherited from AbstractSystem3
virtual ~AbstractSystem3 ()
 
std::string get_name () const
 Returns the name of this system. More...
 
DRAKESYSTEMFRAMEWORK_EXPORT std::unique_ptr< AbstractContext3CreateDefaultContext () const
 Returns a default context, initialized with run time mutable memory for the correct number and type of InputPort3, OutputPort3, and state variable objects, as well as time, parameters, and basic computations. More...
 
DRAKESYSTEMFRAMEWORK_EXPORT const AbstractValueEvalOutputPort (const AbstractContext3 &context, int port_num) const
 Obtain an up-to-date value for one of this system's output ports. More...
 
const InputPortFinderget_input_port_finder (int port_num) const
 
const OutputPortFinderget_output_port_finder (int port_num) const
 
CacheEntry::Calculator get_output_port_calculator (int port_num) const
 Given an output port number, return a function that knows how to calculate the value of that port when given a system and context. More...
 
void CalcOutputPort (const AbstractContext3 &context, int port_num, AbstractValue *result) const
 Unconditionally calculate what would be the output port value into an already-allocated appropriate result object. More...
 
int AddInputPort (std::unique_ptr< InputPort3 > port)
 Add an input port that is to be owned by this system. More...
 
int AddOutputPort (std::unique_ptr< OutputPort3 > port)
 Add an output port that is to be owned by this System. More...
 
int get_num_input_ports () const
 Returns the current number of input ports in this system. More...
 
const InputPort3get_input_port (int port_num) const
 Returns a const reference to the InputPort3 with the given port number. More...
 
InputPort3get_mutable_input_port (int port_num)
 Returns a mutable pointer to the InputPort3 with the given port number. More...
 
int get_num_output_ports () const
 Returns the current number of output ports in this system. More...
 
const OutputPort3get_output_port (int port_num) const
 Returns a const reference to the OutputPort3 with the given port number. More...
 
OutputPort3get_mutable_output_port (int port_num)
 Returns a mutable pointer to the OutputPort3 with the given port number. More...
 
template<class ConcreteSystem >
ConcreteSystem * AddSubsystem (std::unique_ptr< ConcreteSystem > subsystem)
 Takes ownership of the given system and returns an unowned, raw pointer to the concrete type for convenient access. More...
 
int InheritInputPort (AbstractSystem3 *child_subsystem, int input_port_num)
 The given subsystem's InputPort3 becomes the next InputPort3 of this system diagram. More...
 
int InheritOutputPort (AbstractSystem3 *child_subsystem, int output_port_num)
 The given subsystem's OutputPort3 becomes the next OutputPort3 of this system diagram. More...
 
void Connect (AbstractSystem3 *source_subsystem, int output_port_num, AbstractSystem3 *sink_subsystem, int input_port_num)
 Connect the given output port of subsystem 1 into the given input port of subsystem 2. More...
 
int get_num_subsystems () const
 Returns the current number of subsystems contained in this system diagram. More...
 
const AbstractSystem3get_subsystem (int index) const
 Returns a const reference to one of the contained subsystems, using the index reflecting the order in which it was added. More...
 
AbstractSystem3get_mutable_subsystem (int index)
 Returns a mutable pointer to one of the contained subsystems, using the index reflecting the order in which it was added. More...
 
const AbstractSystem3get_parent_system () const
 Returns a const pointer to the parent system that owns this one, or nullptr if this is a root system. More...
 
AbstractSystem3get_mutable_parent_system ()
 Returns a mutable pointer to the parent system that owns this one, or nullptr if this is a root system. More...
 
int get_subsystem_num () const
 If this system is a subsystem of a parent system, return the subsystem number by which that parent knows us. More...
 
std::string GetSubsystemPathName () const
 Determine the full path name of this subsystem in a form like /rootname/parentname/myname. More...
 
const AbstractContext3find_my_subcontext (const AbstractContext3 &some_subcontext) const
 Get const access to this subsystem's subcontext given const access to any other subsystem's subcontext in the same context diagram. More...
 
AbstractContext3find_my_mutable_subcontext (AbstractContext3 *some_subcontext) const
 Get mutable access to this subsystem's subcontext given mutable access to any other subsystem's subcontext in the same context diagram. More...
 
const AbstractSystem3get_root_system () const
 Find the root system of the tree of which this subsystem is a member. More...
 
AbstractSystem3get_mutable_root_system ()
 Get a mutable pointer to the root system of the tree of which this subsystem is a member. More...
 

Additional Inherited Members

- Public Types inherited from System3< T >
enum  DerivativeBlock { kQdot = 0, kVdot = 1, kZdot = 2, kQdotDot = 3 }
 
- Protected Member Functions inherited from System3< T >
 System3 (const std::string &name)
 Creates a System3 with no ports. More...
 
const VectorInterface< T > & EvalVectorInputPort (const Context3< T > &context, int port_num) const
 Convenience method for obtaining the up-to-date value for an input port which is known to be vector valued. More...
 
virtual const T & DoEvalPotentialEnergy (const Context3< T > &context) const
 If your system is capable of storing energy, implement this method to return the potential energy currently stored in the configuration provided in the given Context3. More...
 
virtual const T & DoEvalKineticEnergy (const Context3< T > &context) const
 If your system models energy of motion, implement this method to return the kinetic energy currently present in the motion provided in the given Context3. More...
 
void DoMapVelocityToConfigurationDerivatives (const Context3< T > &context, const Eigen::Ref< const VectorX< T >> &generalized_velocity, Eigen::Ref< VectorX< T >> *configuration_derivatives) const
 If your system has configuration and velocity variables, and the mapping from velocity v to configuration derivatives q is not identity, then you must implement this method. More...
 
void DoMapAccelerationToConfigurationSecondDerivatives (const Context3< T > &context, const Eigen::Ref< const VectorX< T >> &generalized_acceleration, Eigen::Ref< VectorX< T >> *configuration_second_derivatives) const
 See above for when you have to implement this method. More...
 
virtual const T & DoEvalConservativePower (const Context3< T > &context) const
 Return the rate at which mechanical energy is being converted from potential energy to kinetic energy by this system in the given Context3. More...
 
virtual const T & DoEvalNonConservativePower (const Context3< T > &context) const
 Return the rate at which mechanical energy is being generated (positive) or dissipated (negative) other than by conversion between potential and kinetic energy (in the given Context3). More...
 
- Protected Member Functions inherited from AbstractSystem3
 AbstractSystem3 (const std::string &name)
 
DRAKESYSTEMFRAMEWORK_EXPORT const AbstractValueEvalInputPort (const AbstractContext3 &context, int port_num) const
 Obtain an up-to-date value for one of this system's input ports. More...
 
virtual void DoAcquireContextResources (AbstractContext3 *context) const
 Acquire any private Context resources your concrete System needs, and assign them default values. More...
 

Detailed Description

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

This System produces a constant VectorInterface value on its single OutputPort.

Template Parameters
TThe type of numerical values processed here. Must be a valid Eigen scalar.

Constructor & Destructor Documentation

VectorConstant3 ( const std::string &  name,
std::unique_ptr< VectorInterface< T >>  value 
)
inline

Takes over ownership of the given VectorInterface, which will be regurgitated as the value of the OutputPort.

Here is the call graph for this function:

VectorConstant3 ( const std::string &  name,
const Eigen::Ref< const VectorX< T >> &  vector 
)
inline

Given an Eigen vector value, create a BasicVector containing that value as the output of this system.

VectorConstant3 ( const std::string &  name,
const T &  scalar_value 
)
inline

Given a scalar, create a one-element BasicVector containing that value as the output of this system.

Here is the call graph for this function:


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