Class XMLStateWriter

Inheritance Relationships

Base Type

Class Documentation

class XMLStateWriter : public flamegpu::io::StateWriter

XML format StateWriter

Public Functions

XMLStateWriter(const std::string &model_name, const std::shared_ptr<EnvironmentManager> &env_manager, const util::StringPairUnorderedMap<std::shared_ptr<AgentVector>> &model_state, const unsigned int &iterations, const std::string &output_file, const Simulation *sim_instance)

Returns a writer capable of writing model state to an XML file Agent data will be read from ‘model_state’

Parameters
  • model_name – Name from the model description hierarchy of the model to be exported

  • env_manager – Environment manager containing env property data for this sim instance

  • model_state – Map of AgentVector to read the agent data from per agent, key should be agent name

  • iterations – The value from the step counter at the time of export.

  • output_file – Filename of the input file (This will be used to determine which reader to return)

  • sim_instance – Instance of the Simulation object (This is used for setting/getting config)

virtual int writeStates(bool prettyPrint) override

Actually perform the writing to file

Parameters

prettyPrint – Whether to include indentation and line breaks to aide human reading

Throws

exception::TinyXMLError – If export of the model state fails

Returns

Always tinyxml2::XML_SUCCESS