Cat
Data.h
Go to the documentation of this file.
1 // $Id: $
2 #ifndef INC_DATA_H
3 #define INC_DATA_H 1
4 
5 #include "Histo1D.h"
6 #include "Histo2D.h"
7 
8 class TH1D;
9 class TH2D;
10 
11 // Include files
12 
19 class Data : public Object {
20 public:
21 
23  Data( );
24  virtual ~Data( );
25  void print();
26  void addDataStream (std::string, std::string);
27  void addHisto1d (TH1D*);
28  void addHisto2d (TH2D*);
29  void buildHistos ();
30  Histo1D* hist1d (unsigned int row) {return &m_hist1d[row];};
31  Histo1D* hist1d (std::string name) {
32 // name;
33  return &m_hist1d[0];
34  };
35  Histo2D* hist2d (unsigned int row) {return &m_hist2d[row];};
36  Histo2D* hist2d (std::string name) {
37 // name;
38  return &m_hist2d[0];
39  };
40  void purge ();
41  StatusCode clear ( int );
42  StatusCode dataFill( int , double );
43  std::string name(unsigned int );
44  std::string title(unsigned int);
45  std::vector<double>* vectorPtr(unsigned int);
46  std::vector<double> vector(unsigned int);
47  std::vector<double> vector(std::string);
48  int rowFromName(std::string);
49  bool empty(){
50  if (0==m_names.size()&&0==m_h1d.size()&&0==m_h2d.size()) return true;
51  return false;
52  }
53 
54 protected:
55 
56 private:
57  std::vector< std::vector<double>* > m_values;
58  std::vector< TH1D* > m_h1d;
59  std::vector< TH2D* > m_h2d;
60  std::vector< Histo1D > m_hist1d;
61  std::vector< Histo2D > m_hist2d;
62  std::vector< std::string > m_titles;
63  std::vector< std::string > m_names;
64 };
65 #endif // INC_DATA_H
Definition: Object.h:21
void addDataStream(std::string, std::string)
Definition: Data.cpp:31
Histo1D * hist1d(std::string name)
Definition: Data.h:31
StatusCode dataFill(int, double)
Definition: Data.cpp:85
Data()
Standard constructor.
Definition: Data.cpp:18
Histo2D * hist2d(std::string name)
Definition: Data.h:36
std::string title()
Definition: Object.h:31
void addHisto2d(TH2D *)
Definition: Data.cpp:47
std::vector< Histo1D > m_hist1d
Definition: Data.h:60
int rowFromName(std::string)
Definition: Data.cpp:158
void purge()
Definition: Data.cpp:54
std::vector< std::vector< double > *> m_values
Definition: Data.h:57
std::vector< double > vector(unsigned int)
Definition: Data.cpp:146
StatusCode clear(int)
Definition: Data.cpp:71
std::vector< TH2D *> m_h2d
Definition: Data.h:59
std::vector< TH1D *> m_h1d
Definition: Data.h:58
virtual ~Data()
Definition: Data.h:21
void print()
Definition: Data.cpp:186
bool empty()
Definition: Data.h:49
std::vector< std::string > m_titles
Definition: Data.h:62
std::vector< Histo2D > m_hist2d
Definition: Data.h:61
std::vector< std::string > m_names
Definition: Data.h:63
void buildHistos()
Definition: Data.cpp:98
Histo1D * hist1d(unsigned int row)
Definition: Data.h:30
std::string name() const
Definition: Object.h:28
Histo2D * hist2d(unsigned int row)
Definition: Data.h:35
Definition: Data.h:16
void addHisto1d(TH1D *)
Definition: Data.cpp:40
std::vector< double > * vectorPtr(unsigned int)
Definition: Data.cpp:134