00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027 #include "StHbtMaker/Infrastructure/StHbtHistoCollector.h"
00028 #include "StHbtMaker/Infrastructure/StHbtTypes.hh"
00029
00030
00031 #ifdef __ROOT__
00032 ClassImp(StHbtHistoCollector)
00033 #endif
00034
00035 StHbtHistoCollector* StHbtHistoCollector::_instance=0;
00036
00037 StHbtHistoCollector* StHbtHistoCollector::Instance() {
00038 if (_instance == 0 ) _instance = new StHbtHistoCollector();
00039 return _instance;
00040 }
00041
00042 StHbtHistoCollector::StHbtHistoCollector() {
00043 cout << " StHbtHistoCollector::StHbtHistoCollector() " << endl;
00044 }
00045
00046
00047 void StHbtHistoCollector::Add(CTH1D* h) { m1DList.push_back(h); }
00048 void StHbtHistoCollector::Add(CTH2D* h) { m2DList.push_back(h); }
00049 void StHbtHistoCollector::Add(CTH3D* h) { m3DList.push_back(h); }
00050
00051
00052 void StHbtHistoCollector::Clear() {
00053 m1DList.clear();
00054 m2DList.clear();
00055 m3DList.clear();
00056 }
00057
00058 void StHbtHistoCollector::Write() {
00059 {for (CTH1DIterator iter=m1DList.begin(); iter!=m1DList.end(); iter++) {
00060 TH1D temp( (TH1D&)(**iter) );
00061 temp.SetDirectory(0);
00062 temp.Write();
00063 }}
00064 {for (CTH2DIterator iter=m2DList.begin(); iter!=m2DList.end(); iter++) {
00065 TH2D temp( (TH2D&)(**iter) );
00066 temp.SetDirectory(0);
00067 temp.Write();
00068 }}
00069 {for (CTH3DIterator iter=m3DList.begin(); iter!=m3DList.end(); iter++) {
00070 TH3D temp( (TH3D&)(**iter) );
00071 temp.SetDirectory(0);
00072 temp.Write();
00073 }}
00074 }
00075