Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

ViewBaseXML Class Reference

#include <ViewBaseXML.h>

Inheritance diagram for ViewBaseXML:

Inheritance graph
[legend]
Collaboration diagram for ViewBaseXML:

Collaboration graph
[legend]
List of all members.

Detailed Description

A class XML creation and parsing of XmlElement for ViewBase class.

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

Definition at line 26 of file ViewBaseXML.h.

Public Member Functions

bool areDataSourcesSaved (const ViewBase &view)
 Returns true if all the NTuple objects used by the view have been save to or read from a file.
void connectPlotters (const XmlElement *root)
 Connects the plotters that reference each other.
XmlElementcreateElement ()
 Creates a new element node.
XmlElementcreateElement (const ViewBase &view)
 Returns a newly created XmlElement with attributes set for view.
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 void getObjects (const XmlElement *element)
 Creates an object derived from ViewBase.
virtual const std::stringtagName () const
 Returns the tag name used by this class.
 ViewBaseXML (XmlController *)
 A default constructor for avoiding creation except by itself or with derived classes.

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

void createChild (XmlElement &tag, const ViewBase &view)
 Create the child element, i.e.
 ViewBaseXML (const ViewBaseXML &)
 A private copy constructor in order to avoid copying.

Private Attributes

std::string m_h
 Attribute name for the height.
PlotterBaseXMLm_plotter_xml
 The PlotterBaseXML instance used by this object.
std::string m_w
 Attribute name for the width.
std::string m_x
 Attribute name for the X coordinate.
std::string m_y
 Attribute name for the Y coordinate.


Member Typedef Documentation

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

The container type for element nodes.

Definition at line 45 of file BaseXML.h.


Constructor & Destructor Documentation

ViewBaseXML::ViewBaseXML const ViewBaseXML  )  [private]
 

A private copy constructor in order to avoid copying.

ViewBaseXML::ViewBaseXML XmlController  ) 
 

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

Definition at line 31 of file ViewBaseXML.cxx.

References m_plotter_xml.


Member Function Documentation

bool ViewBaseXML::areDataSourcesSaved const ViewBase view  ) 
 

Returns true if all the NTuple objects used by the view have been save to or read from a file.

Definition at line 41 of file ViewBaseXML.cxx.

References PlotterBaseXML::areDataSourcesSaved(), ViewBase::getPlotter(), and m_plotter_xml.

Referenced by XmlController::areDataSourcesSaved().

void ViewBaseXML::connectPlotters const XmlElement root  ) 
 

Connects the plotters that reference each other.

Definition at line 100 of file ViewBaseXML.cxx.

References BaseXML::fillNodeList(), BaseXML::m_controller, and m_plotter_xml.

void ViewBaseXML::createChild XmlElement tag,
const ViewBase view
[private]
 

Create the child element, i.e.

one of the PlotterBase.

Definition at line 48 of file ViewBaseXML.cxx.

References XmlNode::appendChild(), PlotterBaseXML::createElement(), ViewBase::getPlotter(), and m_plotter_xml.

Referenced by createElement().

XmlElement * BaseXML::createElement  )  [inherited]
 

Creates a new element node.

Uses the current document as determined by the XMLController.

Definition at line 41 of file BaseXML.cxx.

References XmlDocument::createElement(), BaseXML::m_tagname, and XmlController::m_xml_doc.

Referenced by PlotterBaseXML::createAxisModel(), DataRepXML::createChildren(), BinningProjectorXML::createChildren(), AxisModelXML::createChildren(), NTupleXML::createChildren2D(), PlotterBaseXML::createCutChildren(), createElement(), TupleCutXML::createElement(), TransformXML::createElement(), PointRepXML::createElement(), PlotterBaseXML::createElement(), NTupleXML::createElement(), NTupleProjectorXML::createElement(), MapMatrixProjectorXML::createElement(), HiNTupleXML::createElement(), FunctionProjectorXML::createElement(), DataRepXML::createElement(), ColorXML::createElement(), BinToColorXML::createElement(), BinsBaseXML::createElement(), BinningProjectorXML::createElement(), BinnerAxisXML::createElement(), PlotterBaseXML::createFontElement(), and PlotterBaseXML::createFontElements().

XmlElement * ViewBaseXML::createElement const ViewBase view  ) 
 

Returns a newly created XmlElement with attributes set for view.

Definition at line 56 of file ViewBaseXML.cxx.

References createChild(), BaseXML::createElement(), ViewBase::getDrawRect(), HippoRectangle::getHeight(), HippoRectangle::getWidth(), HippoRectangle::getX(), HippoRectangle::getY(), BaseXML::m_controller, m_h, m_w, m_x, m_y, XmlElement::setAttribute(), and BaseXML::setId().

Referenced by XmlController::addViews().

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

Fills the nodelist with immediate child nodes of element with nodes that can be handled by this object.

Definition at line 56 of file BaseXML.cxx.

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

