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>
43 class FactoryMessenger;
44 namespace Metric {
class Generic; }
45 namespace Astrobj {
class Generic; }
46 namespace Spectrum {
class Generic ; }
169 std::string* content,
170 std::string* unit=NULL);
249 std::string
fullPath(std::string relpath) ;
336 void setParameter(std::string name,
unsigned int value);
346 void setParameter(std::string name,
unsigned long value);
391 void setParameter(std::string name,
double val[],
size_t n,
std::string getAttribute(std::string attrname) const
Get attribute of a last retrieved parameter.
void reset()
Get back to first parameter.
SmartPointer< Astrobj::Generic > getAstrobj()
Build and get the Astrobj described in this XML file.
int getNextParameter(std::string *name, std::string *content, std::string *unit=NULL)
Get name and value of next parameter.
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:95
Reference-counting pointers.
XMLSize_t nodeCount_
The number of children of the XML element concerned by this transaction.
Definition: GyotoFactoryMessenger.h:99
SmartPointer< Metric::Generic > getMetric()
Build and get the Metric described in this XML file.
Factory / SmartPointee::Subcontractor_t interface.
Definition: GyotoFactoryMessenger.h:91
void setAstrobj(SmartPointer< Astrobj::Generic >)
Set the Astrobj.
void setSelfAttribute(std::string attrname, std::string value)
Set attribute in FactoryMessenger::element_.
std::string getSelfAttribute(std::string attrname) const
Get attribute of FactoryMessenger::element_.
xercesc::DOMNodeList * children_
The children of the XML element concerned by this transaction.
Definition: GyotoFactoryMessenger.h:97
Gyoto ubiquitous macros and typedefs.
SmartPointer< Photon > getPhoton()
Build and get the Photon described in this XML file.
void setScreen(SmartPointer< Screen >)
Set the Screen.
FactoryMessenger * getChild() const
Get another FactoryMessenger instance initialized to current child.
void setMetric(SmartPointer< Metric::Generic >)
Set the Metric.
void setParameter(std::string name)
Output parameter.
SmartPointer< Screen > getScreen()
Build and get the Screen described in this XML file.
XMLSize_t curNodeIndex_
Current child.
Definition: GyotoFactoryMessenger.h:101
XML input/output.
Definition: GyotoFactory.h:112
FactoryMessenger(Gyoto::Factory *, xercesc::DOMElement *)
Constructor called before subcontracting.
Gyoto::Factory * employer_
The Factory that sent this messenger.
Definition: GyotoFactoryMessenger.h:93
void setFullContent(std::string value)
Low level, prefer setParameter()
FactoryMessenger * makeChild(std::string name)
Create child FactoryMessenger.
std::string getFullContent() const
Get full content of element_.