maliput
maliput::drake::systems::internal Namespace Reference

Classes

class  AbstractValueCloner
 
class  ContextBaseFixedInputAttorney
 
class  ContextMessageInterface
 
class  FrameworkFactory
 
class  ModelValues
 Represents models for a sequence of AbstractValues (usually a sequence of either input or output ports). More...
 
struct  OutputPortPrerequisite
 
class  SystemBaseContextBaseAttorney
 
class  SystemMessageInterface
 
class  SystemParentServiceInterface
 
class  ValueToAbstractValue
 Implements Drake policy for taking a concrete value object and storing it in a Drake abstract object (for example, an abstract-valued port) as a type-erased AbstractValue. More...
 
class  ValueToVectorValue
 Implements Drake policy for taking a concrete vector type and storing it in a Drake numerical vector object as an AbstractValue of concrete type Value<BasicVector<T>>. More...
 

Typedefs

using SystemId = maliput::drake::Identifier< class SystemIdTag >
 

Enumerations

enum  BuiltInTicketNumbers {
  kNothingTicket = 0, kTimeTicket = 1, kAccuracyTicket = 2, kQTicket = 3,
  kVTicket = 4, kZTicket = 5, kXcTicket = 6, kXdTicket = 7,
  kXaTicket = 8, kXTicket = 9, kPnTicket = 10, kPaTicket = 11,
  kAllParametersTicket = 12, kAllSourcesExceptInputPortsTicket = 13, kAllInputPortsTicket = 14, kAllSourcesTicket = 15,
  kConfigurationTicket = 16, kKinematicsTicket = 17, kLastSourceTicket = kKinematicsTicket, kXcdotTicket = 18,
  kPeTicket = 19, kKeTicket = 20, kPcTicket = 21, kPncTicket = 22,
  kNextAvailableTicket = kPncTicket + 1
}
 

Functions

template<typename S >
std::vector< doubleExtractDoublesOrThrow (const std::vector< S > &input_vector)
 Converts an STL vector of scalar type S elements to an STL vector of double type elements, failing at runtime if the type cannot be converted. More...
 
template<typename S >
std::vector< MatrixX< double > > ExtractDoublesOrThrow (const std::vector< MatrixX< S >> &input_vector)
 Converts an STL vector of matrices with scalar type S elements to an STL vector of matrices with double type elements, failing at runtime if the type cannot be converted. More...
 
template<typename U >
std::vector< U * > Unpack (const std::vector< std::unique_ptr< U >> &in)
 
template<typename PtrType >
bool IsNonNull (const std::vector< PtrType > &pointers)
 
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...
 
template<typename ValueType >
static constexpr bool is_eigen_refable_helper (decltype(std::declval< Eigen::Ref< ValueType >>(), int()))
 
template<typename ValueType >
static constexpr bool is_eigen_refable_helper (char)
 
template<typename ValueType >
static constexpr bool is_eigen_refable ()
 

Typedef Documentation

◆ SystemId

using SystemId = maliput::drake::Identifier<class SystemIdTag>

Enumeration Type Documentation

◆ BuiltInTicketNumbers

Enumerator
kNothingTicket 
kTimeTicket 
kAccuracyTicket 
kQTicket 
kVTicket 
kZTicket 
kXcTicket 
kXdTicket 
kXaTicket 
kXTicket 
kPnTicket 
kPaTicket 
kAllParametersTicket 
kAllSourcesExceptInputPortsTicket 
kAllInputPortsTicket 
kAllSourcesTicket 
kConfigurationTicket 
kKinematicsTicket 
kLastSourceTicket 
kXcdotTicket 
kPeTicket 
kKeTicket 
kPcTicket 
kPncTicket 
kNextAvailableTicket 

Function Documentation

◆ CheckBasicVectorInvariants()

void maliput::drake::systems::internal::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 MALIPUT_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
std::exceptionif invariants are violated or basic_vector is nullptr

◆ CheckVectorValueInvariants()

void maliput::drake::systems::internal::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 MALIPUT_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
Tthe supposed element type of the Value<BasicVector<T>> that has been erased into an AbstractValue
Exceptions
std::exceptionif invariants are violated or abstract_value is nullptr

◆ ExtractDoublesOrThrow() [1/2]

std::vector<MatrixX<double> > maliput::drake::systems::internal::ExtractDoublesOrThrow ( const std::vector< MatrixX< S >> &  input_vector)

Converts an STL vector of matrices with scalar type S elements to an STL vector of matrices with double type elements, failing at runtime if the type cannot be converted.

See also
ExtractDoublesOrThrow(const MatrixX<T>&)
Template Parameters
SA valid Eigen scalar type.

◆ ExtractDoublesOrThrow() [2/2]

std::vector<double> maliput::drake::systems::internal::ExtractDoublesOrThrow ( const std::vector< S > &  input_vector)

Converts an STL vector of scalar type S elements to an STL vector of double type elements, failing at runtime if the type cannot be converted.

See also
ExtractDoubleOrThrow(const T&)
Template Parameters
SA valid Eigen scalar type.

◆ is_eigen_refable()

static constexpr bool maliput::drake::systems::internal::is_eigen_refable ( )
staticconstexpr

◆ is_eigen_refable_helper() [1/2]

static constexpr bool maliput::drake::systems::internal::is_eigen_refable_helper ( char  )
staticconstexpr

◆ is_eigen_refable_helper() [2/2]

static constexpr bool maliput::drake::systems::internal::is_eigen_refable_helper ( decltype(std::declval< Eigen::Ref< ValueType >>(), int())  )
staticconstexpr

◆ IsNonNull()

bool maliput::drake::systems::internal::IsNonNull ( const std::vector< PtrType > &  pointers)

◆ Unpack()

std::vector<U*> maliput::drake::systems::internal::Unpack ( const std::vector< std::unique_ptr< U >> &  in)