Referenced by connectPlotters(), PlotterBaseXML::createAxisModels(), AxisModelXML::createChildren(), PlotterBaseXML::createFontObjects(), BinToColorXML::createObject(), BinsBaseXML::createObject(), XmlController::getDataReps(), PlotterBaseXML::getObject(), TupleCutXML::getObjects(), XmlController::getTupleCuts(), XmlController::getViews(), XmlController::openNTuples(), and TupleCutXML::setAttributes().

const XmlElement * BaseXML::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 51 of file BaseXML.cxx.

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

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

void ViewBaseXML::getObjects const XmlElement element  )  [virtual]
 

Creates an object derived from ViewBase.

Uses the information in the DOM element to instanciate the object.

Definition at line 75 of file ViewBaseXML.cxx.

References XmlElement::attribute(), XmlController::createView(), BaseXML::getNode(), PlotterBaseXML::getObject(), BaseXML::m_controller, m_h, m_plotter_xml, m_w, m_x, m_y, and ViewBase::setDrawRect().

Referenced by XmlController::getViews().

void BaseXML::setId XmlElement tag,
int  id
[protected, inherited]
 

Sets the unique identification of the object.

Definition at line 62 of file BaseXML.cxx.

References BaseXML::m_id, and XmlElement::setAttribute().

Referenced by createElement(), TupleCutXML::createElement(), PlotterBaseXML::createElement(), NTupleProjectorXML::createElement(), MapMatrixProjectorXML::createElement(), HiNTupleXML::createElement(), FunctionProjectorXML::createElement(), DataRepXML::createElement(), BinningProjectorXML::createElement(), PointRepXML::setAttributes(), and NTupleXML::setAttributes().

const string & BaseXML::tagName  )  const [virtual, inherited]
 

Returns the tag name used by this class.

Definition at line 46 of file BaseXML.cxx.

References BaseXML::m_tagname.


Member Data Documentation

XmlController* BaseXML::m_controller [protected, inherited]
 

The singleton XML controller object.

Definition at line 58 of file BaseXML.h.

Referenced by NTupleProjectorXML::addCuts(), connectPlotters(), NTupleProjectorXML::createChildren(), PlotterBaseXML::createCutChildren(), DataRepXML::createDataRep(), createElement(), TupleCutXML::createElement(), PlotterBaseXML::createElement(), NTupleProjectorXML::createElement(), MapMatrixProjectorXML::createElement(), HiNTupleXML::createElement(), FunctionProjectorXML::createElement(), DataRepXML::createElement(), BinningProjectorXML::createElement(), PlotterBaseXML::createFontObjects(), DataRepXML::createFunctionTargetChild(), DataRepXML::createObject(), PlotterBaseXML::createPlotter(), PlotterBaseXML::createTextChildren(), PlotterBaseXML::getCutTargets(), PlotterBaseXML::getObject(), getObjects(), PlotterBaseXML::handleCutPlotter(), PlotterBaseXML::handleFunction(), PlotterBaseXML::handleTextPlotter(), PointRepXML::setAttributes(), and NTupleXML::setAttributes().

std::string ViewBaseXML::m_h [private]
 

Attribute name for the height.

Definition at line 41 of file ViewBaseXML.h.

Referenced by createElement(), and getObjects().

const std::string BaseXML::m_id [protected, inherited]
 

The attribute name for the identification of the object.

Definition at line 55 of file BaseXML.h.

Referenced by BaseXML::setId().

PlotterBaseXML* ViewBaseXML::m_plotter_xml [private]
 

The PlotterBaseXML instance used by this object.

Definition at line 47 of file ViewBaseXML.h.

Referenced by areDataSourcesSaved(), connectPlotters(), createChild(), getObjects(), and ViewBaseXML().

const std::string BaseXML::m_tagname [protected, inherited]
 

The tag name used for elements created by this class.

Definition at line 48 of file BaseXML.h.

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

const std::string BaseXML::m_type [protected, inherited]
 

The attribute name for the type of object.

Used to create object from one of the classes derived from Factory.

Definition at line 52 of file BaseXML.h.

Referenced by DataRepXML::createDataRep(), TransformXML::createElement(), PlotterBaseXML::createElement(), DataRepXML::createElement(), BinToColorXML::createElement(), BinsBaseXML::createElement(), TransformXML::createObject(), PointRepXML::createObject(), DataRepXML::createObject(), BinToColorXML::createObject(), BinsBaseXML::createObject(), BinnerAxisXML::createObject(), PlotterBaseXML::createPlotter(), PointRepXML::setAttributes(), and BinnerAxisXML::setAttributes().

std::string ViewBaseXML::m_w [private]
 

Attribute name for the width.

Definition at line 38 of file ViewBaseXML.h.

Referenced by createElement(), and getObjects().

std::string ViewBaseXML::m_x [private]
 

Attribute name for the X coordinate.

Definition at line 32 of file ViewBaseXML.h.

Referenced by createElement(), and getObjects().

std::string ViewBaseXML::m_y [private]
 

Attribute name for the Y coordinate.

Definition at line 35 of file ViewBaseXML.h.

Referenced by createElement(), and getObjects().


The documentation for this class was generated from the following files:
Generated for HippoDraw-1.14.8.5 by doxygen 1.4.3