]> git.uio.no Git - u/mrichter/AliRoot.git/blame - MUON/AliMUONRawWriter.h
hopefully the last refinements for correct type conversion in calibration
[u/mrichter/AliRoot.git] / MUON / AliMUONRawWriter.h
CommitLineData
a19e2543 1#ifndef ALIMUONRAWWRITER_H
2#define ALIMUONRAWWRITER_H
3/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
5
6/*$Id$*/
7
344ef20f 8/// \ingroup sim
a19e2543 9/// \class AliMUONRawWriter
10/// \brief Raw data class for trigger and tracker chambers
11///
78649106 12// Author Christian Finck and Laurent Aphecetche, Subatech
a19e2543 13
14#include <TObject.h>
2cf44ef3 15#include "AliRawDataHeader.h"
a19e2543 16
2cbb173f 17class AliMUONData;
18class AliMUONDigit;
2cf44ef3 19class AliMUONDspHeader;
20class AliMUONBlockHeader;
21class AliMUONDarcHeader;
22class AliMUONRegHeader;
23class AliMUONLocalStruct;
344ef20f 24class AliMpExMap;
25class AliMUONBusStruct;
a19e2543 26class AliMUONGlobalTrigger;
e5ced899 27class AliMpDDLStore;
a844d67f 28class AliMUONTriggerCrateStore;
344ef20f 29class TStopwatch;
a19e2543 30
31class AliMUONRawWriter : public TObject
32{
33 public:
2cbb173f 34 AliMUONRawWriter(AliMUONData* data); // Constructor
2cf44ef3 35 virtual ~AliMUONRawWriter(); // Destructor
a19e2543 36
37 // write raw data
2cbb173f 38 Int_t Digits2Raw();
a19e2543 39
84ceeb06 40 void SetScalersNumbers();
41
8778870d 42protected:
43 AliMUONRawWriter(); // Default constructor
8778870d 44
45 // writing raw data
46 Int_t WriteTrackerDDL(Int_t iCh);
47 Int_t WriteTriggerDDL();
48
2cbb173f 49private:
344ef20f 50 Int_t GetBusPatch(const AliMUONDigit& digit) const;
a844d67f 51
8778870d 52private:
2d95e00c 53 /// Not implemented copy constructor
54 AliMUONRawWriter (const AliMUONRawWriter& rhs); // copy constructor
55 /// Not implemented assignment operator
56 AliMUONRawWriter& operator=(const AliMUONRawWriter& rhs);
57
a19e2543 58
829425a5 59 AliMUONData* fMUONData; //!< Data container for MUON subsystem
a19e2543 60
1d81a83f 61 FILE* fFile[4]; //!< DDL binary file pointer one per 1/2 chamber, 4 for one station
344ef20f 62
829425a5 63 AliMUONBlockHeader* fBlockHeader; //!< DDL block header class pointers
64 AliMUONDspHeader* fDspHeader; //!< DDL Dsp header class pointers
829425a5 65 AliMUONDarcHeader* fDarcHeader; //!< DDL darc header class pointers
66 AliMUONRegHeader* fRegHeader; //!< DDL regional header class pointers
67 AliMUONLocalStruct* fLocalStruct; //!< DDL local structure class pointers
a19e2543 68
5cab551d 69 AliMpDDLStore* fDDLStore; //!< DDL store pointer
70 AliMUONTriggerCrateStore* fCrateManager; //!< Crate array
ced309a5 71
829425a5 72 Bool_t fScalerEvent; ///< flag to generates scaler event
ced309a5 73
829425a5 74 AliRawDataHeader fHeader; ///< header of DDL
2cf44ef3 75
2cbb173f 76
344ef20f 77 TStopwatch* fTimers; //!< time watchers
2cbb173f 78
344ef20f 79 ClassDef(AliMUONRawWriter,2) // MUON cluster reconstructor in ALICE
a19e2543 80};
81
82#endif