Classes | |
class | sdf::SDF_VERSION_NAMESPACE::AssertionInternalError |
Class for generating Exceptions which come from sdf assertions. They include information about the assertion expression violated, function where problem appeared and assertion debug message. More... | |
class | sdf::SDF_VERSION_NAMESPACE::Console |
Message, error, warning, and logging functionality. More... | |
class | sdf::SDF_VERSION_NAMESPACE::ConsolePrivate |
class | sdf::SDF_VERSION_NAMESPACE::Console::ConsoleStream |
An ostream-like class that we'll use for logging. More... | |
class | sdf::SDF_VERSION_NAMESPACE::Element |
SDF Element class. More... | |
class | sdf::SDF_VERSION_NAMESPACE::ElementPrivate |
class | sdf::SDF_VERSION_NAMESPACE::Exception |
Class for generating exceptions. More... | |
class | sdf::SDF_VERSION_NAMESPACE::InternalError |
Class for generating Internal Gazebo Errors: those errors which should never happend and represent programming bugs. More... | |
class | sdf::SDF_VERSION_NAMESPACE::SDF |
Base SDF class. More... | |
Macros | |
#define | sdfdbg (sdf::Console::Instance()->Log("Dbg", __FILE__, __LINE__)) |
Output a debug message. More... | |
#define | sdferr |
Output an error message. More... | |
#define | sdfmsg |
Output a message. More... | |
#define | sdfthrow(msg) |
This macro logs an error to the throw stream and throws an exception that contains the file name and line number. More... | |
#define | sdfwarn |
Output a warning message. More... | |
Typedefs | |
typedef std::shared_ptr< Console > | sdf::SDF_VERSION_NAMESPACE::ConsolePtr |
Functions | |
sdf::SDF_VERSION_NAMESPACE::ConsolePrivate::ConsolePrivate () | |
Constructor. More... | |
sdf::SDF_VERSION_NAMESPACE::Console::ConsoleStream::ConsoleStream (std::ostream *_stream) | |
Constructor. More... | |
virtual | sdf::SDF_VERSION_NAMESPACE::Console::~Console () |
Destructor. More... | |
GZ_SDFORMAT_VISIBLE void | sdf::SDF_VERSION_NAMESPACE::addURIPath (const std::string &_uri, const std::string &_path) |
Associate paths to a URI. More... | |
static void | sdf::SDF_VERSION_NAMESPACE::Console::Clear () |
Clear out the current console to make room for a new one. More... | |
ConsoleStream & | sdf::SDF_VERSION_NAMESPACE::Console::ColorMsg (const std::string &lbl, const std::string &file, unsigned int line, int color) |
Use this to output a colored message to the terminal. More... | |
GZ_SDFORMAT_VISIBLE std::string | sdf::SDF_VERSION_NAMESPACE::findFile (const std::string &_filename, bool _searchLocalPath, bool _useCallback, const ParserConfig &_config) |
Find the absolute path of a file. More... | |
GZ_SDFORMAT_VISIBLE std::string | sdf::SDF_VERSION_NAMESPACE::findFile (const std::string &_filename, bool _searchLocalPath=true, bool _useCallback=false) |
Find the absolute path of a file. More... | |
GZ_SDFORMAT_VISIBLE std::string | sdf::SDF_VERSION_NAMESPACE::findFile (sdf::Errors &_errors, const std::string &_filename, bool _searchLocalPath, bool _useCallback, const ParserConfig &_config) |
Find the absolute path of a file. More... | |
GZ_SDFORMAT_VISIBLE std::string | sdf::SDF_VERSION_NAMESPACE::findFile (sdf::Errors &_errors, const std::string &_filename, bool _searchLocalPath=true, bool _useCallback=false) |
Find the absolute path of a file. More... | |
template<typename T > | |
std::pair< T, bool > | sdf::SDF_VERSION_NAMESPACE::Element::Get (const std::string &_key, const T &_defaultValue) const |
Get the value of a key. More... | |
template<typename T > | |
bool | sdf::SDF_VERSION_NAMESPACE::Element::Get (const std::string &_key, T &_param, const T &_defaultValue) const |
Get the value of a key. More... | |
template<typename T > | |
T | sdf::SDF_VERSION_NAMESPACE::Element::Get (const std::string &_key="") const |
Get the value of a key. More... | |
template<typename T > | |
std::pair< T, bool > | sdf::SDF_VERSION_NAMESPACE::Element::Get (sdf::Errors &_errors, const std::string &_key, const T &_defaultValue) const |
Get the value of a key. More... | |
template<typename T > | |
bool | sdf::SDF_VERSION_NAMESPACE::Element::Get (sdf::Errors &_errors, const std::string &_key, T &_param, const T &_defaultValue) const |
Get the value of a key. More... | |
template<typename T > | |
T | sdf::SDF_VERSION_NAMESPACE::Element::Get (sdf::Errors &_errors, const std::string &_key="") const |
Get the value of a key. More... | |
ConsoleStream & | sdf::SDF_VERSION_NAMESPACE::Console::GetLogStream () |
Get the current log stream object. More... | |
ConsoleStream & | sdf::SDF_VERSION_NAMESPACE::Console::GetMsgStream () |
Get the current message stream object. More... | |
std::ostream * | sdf::SDF_VERSION_NAMESPACE::Console::ConsoleStream::GetStream () |
Get the current stream object. More... | |
static ConsolePtr | sdf::SDF_VERSION_NAMESPACE::Console::Instance () |
Return an instance to this class. More... | |
ConsoleStream & | sdf::SDF_VERSION_NAMESPACE::Console::Log (const std::string &lbl, const std::string &file, unsigned int line) |
Use this to output a message to a log file at $HOME/.sdformat/sdformat.log . More... | |
template<class T > | |
ConsoleStream & | sdf::SDF_VERSION_NAMESPACE::Console::ConsoleStream::operator<< (const T &_rhs) |
Redirect whatever is passed in to both our ostream (if non-NULL) and the log file (if open). More... | |
void | sdf::SDF_VERSION_NAMESPACE::Console::ConsoleStream::Prefix (const std::string &_lbl, const std::string &_file, unsigned int _line, int _color) |
Print a prefix to both terminal and log file. More... | |
template<typename T > | |
bool | sdf::SDF_VERSION_NAMESPACE::Element::Set (const T &_value) |
Set the value of this element. More... | |
template<typename T > | |
bool | sdf::SDF_VERSION_NAMESPACE::Element::Set (sdf::Errors &_errors, const T &_value) |
Set the value of this element. More... | |
GZ_SDFORMAT_VISIBLE void | sdf::SDF_VERSION_NAMESPACE::setFindCallback (std::function< std::string(const std::string &)> _cb) |
Set the callback to use when SDF can't find a file. More... | |
void | sdf::SDF_VERSION_NAMESPACE::Console::SetQuiet (bool _q) |
Set quiet output. More... | |
void | sdf::SDF_VERSION_NAMESPACE::Console::ConsoleStream::SetStream (std::ostream *_stream) |
Set the stream object. More... | |
Variables | |
std::ofstream | sdf::SDF_VERSION_NAMESPACE::ConsolePrivate::logFileStream |
logfile stream More... | |
Console::ConsoleStream | sdf::SDF_VERSION_NAMESPACE::ConsolePrivate::logStream |
log stream More... | |
Console::ConsoleStream | sdf::SDF_VERSION_NAMESPACE::ConsolePrivate::msgStream |
message stream More... | |
#define sdfdbg (sdf::Console::Instance()->Log("Dbg", __FILE__, __LINE__)) |
Output a debug message.
#define sdferr |
Output an error message.
#define sdfmsg |
Output a message.
#define sdfthrow | ( | msg | ) |
This macro logs an error to the throw stream and throws an exception that contains the file name and line number.
#define sdfwarn |
Output a warning message.
typedef std::shared_ptr<Console> sdf::SDF_VERSION_NAMESPACE::ConsolePtr |
|
inline |
Constructor.
|
inlineexplicit |
Constructor.
[in] | _stream | Pointer to an output stream operator. Can be NULL/nullptr. |
|
virtual |
Destructor.
GZ_SDFORMAT_VISIBLE void sdf::SDF_VERSION_NAMESPACE::addURIPath | ( | const std::string & | _uri, |
const std::string & | _path | ||
) |
Associate paths to a URI.
Example paramters: "model://", "/usr/share/models:~/.gazebo/models"
[in] | _uri | URI that will be mapped to _path |
[in] | _path | Colon separated set of paths. |
|
static |
Clear out the current console to make room for a new one.
ConsoleStream& sdf::SDF_VERSION_NAMESPACE::Console::ColorMsg | ( | const std::string & | lbl, |
const std::string & | file, | ||
unsigned int | line, | ||
int | color | ||
) |
Use this to output a colored message to the terminal.
[in] | _lbl | Text label |
[in] | _file | File containing the error |
[in] | _line | Line containing the error |
[in] | _color | Color to make the label |
GZ_SDFORMAT_VISIBLE std::string sdf::SDF_VERSION_NAMESPACE::findFile | ( | const std::string & | _filename, |
bool | _searchLocalPath, | ||
bool | _useCallback, | ||
const ParserConfig & | _config | ||
) |
Find the absolute path of a file.
This overload uses the URI path map and and the callback function configured in the input ParserConfig object instead of their global counterparts.
[in] | _filename | Name of the file to find. |
[in] | _searchLocalPath | True to search for the file in the current working directory. |
[in] | _useCallback | True to find a file based on a registered callback if the file is not found via the normal mechanism. |
[in] | _config | Custom parser configuration |
GZ_SDFORMAT_VISIBLE std::string sdf::SDF_VERSION_NAMESPACE::findFile | ( | const std::string & | _filename, |
bool | _searchLocalPath = true , |
||
bool | _useCallback = false |
||
) |
Find the absolute path of a file.
The search order in the function is as follows:
SDF_SHARE_PATH
.SDF_SHARE_PATH/sdformat<major version>/<version>/
SDF_PATH
.[in] | _filename | Name of the file to find. |
[in] | _searchLocalPath | True to search for the file in the current working directory. |
[in] | _useCallback | True to find a file based on a registered callback if the file is not found via the normal mechanism. |
GZ_SDFORMAT_VISIBLE std::string sdf::SDF_VERSION_NAMESPACE::findFile | ( | sdf::Errors & | _errors, |
const std::string & | _filename, | ||
bool | _searchLocalPath, | ||
bool | _useCallback, | ||
const ParserConfig & | _config | ||
) |
Find the absolute path of a file.
This overload uses the URI path map and and the callback function configured in the input ParserConfig object instead of their global counterparts.
[out] | _errors | Vector of errors. |
[in] | _filename | Name of the file to find. |
[in] | _searchLocalPath | True to search for the file in the current working directory. |
[in] | _useCallback | True to find a file based on a registered callback if the file is not found via the normal mechanism. |
[in] | _config | Custom parser configuration. |
GZ_SDFORMAT_VISIBLE std::string sdf::SDF_VERSION_NAMESPACE::findFile | ( | sdf::Errors & | _errors, |
const std::string & | _filename, | ||
bool | _searchLocalPath = true , |
||
bool | _useCallback = false |
||
) |
Find the absolute path of a file.
The search order in the function is as follows:
SDF_SHARE_PATH
.SDF_SHARE_PATH/sdformat<major version>/<version>/
SDF_PATH
.[out] | _errors | Vector of errors. |
[in] | _filename | Name of the file to find. |
[in] | _searchLocalPath | True to search for the file in the current working directory. |
[in] | _useCallback | True to find a file based on a registered callback if the file is not found via the normal mechanism. |
std::pair< T, bool > sdf::SDF_VERSION_NAMESPACE::Element::Get | ( | const std::string & | _key, |
const T & | _defaultValue | ||
) | const |
Get the value of a key.
[in] | _key | the name of a child attribute or element. |
[in] | _defaultValue | a default value to use if _key is not found. |
References sdferr, and sdf::SDF_VERSION_NAMESPACE::internal::throwOrPrintError().
bool sdf::SDF_VERSION_NAMESPACE::Element::Get | ( | const std::string & | _key, |
T & | _param, | ||
const T & | _defaultValue | ||
) | const |
Get the value of a key.
[in] | _key | the name of a child attribute or element. |
[out] | _param | the parameter output |
[in] | _defaultValue | a default value to use if _key is not found. |
T sdf::SDF_VERSION_NAMESPACE::Element::Get | ( | const std::string & | _key = "" | ) | const |
Get the value of a key.
This function assumes the _key exists.
[in] | _key | the name of a child attribute or element. |
std::pair< T, bool > sdf::SDF_VERSION_NAMESPACE::Element::Get | ( | sdf::Errors & | _errors, |
const std::string & | _key, | ||
const T & | _defaultValue | ||
) | const |
Get the value of a key.
[out] | _errors | Vector of errors. |
[in] | _key | the name of a child attribute or element. |
[in] | _defaultValue | a default value to use if _key is not found. |
References sdf::SDF_VERSION_NAMESPACE::Element::GetAttribute(), sdf::SDF_VERSION_NAMESPACE::Element::GetElementDescription(), sdf::SDF_VERSION_NAMESPACE::Element::GetElementImpl(), sdf::SDF_VERSION_NAMESPACE::Element::HasElement(), and sdf::SDF_VERSION_NAMESPACE::Element::HasElementDescription().
bool sdf::SDF_VERSION_NAMESPACE::Element::Get | ( | sdf::Errors & | _errors, |
const std::string & | _key, | ||
T & | _param, | ||
const T & | _defaultValue | ||
) | const |
Get the value of a key.
[out] | _errors | Vector of errors. |
[in] | _key | the name of a child attribute or element. |
[out] | _param | the parameter output |
[in] | _defaultValue | a default value to use if _key is not found. |
T sdf::SDF_VERSION_NAMESPACE::Element::Get | ( | sdf::Errors & | _errors, |
const std::string & | _key = "" |
||
) | const |
Get the value of a key.
This function assumes the _key exists.
[out] | _errors | Vector of errors. |
[in] | _key | the name of a child attribute or element. |
ConsoleStream& sdf::SDF_VERSION_NAMESPACE::Console::GetLogStream | ( | ) |
Get the current log stream object.
This can be useful for redirecting the output, for example, to a std::stringstream for testing.
ConsoleStream& sdf::SDF_VERSION_NAMESPACE::Console::GetMsgStream | ( | ) |
Get the current message stream object.
This can be useful for redirecting the output, for example, to a std::stringstream for testing.
std::ostream* sdf::SDF_VERSION_NAMESPACE::Console::ConsoleStream::GetStream | ( | ) |
Get the current stream object.
|
static |
Return an instance to this class.
Referenced by sdf::SDF_VERSION_NAMESPACE::Console::ConsoleStream::operator<<().
ConsoleStream& sdf::SDF_VERSION_NAMESPACE::Console::Log | ( | const std::string & | lbl, |
const std::string & | file, | ||
unsigned int | line | ||
) |
Use this to output a message to a log file at $HOME/.sdformat/sdformat.log
.
To disable this log file, define the following symbol when compiling: SDFORMAT_DISABLE_CONSOLE_LOGFILE
ConsoleStream& sdf::SDF_VERSION_NAMESPACE::Console::ConsoleStream::operator<< | ( | const T & | _rhs | ) |
Redirect whatever is passed in to both our ostream (if non-NULL) and the log file (if open).
[in] | _rhs | Content to be logged. |
void sdf::SDF_VERSION_NAMESPACE::Console::ConsoleStream::Prefix | ( | const std::string & | _lbl, |
const std::string & | _file, | ||
unsigned int | _line, | ||
int | _color | ||
) |
Print a prefix to both terminal and log file.
[in] | _lbl | Text label |
[in] | _file | File containing the error |
[in] | _line | Line containing the error |
[in] | _color | Color to make the label. Used only on terminal. |
bool sdf::SDF_VERSION_NAMESPACE::Element::Set | ( | const T & | _value | ) |
Set the value of this element.
[in] | _value | the value to set. |
References sdferr, and sdf::SDF_VERSION_NAMESPACE::internal::throwOrPrintError().
bool sdf::SDF_VERSION_NAMESPACE::Element::Set | ( | sdf::Errors & | _errors, |
const T & | _value | ||
) |
Set the value of this element.
[out] | _errors | Vector of errors. |
[in] | _value | the value to set. |
GZ_SDFORMAT_VISIBLE void sdf::SDF_VERSION_NAMESPACE::setFindCallback | ( | std::function< std::string(const std::string &)> | _cb | ) |
Set the callback to use when SDF can't find a file.
The callback should return a complete path to the requested file, or and empty string if the file was not found in the callback.
[in] | _cb | The callback function. |
void sdf::SDF_VERSION_NAMESPACE::Console::SetQuiet | ( | bool | _q | ) |
Set quiet output.
[in] | q | True to prevent warning |
void sdf::SDF_VERSION_NAMESPACE::Console::ConsoleStream::SetStream | ( | std::ostream * | _stream | ) |
Set the stream object.
[in] | _stream | Pointer to an output stream. This can be useful for redirecting the output, for example, to a std::stringstream for testing. |
std::ofstream sdf::SDF_VERSION_NAMESPACE::ConsolePrivate::logFileStream |
logfile stream
Console::ConsoleStream sdf::SDF_VERSION_NAMESPACE::ConsolePrivate::logStream |
log stream
Console::ConsoleStream sdf::SDF_VERSION_NAMESPACE::ConsolePrivate::msgStream |
message stream