#include <HistoFile.h>
Static Public Member Functions | |
| void | SetFileName (const char *name) |
| const char * | FileName () |
| TFile * | File () |
| void | StepIn (const char *dir=0) |
| void | StepOut () |
| bool | SaveHistos () |
Private Member Functions | |
| HistoFile () | |
Definition at line 18 of file HistoFile.h.
|
|
Definition at line 27 of file HistoFile.h. 00027 { }
|
|
|
Definition at line 51 of file HistoFile.cxx. Referenced by main(). 00051 { return gsTFile; }
|
|
|
Definition at line 47 of file HistoFile.cxx. References gsFileName(). 00047 {return gsFileName.c_str(); }
|
|
|
Definition at line 23 of file HistoFile.cxx. Referenced by main(). 00024 {
00025 return gsSaveHistos;
00026 }
|
|
|
Definition at line 30 of file HistoFile.cxx. References gsFileName(), and gsSaveHistos. Referenced by main(). 00031 {
00032 if (name==0) return;
00033
00034 std::string sname = name;
00035 if (sname=="") return;
00036
00037 if (sname=="0") {
00038 gsSaveHistos = false;
00039 return;
00040 }
00041
00042 gsFileName = name;
00043 }
|
|
|
Definition at line 55 of file HistoFile.cxx. References gsCurrDir, gsFileName(), and gsTFile. Referenced by subshower::RecoSubShower::FitEM(), jobc::Sequence::Print(), and jobc::Node::StepInToFolder(). 00056 {
00057 if (gsTFile==0) {
00058 // Check that the file name is not already in use
00059 const int fOK = 0;
00060 int fexists = access(gsFileName.c_str(),F_OK);
00061 for (int i = 1; (i < 100) && (fexists == fOK); ++i) {
00062 std::string::size_type pos = gsFileName.find(".root");
00063 if (pos == std::string::npos) {
00064 gsFileName += ".root";
00065 i--;
00066 }
00067 else {
00068 if (i == 1) {
00069 gsFileName.insert(pos, "-01");
00070 }
00071 else if (i % 10 == 0) {
00072 pos--;
00073 gsFileName[pos--] = '0';
00074 char s = '0' + i / 10;
00075 gsFileName[pos] = s;
00076 }
00077 else {
00078 char s = '0' + i % 10;
00079 gsFileName[pos - 1] = s;
00080 }
00081 }
00082 fexists = access(gsFileName.c_str(), F_OK);
00083 }
00084 gsTFile = new TFile(gsFileName.c_str(), "RECREATE");
00085 }
00086 gsCurrDir = gDirectory;
00087 if (dirname == 0) { gsTFile->cd(); return; }
00088
00089
00090 TObject* obj = gsTFile->FindObject(dirname);
00091 if (obj==0) gsTFile->mkdir(dirname);
00092 gsTFile->cd(dirname);
00093 }
|
|
|
Definition at line 97 of file HistoFile.cxx. References gsCurrDir. Referenced by subshower::RecoSubShower::FitEM(), jobc::Sequence::Print(), jobc::Node::StepOutOfFolder(), and jobc::Node::~Node(). 00098 {
00099 if (gsCurrDir) gsCurrDir->cd();
00100 }
|
1.3.9.1