00001
00002
00015 #ifndef _NTupleXML_H_
00016 #define _NTupleXML_H_
00017
00018 #include "BaseXML.h"
00019
00020 #include <vector>
00021
00022 namespace hippodraw {
00023
00024 class DataSource;
00025
00034 class MDL_HIPPOPLOT_API NTupleXML : virtual public BaseXML
00035 {
00036
00037 private:
00038
00040 NTupleXML ( const NTupleXML & );
00041
00043 std::string m_name;
00044
00047 std::string m_col_name;
00048
00051 std::string m_data;
00052
00055 std::string m_label;
00056
00059 void setAttributes ( XmlElement * tag, const DataSource & ntuple );
00060
00063 void createChildren ( XmlElement * tag, const DataSource & ntuple );
00064
00067 void createChildren2D ( XmlElement * tag, const DataSource & ntuple );
00068
00071 void createChildren3D ( XmlElement * tag, const DataSource & ntuple );
00072
00073 public:
00074
00076 NTupleXML ( XmlController * );
00077
00080 XmlElement * createElement ( const DataSource & ntuple );
00081
00084 const DataSource * getObject ( const XmlElement & tag );
00085
00088 std::string getName ( const XmlElement & tag ) const;
00089
00090 };
00091
00092 }
00093
00094 #endif // _NTupleXML_H_