00001 #ifndef __BCDATASET__H 00002 #define __BCDATASET__H 00003 00023 // --------------------------------------------------------- 00024 00025 #include <vector> 00026 00027 // BAT classes 00028 class BCDataPoint; 00029 00030 // --------------------------------------------------------- 00031 00032 typedef std::vector<BCDataPoint*> BCDataVector; 00033 00034 // --------------------------------------------------------- 00035 00036 class BCDataSet 00037 { 00038 public: 00039 00045 BCDataSet(); 00046 00049 BCDataSet(const BCDataSet & bcdataset); 00050 00053 virtual ~BCDataSet(); 00054 00061 BCDataSet & operator = (const BCDataSet & bcdataset); 00062 00069 // BCDataVector * GetDataVector(); 00070 00073 unsigned int GetNDataPoints(); 00074 00077 unsigned int GetNValuesPerPoint(); 00078 00082 BCDataPoint * GetDataPoint(unsigned int index); 00083 00089 std::vector<double> GetDataComponents(int index); 00090 00091 00100 int ReadDataFromFile(const char * filename, const char * treename, const char * branchnames) 00101 { return this -> ReadDataFromFileTree(filename, treename, branchnames); }; 00102 00103 int ReadDataFromFile(const char * filename, int nvariables) 00104 { return this -> ReadDataFromFileTxt(filename, nvariables); }; 00105 00118 int ReadDataFromFileTree(const char * filename, const char * treename, const char * branchnames); 00119 00128 int ReadDataFromFileTxt(const char * filename, int nvariables); 00129 00133 void AddDataPoint(BCDataPoint * datapoint); 00134 00137 void Reset(); 00138 00141 void Dump(); 00142 00145 private: 00146 00149 BCDataVector * fBCDataVector; 00150 00151 }; 00152 00153 // --------------------------------------------------------- 00154 00155 #endif 00156