WarpTwin
Documentation for WarpTwin models and classes.
Loading...
Searching...
No Matches
warptwin::Hdf5Logger Class Reference

Class for logging to HDF5. More...

#include <Hdf5Logger.h>

Inherits clockwerk::SimLogger.

Public Member Functions

 Hdf5Logger (warpos::FlightExecutive &exec, const std::string &filename="output.h5", unsigned int buffer_size=1000)
 Constructor for CSV logger – wraps around logger constructor.
virtual ~Hdf5Logger ()
int close ()
 Function to close down the file – logs remaining buffered data and closes.
log_level_e logLevel ()
 Get the log level set for the executive.
void logLevel (log_level_e log_level)
 Set the executive log level.
const HighFive::File * h5File ()
 Get handle to HDF5 file in Hdf5 logger.

Protected Member Functions

int _createSetupFile ()
 Function to create an HDF5 file for logging.
int _writeToFile ()
 Function to write buffered data to HDF5 file.

Protected Attributes

warpos::FlightExecutiveexc
 Handle to executive for logging.
HighFive::File * _file
 High Five variables for writing HDF5 to file.
HighFive::DataSpace * _dataspace
HighFive::DataSetCreateProps _props
std::vector< HighFive::DataSet > _datasets
unsigned long long _l_start_idx
 Index to track where we're writing to our dataset.
unsigned long long _l_end_idx
log_level_e _local_log_level = log_level_e::LOG_WARNING
 The log level for this particular app.

Detailed Description

Class for logging to HDF5.

The CSV logger is a class that inherits from the base logger class and manually configures it to write to CSV.

Constructor & Destructor Documentation

◆ Hdf5Logger()

warptwin::Hdf5Logger::Hdf5Logger ( warpos::FlightExecutive & exec,
const std::string & filename = "output.h5",
unsigned int buffer_size = 1000 )

Constructor for CSV logger – wraps around logger constructor.

◆ ~Hdf5Logger()

warptwin::Hdf5Logger::~Hdf5Logger ( )
virtual

Member Function Documentation

◆ _createSetupFile()

int warptwin::Hdf5Logger::_createSetupFile ( )
protected

Function to create an HDF5 file for logging.

◆ _writeToFile()

int warptwin::Hdf5Logger::_writeToFile ( )
protected

Function to write buffered data to HDF5 file.

◆ close()

int warptwin::Hdf5Logger::close ( )

Function to close down the file – logs remaining buffered data and closes.

◆ h5File()

const HighFive::File * warptwin::Hdf5Logger::h5File ( )
inline

Get handle to HDF5 file in Hdf5 logger.

Returns
Pointer to HDF5 file

◆ logLevel() [1/2]

log_level_e warptwin::Hdf5Logger::logLevel ( )
inline

Get the log level set for the executive.

Returns
Log level for the executive

◆ logLevel() [2/2]

void warptwin::Hdf5Logger::logLevel ( log_level_e log_level)
inline

Set the executive log level.

Parameters
log_levelThe level to set logging to

Member Data Documentation

◆ _datasets

std::vector<HighFive::DataSet> warptwin::Hdf5Logger::_datasets
protected

◆ _dataspace

HighFive::DataSpace* warptwin::Hdf5Logger::_dataspace
protected

◆ _file

HighFive::File* warptwin::Hdf5Logger::_file
protected

High Five variables for writing HDF5 to file.

◆ _l_end_idx

unsigned long long warptwin::Hdf5Logger::_l_end_idx
protected

◆ _l_start_idx

unsigned long long warptwin::Hdf5Logger::_l_start_idx
protected

Index to track where we're writing to our dataset.

◆ _local_log_level

log_level_e warptwin::Hdf5Logger::_local_log_level = log_level_e::LOG_WARNING
protected

The log level for this particular app.

◆ _props

HighFive::DataSetCreateProps warptwin::Hdf5Logger::_props
protected

◆ exc

warpos::FlightExecutive& warptwin::Hdf5Logger::exc
protected

Handle to executive for logging.


The documentation for this class was generated from the following files:
  • /Users/mickey/Documents/Projects/warptwin/cpp/src/logging/Hdf5Logger.h
  • /Users/mickey/Documents/Projects/warptwin/cpp/src/logging/Hdf5Logger.cpp