1 #ifndef ALIFMDHITDIGITIZER_H
2 #define ALIFMDHITDIGITIZER_H
3 /* Copyright(c) 1998-2000, ALICE Experiment at CERN, All rights
6 * See cxx source for full Copyright notice
8 // Classses to make Hits into digits and summable digits
15 // - ADC count in this channel
17 /** @file AliFMDHitDigitizer.h
18 @author Christian Holm Christensen <cholm@nbi.dk>
19 @date Mon Mar 27 12:38:26 2006
20 @brief FMD Digitizers declaration
23 #ifndef ALIFMDBASEDIGITIZER_H
24 # include <AliFMDBaseDigitizer.h>
27 //====================================================================
37 //====================================================================
38 /** @class AliFMDHitDigitizer
39 @brief Concrete digitizer to make digits from hits. See also
40 AliFMDBaseDigitizer documentation.
43 class AliFMDHitDigitizer : public AliFMDBaseDigitizer
53 : AliFMDBaseDigitizer(),
59 AliFMDHitDigitizer(AliFMD* fmd, Output_t output);
61 virtual ~AliFMDHitDigitizer() {}
62 /** Run over the input events (retrieved via run loader) */
63 void Exec(Option_t* option="");
66 @param o Object to copy from */
67 AliFMDHitDigitizer(const AliFMDHitDigitizer& o)
68 : AliFMDBaseDigitizer(o),
72 /** Assignment operator
73 @param o Object to assign from
74 @return Reference to this */
75 AliFMDHitDigitizer& operator=(const AliFMDHitDigitizer& o)
77 AliFMDBaseDigitizer::operator=(o);
81 /** Make the output tree using the passed loader
83 @return The generated tree. */
84 TTree* MakeOutputTree(AliLoader* loader);
85 /** Sum energy deposited contributions from each hit in a cache
86 @param hitsBranch Branch in input tree */
87 void SumContributions(TBranch* hitsBranch);
89 @param detector Detector #
91 @param sector Sector #
93 @return Pedestal value */
94 UShort_t MakePedestal(UShort_t detector,
97 UShort_t strip) const;
98 /** Add a digit to output.
99 @param fmd Pointer to detector object
100 @param detector Detector #
102 @param sector Sector number
103 @param strip Strip number
104 @param edep Energy deposited (not used)
105 @param count1 ADC count 1
106 @param count2 ADC count 2 (-1 if not used)
107 @param count3 ADC count 3 (-1 if not used)
108 @param count4 ADC count 4 (-1 if not used) */
109 void AddDigit(UShort_t detector,
119 UShort_t nprim) const;
120 /** Check that digit data is consistent
122 @param nhits Number of hits
123 @param counts ADC counts */
124 void CheckDigit(AliFMDDigit* digit,
126 const TArrayI& counts);
127 /** Store the data using the loader
128 @param loader The loader */
129 void StoreDigits(AliLoader* loader);
132 Output_t fOutput; // Output mode
133 AliStack* fStack; // Kinematics
135 ClassDef(AliFMDHitDigitizer,1) // Make Digits from Hits
140 //____________________________________________________________________