API  4.5
For C++ developers
Reporter Components


These components allow you to report the quantities calculated by your model in a unified way. More...

Classes

class  OpenSim::AbstractReporter
 This abstract class represents a Reporter that generates a report from values generated by Components in a Model during a simulation. More...
 
class  OpenSim::Reporter< InputT >
 This is an abstract Reporter with a single list Input named "inputs" whose type is templated (InputT). More...
 
class  OpenSim::TableReporter_< InputT, ValueT >
 This concrete Reporter class collects and reports Output<InputT>s within a TimeSeriesTable_. More...
 
class  OpenSim::ConsoleReporter_< T >
 A reporter that simply prints quantities to the console (command window or terminal), perhaps to monitor the progress of a simulation as it executes. More...
 
class  OpenSim::StatesTrajectoryReporter
 Stores the states during a simulation in a StatesTrajectory. More...
 

Commonly used concrete TableReporters

typedef TableReporter_< SimTK::Real > TableReporter
 This table can report doubles, and is the most common reporter that you would want to use. More...
 
typedef TableReporter_< SimTK::Vec3 > TableReporterVec3
 This table can report SimTK::Vec3s, and thus can be used for reporting positions, velocities, accelerations, etc. More...
 
typedef TableReporter_< SimTK::Vector, SimTK::Real > TableReporterVector
 This table can report SimTK::Vectors, and thus can be used for reporting vector control signals, or all the generalized coordinates in one vector. More...
 

Commonly used concrete ConsoleReporters

typedef ConsoleReporter_< SimTK::Real > ConsoleReporter
 This table can report doubles; you can use this reporter to report muscle activation, a coordinate value, etc. More...
 
typedef ConsoleReporter_< SimTK::Vec3 > ConsoleReporterVec3
 This table can report SimTK::Vec3s, and thus can be used for reporting positions, velocities, accelerations, etc. More...
 

Detailed Description


These components allow you to report the quantities calculated by your model in a unified way.

You can wire the outputs of Components into one of these reporters to either save the quantities to a DataTable_ (that you could then print to file) or print the quantities to the console. All Reporters have a single list Input named "inputs".

Typedef Documentation

◆ ConsoleReporter

template<typename T >
typedef ConsoleReporter_<SimTK::Real> ConsoleReporter
related

This table can report doubles; you can use this reporter to report muscle activation, a coordinate value, etc.

◆ ConsoleReporterVec3

template<typename T >
typedef ConsoleReporter_<SimTK::Vec3> ConsoleReporterVec3
related

This table can report SimTK::Vec3s, and thus can be used for reporting positions, velocities, accelerations, etc.

◆ TableReporter

template<class InputT = SimTK::Real, typename ValueT = InputT>
typedef TableReporter_<SimTK::Real> TableReporter
related

This table can report doubles, and is the most common reporter that you would want to use.

You can use this reporter to report muscle activation, a coordinate value, etc.

◆ TableReporterVec3

template<class InputT = SimTK::Real, typename ValueT = InputT>
typedef TableReporter_<SimTK::Vec3> TableReporterVec3
related

This table can report SimTK::Vec3s, and thus can be used for reporting positions, velocities, accelerations, etc.

◆ TableReporterVector

template<class InputT = SimTK::Real, typename ValueT = InputT>
typedef TableReporter_<SimTK::Vector, SimTK::Real> TableReporterVector
related

This table can report SimTK::Vectors, and thus can be used for reporting vector control signals, or all the generalized coordinates in one vector.