Icarus
Vehicle Simulation as a Transformable Computational Graph, built on Vulcan and Janus
Loading...
Searching...
No Matches
icarus::io Namespace Reference

Classes

struct  ScalarFormatter
 Format a scalar value to string. More...
struct  ScalarFormatter< double >
 Specialization for double (numeric mode). More...
struct  ScalarFormatter< SymbolicScalar >
 Specialization for SymbolicScalar (symbolic mode). More...
class  SimulationLoader
 Loads complete simulation configuration from YAML. More...

Functions

template<typename Scalar>
std::string FormatScalar (const Scalar &value, int precision=6)
 Format a scalar value (auto-dispatch).
template<typename Scalar>
std::string FormatScalarFixed (const Scalar &value, int precision=6)
 Format a scalar with fixed notation.
template<typename Scalar>
std::string FormatScalarScientific (const Scalar &value, int precision=6)
 Format a scalar with scientific notation.
template<typename Scalar>
constexpr bool IsNumericScalar ()
 Check if a scalar type is numeric.
template<typename Scalar>
bool CanEvaluateToDouble (const Scalar &value)
 Check if a value can be safely converted to double.
template<typename Scalar>
double EvaluateToDouble (const Scalar &value, double default_val=0.0)
 Safely get double value if possible.

Function Documentation

◆ CanEvaluateToDouble()

template<typename Scalar>
bool icarus::io::CanEvaluateToDouble ( const Scalar & value)

Check if a value can be safely converted to double.

◆ EvaluateToDouble()

template<typename Scalar>
double icarus::io::EvaluateToDouble ( const Scalar & value,
double default_val = 0.0 )

Safely get double value if possible.

◆ FormatScalar()

template<typename Scalar>
std::string icarus::io::FormatScalar ( const Scalar & value,
int precision = 6 )
inline

Format a scalar value (auto-dispatch).

◆ FormatScalarFixed()

template<typename Scalar>
std::string icarus::io::FormatScalarFixed ( const Scalar & value,
int precision = 6 )
inline

Format a scalar with fixed notation.

◆ FormatScalarScientific()

template<typename Scalar>
std::string icarus::io::FormatScalarScientific ( const Scalar & value,
int precision = 6 )
inline

Format a scalar with scientific notation.

◆ IsNumericScalar()

template<typename Scalar>
bool icarus::io::IsNumericScalar ( )
constexpr

Check if a scalar type is numeric.