/// \ingroup graphics
/// \class AliMUONTrackerRawDataMaker
-/// \brief Creator of AliMUONVTrackerData from AliRawReader
+/// \brief Creator of raw AliMUONVTrackerData from AliRawReader
///
// Author Laurent Aphecetche, Subatech
#endif
class AliRawReader;
-class AliMUONCalibrationData;
-class AliMUONDigitCalibrator;
-class AliMUONDigitMaker;
-class AliMUONVTrackerData;
class AliMUONVStore;
-class AliMUONVDigitStore;
+class AliMUONVTrackerData;
class AliMUONTrackerRawDataMaker : public AliMUONVTrackerDataMaker
{
public:
- AliMUONTrackerRawDataMaker(AliRawReader* reader = 0x0, const char* cdbpath=0x0);
+ AliMUONTrackerRawDataMaker(AliRawReader* reader = 0x0,
+ Bool_t histogram=kFALSE,
+ Bool_t useHPdecoder=kFALSE);
virtual ~AliMUONTrackerRawDataMaker();
/// Whether we have a valid raw reader
/// Our data
AliMUONVTrackerData* Data() const { return fAccumulatedData; }
- /// We can be run
- virtual Bool_t IsRunnable() const { return kTRUE; }
+ /// Whether we're only handling event-by-event data (i.e. no accumulation)
+ virtual Bool_t IsEventByEvent() const { return fIsEventByEvent; }
+
+ /// Set event-by-event mode
+ virtual void SetEventByEvent(Bool_t flag) { fIsEventByEvent = flag; }
+
+ /// We can be run if we have a reader
+ virtual Bool_t IsRunnable() const { return IsValid(); }
/// Whether we are running or not
virtual Bool_t IsRunning() const { return fIsRunning; }
void Rewind();
- /// Tell if we are owner of our data or not
- void SetOwner(Bool_t flag) { fIsOwner = flag; }
-
/// Get our source URI
virtual TString Source() const { return fSource.Data(); }
/// Set our source URI
void SetSource(const char* source) { fSource = source; }
- /// Get our digit store
- AliMUONVDigitStore* DigitStore() const { return fDigitStore; }
+ /// Number of events seen
+ Int_t NumberOfEvents() const { return fNumberOfEvents; }
+
+ Long64_t Merge(TCollection* li);
private:
/// Not implemented
/// Not implemented
AliMUONTrackerRawDataMaker& operator=(const AliMUONTrackerRawDataMaker& rhs);
- void ConvertDigits();
-
private:
- AliRawReader* fRawReader; ///< reader of the data (owner)
- AliMUONVTrackerData* fAccumulatedData; ///< data (owner if fIsOwner==kTRUE)
+ AliRawReader* fRawReader; //!< reader of the data (owner)
+ AliMUONVTrackerData* fAccumulatedData; ///< data (owner)
AliMUONVStore* fOneEventData; ///< data for one event (owner)
- Bool_t fIsOwner; ///< whether we are owner of our data or not
TString fSource; ///< where the data comes from
Bool_t fIsRunning; ///< whether we are running or are paused
- AliMUONDigitMaker* fDigitMaker; ///< digit maker
- AliMUONDigitCalibrator* fDigitCalibrator; ///< digit calibrator (if calibrating data)
- AliMUONCalibrationData* fCalibrationData; ///< calibration data (if calibrating data)
- AliMUONVDigitStore* fDigitStore; ///< digit store (if calibrating data)
- TString fCDBPath; ///< OCDB path (if calibrating data)
+ Int_t fNumberOfEvents; ///< number of events seen
+ Int_t fRunNumber; ///< run number of the data
+ Bool_t fIsEventByEvent; ///< we only keep one event's data (no accumulation)
+ Bool_t fUseHPDecoder; ///< whether to use high performance decoder or not (false by default)
static Int_t fgkCounter; ///< to count the number of instances
- ClassDef(AliMUONTrackerRawDataMaker,1) // Producer of AliMUONVTrackerData from raw data
+ ClassDef(AliMUONTrackerRawDataMaker,3) // Producer of AliMUONVTrackerData from raw data
};
#endif