Public Member Functions | List of all members
sdf::v12::Root Class Reference

Root class that acts as an entry point to the SDF document model. More...

#include <Root.hh>

Public Member Functions

 Root ()
 Default constructor. More...
 
const sdf::ActorActor () const
 Get a pointer to the actor object if it exists. More...
 
sdf::ElementPtr Element () const
 Get a pointer to the SDF element that was generated during load. More...
 
const sdf::LightLight () const
 Get a pointer to the light object if it exists. More...
 
Errors Load (const SDFPtr _sdf)
 Parse the given SDF pointer, and generate objects based on types specified in the SDF file. More...
 
Errors Load (const SDFPtr _sdf, const ParserConfig &_config)
 Parse the given SDF pointer, and generate objects based on types specified in the SDF file. More...
 
Errors Load (const std::string &_filename)
 Parse the given SDF file, and generate objects based on types specified in the SDF file. More...
 
Errors Load (const std::string &_filename, const ParserConfig &_config)
 Parse the given SDF file, and generate objects based on types specified in the SDF file. More...
 
Errors LoadSdfString (const std::string &_sdf)
 Parse the given SDF string, and generate objects based on types specified in the SDF file. More...
 
Errors LoadSdfString (const std::string &_sdf, const ParserConfig &_config)
 Parse the given SDF string, and generate objects based on types specified in the SDF file. More...
 
const sdf::ModelModel () const
 Get a pointer to the model object if it exists. More...
 
void SetVersion (const std::string &_version)
 Set the SDF version string. More...
 
std::string Version () const
 Get the SDF version specified in the parsed file or SDF pointer. More...
 
const WorldWorldByIndex (const uint64_t _index) const
 Get a world based on an index. More...
 
uint64_t WorldCount () const
 Get the number of worlds. More...
 
bool WorldNameExists (const std::string &_name) const
 Get whether a world name exists. More...
 

Detailed Description

Root class that acts as an entry point to the SDF document model.

Multiple worlds can exist in a single SDF file. A user of multiple worlds could run parallel instances of simulation, or offer selection of a world at runtime.

Usage

In this example, a root object is loaded from a file specified in the first command line argument to a program.

sdf::Root root;
sdf::Errors errors = root.Load(argv[1]);
if (errors.empty())
{
std::cerr << "Valid SDF file.\n";
return 0;
}
else
{
std::cerr << "Errors encountered: \n";
for (auto const &e : errors)
{
std::cout << e << std::endl;
}
}

Constructor & Destructor Documentation

◆ Root()

sdf::v12::Root::Root ( )

Default constructor.

Member Function Documentation

◆ Actor()

const sdf::Actor* sdf::v12::Root::Actor ( ) const

Get a pointer to the actor object if it exists.

Returns
A pointer to the actor, nullptr if it doesn't exist

◆ Element()

sdf::ElementPtr sdf::v12::Root::Element ( ) const

Get a pointer to the SDF element that was generated during load.

Returns
SDF element pointer. The value will be nullptr if Load has not been called.

◆ Light()

const sdf::Light* sdf::v12::Root::Light ( ) const

Get a pointer to the light object if it exists.

Returns
A pointer to the light, nullptr if it doesn't exist

◆ Load() [1/4]

Errors sdf::v12::Root::Load ( const SDFPtr  _sdf)

Parse the given SDF pointer, and generate objects based on types specified in the SDF file.

Parameters
[in]_sdfSDF pointer to parse.
Returns
Errors, which is a vector of Error objects. Each Error includes an error code and message. An empty vector indicates no error.

◆ Load() [2/4]

Errors sdf::v12::Root::Load ( const SDFPtr  _sdf,
const ParserConfig _config 
)

Parse the given SDF pointer, and generate objects based on types specified in the SDF file.

Parameters
[in]_sdfSDF pointer to parse.
[in]_configCustom parser configuration
Returns
Errors, which is a vector of Error objects. Each Error includes an error code and message. An empty vector indicates no error.

◆ Load() [3/4]

Errors sdf::v12::Root::Load ( const std::string &  _filename)

Parse the given SDF file, and generate objects based on types specified in the SDF file.

Parameters
[in]_filenameName of the SDF file to parse.
Returns
Errors, which is a vector of Error objects. Each Error includes an error code and message. An empty vector indicates no error.

◆ Load() [4/4]

Errors sdf::v12::Root::Load ( const std::string &  _filename,
const ParserConfig _config 
)

Parse the given SDF file, and generate objects based on types specified in the SDF file.

Parameters
[in]_filenameName of the SDF file to parse.
[in]_configCustom parser configuration
Returns
Errors, which is a vector of Error objects. Each Error includes an error code and message. An empty vector indicates no error.

◆ LoadSdfString() [1/2]

Errors sdf::v12::Root::LoadSdfString ( const std::string &  _sdf)

Parse the given SDF string, and generate objects based on types specified in the SDF file.

Parameters
[in]_sdfSDF string to parse.
Returns
Errors, which is a vector of Error objects. Each Error includes an error code and message. An empty vector indicates no error.

◆ LoadSdfString() [2/2]

Errors sdf::v12::Root::LoadSdfString ( const std::string &  _sdf,
const ParserConfig _config 
)

Parse the given SDF string, and generate objects based on types specified in the SDF file.

Parameters
[in]_sdfSDF string to parse.
[in]_configCustom parser configuration
Returns
Errors, which is a vector of Error objects. Each Error includes an error code and message. An empty vector indicates no error.

◆ Model()

const sdf::Model* sdf::v12::Root::Model ( ) const

Get a pointer to the model object if it exists.

Returns
A pointer to the model, nullptr if it doesn't exist

◆ SetVersion()

void sdf::v12::Root::SetVersion ( const std::string &  _version)

Set the SDF version string.

Parameters
[in]_versionThe new SDF version.
See also
std::string Version()

◆ Version()

std::string sdf::v12::Root::Version ( ) const

Get the SDF version specified in the parsed file or SDF pointer.

Returns
SDF version string.
See also
void SetVersion(const std::string &_version)

◆ WorldByIndex()

const World* sdf::v12::Root::WorldByIndex ( const uint64_t  _index) const

Get a world based on an index.

Parameters
[in]_indexIndex of the world. The index should be in the range [0..WorldCount()).
Returns
Pointer to the world. Nullptr if the index does not exist.
See also
uint64_t WorldCount() const

◆ WorldCount()

uint64_t sdf::v12::Root::WorldCount ( ) const

Get the number of worlds.

Returns
Number of worlds contained in this Root object.

◆ WorldNameExists()

bool sdf::v12::Root::WorldNameExists ( const std::string &  _name) const

Get whether a world name exists.

Parameters
[in]_nameName of the world to check.
Returns
True if there exists a world with the given name.

The documentation for this class was generated from the following file:
sdf::v12::Errors
std::vector< Error > Errors
A vector of Error.
Definition: Types.hh:106
sdf::v12::Root
Root class that acts as an entry point to the SDF document model.
Definition: Root.hh:54
sdf::v12::Root::Load
Errors Load(const std::string &_filename)
Parse the given SDF file, and generate objects based on types specified in the SDF file.