Drake
drake::systems::detail Namespace Reference

## Classes

class  InputPortEvaluatorInterface
InputPortEvaluatorInterface is implemented by classes that are able to evaluate the OutputPortValue connected to a particular InputPortValue. More...

class  ModelValues
Represents models for a sequence of AbstractValues (usually a sequence of either input or output ports). More...

class  OutputPortListenerInterface
OutputPortListenerInterface is an interface that consumers of an output port must satisfy to receive notifications when the value of that output port may have changed. More...

## Functions

template<typename T >
void CheckBasicVectorInvariants (const BasicVector< T > *basic_vector)
Checks some BasicVector invariants on basic_vector. More...

template<typename T >
void CheckVectorValueInvariants (const AbstractValue *abstract_value)
If abstract_value is a Value<BasicVector<T>>, then checks some BasicVector invariants. More...

## Function Documentation

 void drake::systems::detail::CheckBasicVectorInvariants ( const BasicVector< T > * basic_vector )

Checks some BasicVector invariants on basic_vector.

Because this function uses shady implementation tricks, it should ONLY be called from within DRAKE_ASSERT_VOID or unit test code.

This function is likely to be expensive (on the order of a full copy), so should be used sparingly. In particular, only a few select locations within the Systems Framework itself should likely call this function.

Exceptions
 exception if invariants are violated or basic_vector is nullptr

Here is the call graph for this function:

Here is the caller graph for this function:

 void drake::systems::detail::CheckVectorValueInvariants ( const AbstractValue * abstract_value )

If abstract_value is a Value<BasicVector<T>>, then checks some BasicVector invariants.

Otherwise, does nothing.

Because this function uses shady implementation tricks, it should ONLY be called from within DRAKE_ASSERT_VOID or unit test code.

This function is likely to be expensive (on the order of a full copy), so should be used sparingly. In particular, only a few select locations within the Systems Framework itself should likely call this function.

Template Parameters
 T the supposed element type of the Value> that has been erased into an AbstractValue
Exceptions
 exception if invariants are violated or abstract_value is nullptr

Here is the call graph for this function: