-
-
- Int_t GetCurrentEvent() {return fCurrentEvent;}
-
- static const UInt_t kBaseDDL = 3072;
- //Char_t* fDiagnosticsFilename;
- TString fDiagnosticsFilename;
- std::ofstream fOutputFile;
- std::ofstream fConditionsFile;
- Bool_t fSaveHistograms;
- TObjArray fDetectorArray;
-
+ /**
+ * End of run
+ */
+ virtual void Terminate(TFile* ) {};
+ /**
+ * Current event number
+ *
+ *
+ * @return
+ */
+ Int_t GetCurrentEvent() const {return fCurrentEvent;}
+ /**
+ * Rotate a set of files. @a base is the basic name of the files.
+ * If the file @a base.max exists it is removed.
+ * If the file @a base.n exists (where n < max) it is renamed to @a
+ * base.(n-1).
+ * If the file @a base exists, it is renamed to @a base.1
+ *
+ * @param base Base name of the files
+ * @param max Maximum number to keep (minus one for the current).
+ */
+ void Rotate(const char* base, int max) const;
+ /**
+ * Ge the half-ring index
+ *
+ * @param UShort_t
+ * @param Char_t
+ * @param UShort_t
+ *
+ * @return
+ */
+ Int_t GetHalfringIndex(UShort_t, Char_t, UShort_t) const;
+ /**
+ * Get the pulse size
+ *
+ * @param det Detector number
+ * @param ring Rin identifier
+ * @param board Board number
+ *
+ * @return Pulse step size
+ */
+ Int_t GetPulseSize(UShort_t det ,
+ Char_t ring,
+ UShort_t board)
+ {
+ return fPulseSize.At(GetHalfringIndex(det,ring,board));
+ }
+ /**
+ * Get number of events per pulse size
+ *
+ * @param det Detector number
+ * @param ring Rin identifier
+ * @param board Board number
+ *
+ * @return number of events per Pulse size
+ */
+ Int_t GetPulseLength(UShort_t det,
+ Char_t ring,
+ UShort_t board)
+ {
+ return fPulseLength.At(GetHalfringIndex(det,ring,board));
+ }
+
+ /**
+ * Get the detector path in diagnositcs file
+ *
+ * @param det Detector number
+ * @param full If true, return full path
+ *
+ * @return Path to detector
+ */