Public Member Functions | Protected Types | Protected Member Functions | Protected Attributes | Private Member Functions | Private Attributes

BinnerAxisXML Class Reference

A class XML creation and parsing of XmlElement for BinnerAxis classes. More...

#include <BinnerAxisXML.h>

Inheritance diagram for BinnerAxisXML:
Inheritance graph
[legend]
Collaboration diagram for BinnerAxisXML:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 BinnerAxisXML (XmlController *)
 A default constructor for avoiding creation except by itself or with derived classes.
XmlElementcreateElement (const BinnerAxis &binner)
 Returns a newly created XmlElement with attributes set for binner.
XmlElementcreateElement ()
 Creates a new element node.
virtual BinnerAxiscreateObject (const XmlElement *element)
 Creates an object derived from BinnerAxis.
void fillNodeList (const XmlElement *element, std::list< XmlElement * > &nodelist)
 Fills the nodelist with immediate child nodes of element with nodes that can be handled by this object.
const XmlElementgetNode (const XmlElement *element) const
 Returns the single child node of element of the type that can be handled by this object.
virtual const std::string & tagName () const
 Returns the tag name used by this class.

Protected Types

typedef std::list< XmlElement * > NodeList_t
 The container type for element nodes.

Protected Member Functions

void setId (XmlElement &tag, int id)
 Sets the unique identification of the object.

Protected Attributes

XmlControllerm_controller
 The singleton XML controller object.
const std::string m_id
 The attribute name for the identification of the object.
const std::string m_tagname
 The tag name used for elements created by this class.
const std::string m_type
 The attribute name for the type of object.

Private Member Functions

 BinnerAxisXML (const BinnerAxisXML &)
 A private copy constructor in order to avoid copying.
void setAttributes (XmlElement *tag, const BinnerAxis &binner)
 Sets the attributes of the elment.

Private Attributes

std::string m_high
 The attribute name for the high end of the binner's Range.
std::string m_low
 The attribute name for the low end of the binner's Range.
std::string m_width
 The attribute name for the width parameter of the binner.

Detailed Description

A class XML creation and parsing of XmlElement for BinnerAxis classes.

Author:
Paul F. Kunz <Paul_Kunz@slac.stanford.edu>

Definition at line 28 of file BinnerAxisXML.h.


Member Typedef Documentation

typedef std::list< XmlElement * > NodeList_t [protected, inherited]

The container type for element nodes.

Definition at line 47 of file BaseXML.h.


Constructor & Destructor Documentation

BinnerAxisXML ( const BinnerAxisXML  )  [private]

A private copy constructor in order to avoid copying.

BinnerAxisXML ( XmlController controller  ) 

A default constructor for avoiding creation except by itself or with derived classes.

Definition at line 30 of file BinnerAxisXML.cxx.


Member Function Documentation

XmlElement * createElement ( const BinnerAxis binner  ) 

Returns a newly created XmlElement with attributes set for binner.

Definition at line 40 of file BinnerAxisXML.cxx.

References BaseXML::createElement(), and BinnerAxisXML::setAttributes().

Referenced by BinsBaseXML::createChildren().

XmlElement * createElement (  )  [inherited]
BinnerAxis * createObject ( const XmlElement element  )  [virtual]

Creates an object derived from BinnerAxis.

Uses the information in it to instantiate and return the object.

Definition at line 68 of file BinnerAxisXML.cxx.

References XmlElement::attribute(), Factory< Type >::create(), BinnerAxisFactory::instance(), BinnerAxisXML::m_high, BinnerAxisXML::m_low, BaseXML::m_type, BinnerAxisXML::m_width, BinnerAxis::setBinWidth(), and BinnerAxis::setRange().

Referenced by BinsBaseXML::createObject().

void fillNodeList ( const XmlElement element,
std::list< XmlElement * > &  nodelist 
) [inherited]
const XmlElement * getNode ( const XmlElement element  )  const [inherited]

Returns the single child node of element of the type that can be handled by this object.

If no such node exists, returns a null pointer.

Definition at line 53 of file BaseXML.cxx.

References XmlElement::getNode(), and BaseXML::m_tagname.

Referenced by PointRepXML::createObject(), DataRepXML::createObject(), PlotterBaseXML::getObject(), BinningProjectorXML::getObject(), ViewBaseXML::getObjects(), and BinningProjectorXML::setBins().

void setAttributes ( XmlElement tag,
const BinnerAxis binner 
) [private]
void setId ( XmlElement tag,
int  id 
) [protected, inherited]
const string & tagName (  )  const [virtual, inherited]

Returns the tag name used by this class.

Definition at line 48 of file BaseXML.cxx.

References BaseXML::m_tagname.


Member Data Documentation

XmlController* m_controller [protected, inherited]
std::string m_high [private]

The attribute name for the high end of the binner's Range.

Definition at line 40 of file BinnerAxisXML.h.

Referenced by BinnerAxisXML::createObject(), and BinnerAxisXML::setAttributes().

const std::string m_id [protected, inherited]

The attribute name for the identification of the object.

Definition at line 57 of file BaseXML.h.

Referenced by BaseXML::setId().

std::string m_low [private]

The attribute name for the low end of the binner's Range.

Definition at line 43 of file BinnerAxisXML.h.

Referenced by BinnerAxisXML::createObject(), and BinnerAxisXML::setAttributes().

const std::string m_tagname [protected, inherited]

The tag name used for elements created by this class.

Definition at line 50 of file BaseXML.h.

Referenced by BaseXML::createElement(), BaseXML::fillNodeList(), BaseXML::getNode(), and BaseXML::tagName().

const std::string m_type [protected, inherited]
std::string m_width [private]

The attribute name for the width parameter of the binner.

Definition at line 37 of file BinnerAxisXML.h.

Referenced by BinnerAxisXML::createObject(), and BinnerAxisXML::setAttributes().


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

Generated for HippoDraw Class Library by doxygen