17#ifndef SDFORMAT_TYPES_HH_
18#define SDFORMAT_TYPES_HH_
28#include <gz/utils/NeverDestroyed.hh>
36 inline namespace SDF_VERSION_NAMESPACE {
68 std::vector<std::
string>
split(const std::
string &_str,
69 const std::
string &_splitter);
75 std::
string trim(const
char *_in);
81 std::
string trim(const std::
string &_in);
88 inline
bool equal(const T &_a, const T &_b,
89 const T &_epsilon = 1e-6f)
91 return std::fabs(_a - _b) <= _epsilon;
117 public:
Time(int32_t _sec, int32_t _nsec)
118 : sec(_sec), nsec(_nsec)
129 _out << _time.
sec <<
" " << _time.
nsec;
141 _in.setf(std::ios_base::skipws);
142 _in >> _time.
sec >> _time.
nsec;
149 public:
bool operator ==(
const Time &_time)
const
151 return this->sec == _time.
sec && this->nsec == _time.
nsec;
178 const std::string &_absoluteName);
187 const std::string &_scopeName,
const std::string &_localName);
A Time class, can be used to hold wall- or sim-time.
Definition: Types.hh:107
int32_t sec
Seconds.
Definition: Types.hh:155
friend std::ostream & operator<<(std::ostream &_out, const Time &_time)
Stream insertion operator.
Definition: Types.hh:126
Time(int32_t _sec, int32_t _nsec)
Constructor.
Definition: Types.hh:117
int32_t nsec
Nanoseconds.
Definition: Types.hh:158
friend std::istream & operator>>(std::istream &_in, Time &_time)
Stream extraction operator.
Definition: Types.hh:137
Time()
Constructor.
Definition: Types.hh:109
GZ_SDFORMAT_VISIBLE const std::string & SdfScopeDelimiter()
Initializes the scope delimiter as a function-local static variable so it can be used to initialize k...
bool equal(const T &_a, const T &_b, const T &_epsilon=1e-6f)
check if two values are equal, within a tolerance
Definition: Types.hh:88
GZ_SDFORMAT_VISIBLE std::vector< std::string > split(const std::string &_str, const std::string &_splitter)
Split a string using the delimiter in splitter.
constexpr char kUrdfStringSource[]
The source path replacement if the urdf was parsed from a string, instead of a file.
Definition: Types.hh:61
class GZ_SDFORMAT_VISIBLE GZ_DEPRECATED(13) Inertia
A class for inertial information about a link.
Definition: Types.hh:162
constexpr GZ_DEPRECATED(14) inline const std char kSdfStringSource[]
The source path replacement if it was parsed from a string, instead of a file.
Definition: Types.hh:57
GZ_SDFORMAT_VISIBLE std::string trim(const char *_in)
Trim leading and trailing whitespace from a string.
std::ostream & operator<<(std::ostream &os, ParamStreamer< T > s)
Definition: Param.hh:89
GZ_SDFORMAT_VISIBLE std::pair< std::string, std::string > SplitName(const std::string &_absoluteName)
Split a name into a two strings based on the '::' delimeter.
std::string GZ_SDFORMAT_VISIBLE lowercase(const std::string &_in)
Transforms a string to its lowercase equivalent.
constexpr std::string_view kScopeDelimiter
Definition: Types.hh:48
std::vector< Error > Errors
A vector of Error.
Definition: Types.hh:95
GZ_SDFORMAT_VISIBLE std::string JoinName(const std::string &_scopeName, const std::string &_localName)
Join two strings with the '::' delimiter.
namespace for Simulation Description Format parser
Definition: Actor.hh:35
#define SDFORMAT_VISIBLE
Use to represent "symbol visible" if supported.
Definition: system_util.hh:25