nidas v1.2.3
Public Member Functions | Private Attributes | List of all members
nidas::core::ProjectConfigs Class Reference

#include <ProjectConfigs.h>

Public Member Functions

 ProjectConfigs ()
 
 ~ProjectConfigs ()
 
const ProjectConfiggetConfig (const nidas::util::UTime &begin) const
 
const ProjectConfiggetConfig (const std::string &name) const
 
const std::list< const ProjectConfig * > & getConfigs () const
 
void addConfigByTime (ProjectConfig *val)
 Add a project configuration, inserting it in the list, which should be sorted by time.
 
void addConfigByName (ProjectConfig *val) throw ()
 Add a project configuration, replacing an existing configuration if the name matches, otherwise appending the configuration on the list.
 
void removeConfig (const ProjectConfig *val)
 
void parseXML (const std::string &xmlFileName)
 
void writeXML (const std::string &xmlFileName)
 
void fromDOMElement (const xercesc::DOMElement *)
 
xercesc::DOMElement * toDOMParent (xercesc::DOMElement *parent) const
 
xercesc::DOMElement * toDOMElement (xercesc::DOMElement *node) const
 

Private Attributes

std::string _xmlName
 
std::list< const ProjectConfig * > _constConfigs
 
std::list< ProjectConfig * > _configs
 

Constructor & Destructor Documentation

◆ ProjectConfigs()

ProjectConfigs::ProjectConfigs ( )

◆ ~ProjectConfigs()

ProjectConfigs::~ProjectConfigs ( )

Member Function Documentation

◆ addConfigByName()

void ProjectConfigs::addConfigByName ( ProjectConfig * val)
throw ( )

Add a project configuration, replacing an existing configuration if the name matches, otherwise appending the configuration on the list.

References nidas::core::ProjectConfig::getName(), and nidas::core::getSample().

Referenced by fromDOMElement().

◆ addConfigByTime()

void ProjectConfigs::addConfigByTime ( ProjectConfig * val)

Add a project configuration, inserting it in the list, which should be sorted by time.

If the beginning time is equal to the beginning time of an existing project configuration, and the end time is prior to or equal to the beginning time of the next configuration, the existing configuration is replaced. Exceptions are thrown if project configuration times are overlapping.

Exceptions
nidas::util::InvalidParameterException

References _configs, _constConfigs, nidas::core::ProjectConfig::getBeginTime(), and nidas::core::getSample().

Referenced by ProjConfigIO::addConfigByTime(), and ProjConfigIO::termConfig().

◆ fromDOMElement()

void ProjectConfigs::fromDOMElement ( const xercesc::DOMElement * node)

◆ getConfig() [1/2]

const ProjectConfig * ProjectConfigs::getConfig ( const nidas::util::UTime & begin) const

◆ getConfig() [2/2]

const ProjectConfig * ProjectConfigs::getConfig ( const std::string & name) const

◆ getConfigs()

const std::list< const ProjectConfig * > & ProjectConfigs::getConfigs ( ) const

◆ parseXML()

void ProjectConfigs::parseXML ( const std::string & xmlFileName)

◆ removeConfig()

void ProjectConfigs::removeConfig ( const ProjectConfig * val)

◆ toDOMElement()

xercesc::DOMElement * ProjectConfigs::toDOMElement ( xercesc::DOMElement * node) const
Exceptions
xercesc::DOMException

References getConfigs(), nidas::core::getSample(), and nidas::core::ProjectConfig::toDOMParent().

Referenced by toDOMParent(), and writeXML().

◆ toDOMParent()

xercesc::DOMElement * ProjectConfigs::toDOMParent ( xercesc::DOMElement * parent) const
Exceptions
xercesc::DOMException

References nidas::core::DOMable::getNamespaceURI(), and toDOMElement().

◆ writeXML()

void ProjectConfigs::writeXML ( const std::string & xmlFileName)

Member Data Documentation

◆ _configs

std::list<ProjectConfig*> nidas::core::ProjectConfigs::_configs
private

◆ _constConfigs

std::list<const ProjectConfig*> nidas::core::ProjectConfigs::_constConfigs
private

◆ _xmlName

std::string nidas::core::ProjectConfigs::_xmlName
private

Referenced by getConfig(), getConfig(), and parseXML().


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