5 #ifdef GYOTO_USE_XERCES 25 #ifndef __GyotoFactoryMessenger_H_ 26 #define __GyotoFactoryMessenger_H_ 33 #ifndef XERCES_INCLUDE_WCHAR_H 34 #define XERCES_INCLUDE_WCHAR_H 0 36 #include <xercesc/dom/DOMElement.hpp> 44 class FactoryMessenger;
45 namespace Metric {
class Generic; }
46 namespace Astrobj {
class Generic; }
47 namespace Spectrum {
class Generic ; }
170 std::string* content,
171 std::string* unit=NULL);
250 std::string
fullPath(std::string relpath) ;
337 void setParameter(std::string name,
unsigned int value);
347 void setParameter(std::string name,
unsigned long value);
392 void setParameter(std::string name,
double val[],
size_t n,
396 void setParameter(std::string name, std::vector<double>
const &val,
398 void setParameter(std::string name, std::vector<unsigned long>
const &val,
473 static size_t parseArray(std::string src,
double dst[],
size_t max_tokens);
481 static std::vector<double>
parseArray(std::string src);
void reset()
Get back to first parameter.
int getNextParameter(std::string *name, std::string *content, std::string *unit=NULL)
Get name and value of next parameter.
SmartPointer< Astrobj::Generic > astrobj()
Build and get the Astrobj described in this XML file.
std::string fullPath(std::string relpath)
Transform path into full path specification.
xercesc::DOMElement * element_
The XML element concerned by this transaction.
Definition: GyotoFactoryMessenger.h:96
std::string getAttribute(std::string attrname) const
Get attribute of a last retrieved parameter.
Reference-counting pointers.
XMLSize_t nodeCount_
The number of children of the XML element concerned by this transaction.
Definition: GyotoFactoryMessenger.h:100
Factory / SmartPointee::Subcontractor_t interface.
Definition: GyotoFactoryMessenger.h:92
SmartPointer< Screen > screen()
Build and get the Screen described in this XML file.
void setSelfAttribute(std::string attrname, std::string value)
Set attribute in FactoryMessenger::element_.
xercesc::DOMNodeList * children_
The children of the XML element concerned by this transaction.
Definition: GyotoFactoryMessenger.h:98
Gyoto ubiquitous macros and typedefs.
static size_t parseArray(std::string src, double dst[], size_t max_tokens)
Parse string into array.
FactoryMessenger * getChild() const
Get another FactoryMessenger instance initialized to current child.
Namespace for the Gyoto library.
Definition: GyotoAstrobj.h:43
SmartPointer< Photon > photon()
Build and get the Photon described in this XML file.
Pointers performing reference counting.
Definition: GyotoProperty.h:45
void setParameter(std::string name)
Output parameter.
SmartPointer< Metric::Generic > metric()
Build and get the Metric described in this XML file.
XMLSize_t curNodeIndex_
Current child.
Definition: GyotoFactoryMessenger.h:102
std::string getSelfAttribute(std::string attrname) const
Get attribute of FactoryMessenger::element_.
XML input/output.
Definition: GyotoFactory.h:114
FactoryMessenger(Gyoto::Factory *, xercesc::DOMElement *)
Constructor called before subcontracting.
static std::vector< unsigned long > parseArrayULong(std::string src)
Parse string into array.
Gyoto::Factory * employer_
The Factory that sent this messenger.
Definition: GyotoFactoryMessenger.h:94
void setFullContent(std::string value)
Low level, prefer setParameter()
std::string getFullContent() const
Get full content of element_.
FactoryMessenger * makeChild(std::string name)
Create child FactoryMessenger.