Description

Base class for a Chrono output database.

#include <ChOutput.h>

Inheritance diagram for chrono::ChOutput:

Public Types

enum  Format { Format::ASCII, Format::HDF5, Format::NONE }
 Output database type. More...
 
enum  Mode { Mode::FRAMES, Mode::SERIES }
 Output mode options. More...
 

Public Member Functions

void Write (int frame, double time, const ChAssembly::Components &components)
 
void Write (int frame, double time, const std::vector< const ChAssembly::Components * > &components)
 

Static Public Member Functions

static std::string GetFormatAsString (Format type)
 
static std::string GetModeAsString (Mode mode)
 

Protected Member Functions

 ChOutput (Mode mode)
 
virtual void WriteTimeStamp (int frame, double time)=0
 
virtual void WriteBodies (const std::vector< std::shared_ptr< ChBody >> &bodies)=0
 
virtual void WriteMarkers (const std::vector< std::shared_ptr< ChMarker >> &markers)=0
 
virtual void WriteShafts (const std::vector< std::shared_ptr< ChShaft >> &shafts)=0
 
virtual void WriteJoints (const std::vector< std::shared_ptr< ChLink >> &joints)=0
 
virtual void WriteCouples (const std::vector< std::shared_ptr< ChShaftsCouple >> &couples)=0
 
virtual void WriteLinSprings (const std::vector< std::shared_ptr< ChLinkTSDA >> &springs)=0
 
virtual void WriteRotSprings (const std::vector< std::shared_ptr< ChLinkRSDA >> &springs)=0
 
virtual void WriteBodyBodyLoads (const std::vector< std::shared_ptr< ChLoadBodyBody >> &loads)=0
 
virtual void WriteLinMotors (const std::vector< std::shared_ptr< ChLinkMotorLinear >> &motors)=0
 
virtual void WriteRotMotors (const std::vector< std::shared_ptr< ChLinkMotorRotation >> &motors)=0
 

Protected Attributes

Mode m_mode
 output mode
 
bool m_buf_allocated
 buffers allocated?
 
std::vector< double > m_time
 time series
 
std::vector< BodyBuffers > m_body_buf
 body buffers
 
std::vector< ShaftBuffers > m_shaft_buf
 shaft buffers
 
std::vector< JointBuffers > m_joint_buf
 joint buffers
 
std::vector< TSDABuffers > m_tsda_buf
 TSDA buffers.
 
std::vector< RSDABuffers > m_rsda_buf
 RSDA buffers.
 

Member Enumeration Documentation

◆ Format

Output database type.

Currently supported options are ASCII and HDF5.

Enumerator
ASCII 

ASCII text.

HDF5 

HDF-5.

NONE 

no output

◆ Mode

Output mode options.

  • FRAMES: output is organized in groups for each separate frame; suitable for postprocessing (e.g., rendering).
  • SERIES: output is organized by model components, each of them containing time-series for their various output quantities; suitable for plotting results.
Enumerator
FRAMES 

organize output on a frame-by-frame basis

SERIES 

organize output on component-by-component basis


The documentation for this class was generated from the following files:
  • /builds/uwsbel/chrono/src/chrono/input_output/ChOutput.h
  • /builds/uwsbel/chrono/src/chrono/input_output/ChOutput.cpp