XMLScenarioParser Class Reference

This class provides different methods to parse and save scenario data in XML-Files. More...

#include <ArmarXCore/util/ScenarioManagerCommon/parser/XMLScenarioParser.h>

Static Public Member Functions

static ScenarioManager::Data_Structure::ScenarioPtr createNewScenario (const std::string &name, ScenarioManager::Data_Structure::PackagePtr package)
 Creates a new scenario with the given name within the given package.
 
static std::string getPackageNameFromScx (const std::string &path)
 
static ScenarioManager::Data_Structure::PackagePtr getScenarioPackage (const ScenarioManager::Data_Structure::ScenarioPtr &scenario, const ScenarioManager::Data_Structure::PackageVectorPtr &packages)
 parseScenarioByFile parses an scenario file and returns the curresponding ScenarioPtr.
 
static std::vector< std::string > getScenariosFromFolder (const std::string &folder)
 Finds all .xml scenario files in a folder and returns a list of paths to them.
 
static bool isScenarioexistent (const std::string &name, ScenarioManager::Data_Structure::PackagePtr package, const std::string &subPath="")
 isScenarioexistent
 
static ScenarioManager::Data_Structure::ScenarioPtr parseScenario (Data_Structure::PackagePtr package, std::string name, std::string subfolder="")
 Parses a .xml scenario file and creates a Scenario object out of it.
 
static ScenarioManager::Data_Structure::ScenarioPtr parseScenario (ScenarioManager::Data_Structure::ScenarioPtr scenario)
 
static void saveScenario (const Data_Structure::ScenarioWPtr &scenario, bool saveApplications)
 Saves a Scenario by recreating its .xml file based on its data.
 

Detailed Description

This class provides different methods to parse and save scenario data in XML-Files.

To save Scenario data between sessions, scenarios should be saved in XML-Files using the following format:

<scenario name="name" lastChange="YYYY-MM-DD.hh:mm:ss" creation="YYYY-MM-DD.hh:mm:ss"> ... </application> ... </scenario>

This class only parses XML-Files of the specified format.

Member Function Documentation

◆ createNewScenario()

ScenarioPtr createNewScenario ( const std::string & name,
ScenarioManager::Data_Structure::PackagePtr package )
static

Creates a new scenario with the given name within the given package.

Parameters
namename of the new scenario
packagepackage the new scenario is created in
Returns
new Scenario

◆ getPackageNameFromScx()

std::string getPackageNameFromScx ( const std::string & path)
static

◆ getScenarioPackage()

PackagePtr getScenarioPackage ( const ScenarioManager::Data_Structure::ScenarioPtr & scenario,
const ScenarioManager::Data_Structure::PackageVectorPtr & packages )
static

parseScenarioByFile parses an scenario file and returns the curresponding ScenarioPtr.

(Used for CLI, it is possible to create an scenario without an package pointer. Warning Scenario without PackagePtr need to have an dependencie.config of the package in the CacheFolder)

Parameters
pathpath to scx file
package(optional else nullptr)
Returns
Finds the package that contains the given scenario.
Parameters
scenarioScenario whose package is to be searched
packageslist of packages which are searched for the scenario
Returns
the Package which contains the Scenario

◆ getScenariosFromFolder()

std::vector< std::string > getScenariosFromFolder ( const std::string & folder)
static

Finds all .xml scenario files in a folder and returns a list of paths to them.

Parameters
folderpath to the folder
Returns
list of paths of the scenario files

◆ isScenarioexistent()

bool isScenarioexistent ( const std::string & name,
ScenarioManager::Data_Structure::PackagePtr package,
const std::string & subPath = "" )
static

isScenarioexistent

Parameters
namename of the scenario
packagepackage the scenario is located in
Returns
returns true if the scenario exists in the file system else it returns false

◆ parseScenario() [1/2]

ScenarioPtr parseScenario ( Data_Structure::PackagePtr package,
std::string name,
std::string subfolder = "" )
static

Parses a .xml scenario file and creates a Scenario object out of it.

Parameters
pathto the scenario file
Returns
a new Scenario object containing the data parsed out of the file

◆ parseScenario() [2/2]

◆ saveScenario()

void saveScenario ( const Data_Structure::ScenarioWPtr & scenario,
bool saveApplications )
static

Saves a Scenario by recreating its .xml file based on its data.

Parameters
scenarioScenario which is to be saved

The documentation for this class was generated from the following files: