#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 () |
Private Member Functions | |
| HistoFile () | |
Definition at line 14 of file HistoFile.h.
|
|
Definition at line 22 of file HistoFile.h.
00022 { }
|
|
|
Definition at line 38 of file HistoFile.cxx. References gsTFile. Referenced by main().
00038 { return gsTFile; }
|
|
|
Definition at line 34 of file HistoFile.cxx. References gsFileName().
00034 {return gsFileName.c_str(); }
|
|
|
Definition at line 22 of file HistoFile.cxx. References gsFileName(). Referenced by main().
00023 {
00024 if (name==0) return;
00025
00026 std::string sname = name;
00027 if (sname=="") return;
00028
00029 gsFileName = name;
00030 }
|
|
|
Definition at line 42 of file HistoFile.cxx. References gsCurrDir, gsFileName(), and gsTFile.
00043 {
00044 if (gsTFile==0) {
00045 // Check that the file name is not already in use
00046 const int fOK = 0;
00047 int fexists = access(gsFileName.c_str(),F_OK);
00048 for (int i = 1; (i < 100) && (fexists == fOK); ++i) {
00049 std::string::size_type pos = gsFileName.find(".root");
00050 if (pos == std::string::npos) {
00051 gsFileName += ".root";
00052 i--;
00053 }
00054 else {
00055 if (i == 1) {
00056 gsFileName.insert(pos, "-01");
00057 }
00058 else if (i % 10 == 0) {
00059 pos--;
00060 gsFileName[pos--] = '0';
00061 char s = '0' + i / 10;
00062 gsFileName[pos] = s;
00063 }
00064 else {
00065 char s = '0' + i % 10;
00066 gsFileName[pos - 1] = s;
00067 }
00068 }
00069 fexists = access(gsFileName.c_str(), F_OK);
00070 }
00071 gsTFile = new TFile(gsFileName.c_str(), "RECREATE");
00072 }
00073 gsCurrDir = gDirectory;
00074 if (dirname == 0) { gsTFile->cd(); return; }
00075
00076
00077 TObject* obj = gsTFile->FindObject(dirname);
00078 if (obj==0) gsTFile->mkdir(dirname);
00079 gsTFile->cd(dirname);
00080 }
|
|
|
Definition at line 84 of file HistoFile.cxx. References gsCurrDir.
|
1.3.5