#ifndef ALIFMDRECONSTRUCTOR_H
#define ALIFMDRECONSTRUCTOR_H
#ifndef ALIRECONSTRUCTOR_H
# include <AliReconstructor.h>
#endif
#include "AliLog.h"
#include <AliFMDBoolMap.h>
class TTree;
class TClonesArray;
class AliFMDDigit;
class AliRawReader;
class AliFMDRawReader;
class AliESDEvent;
class AliESDFMD;
class AliFMDRecoParam;
class TH1;
class AliFMDReconstructor: public AliReconstructor
{
public:
AliFMDReconstructor();
virtual ~AliFMDReconstructor();
virtual void Init();
virtual Bool_t HasDigitConversion() const { return kTRUE; }
virtual void ConvertDigits(AliRawReader* reader, TTree* digitsTree) const;
virtual void Reconstruct(TTree* digitsTree, TTree* clusterTree) const;
virtual void Reconstruct(AliRawReader *, TTree*) const;
virtual void Reconstruct(AliFMDRawReader& reader) const;
virtual void FillESD(TTree* digitsTree, TTree* clusterTree,
AliESDEvent* esd) const;
virtual void FillESD(AliRawReader*, TTree* clusterTree,
AliESDEvent* esd) const;
AliESDFMD* GetESDObject() const { return fESDObj; }
virtual void Digitize(AliRawReader* reader,
TClonesArray* sdigits) const;
virtual void SetESD(AliESDEvent* esd) { fESD = esd; }
virtual void SetNoiseFactor(Float_t f=3) { fNoiseFactor = f; }
virtual void SetAngleCorrect(Bool_t use=kTRUE) { fAngleCorrect = use; }
void SetDiagnose(Bool_t use=kTRUE) { fDiagnostics = use; }
virtual void ProcessDigits(TClonesArray* digits,
const AliFMDRawReader& rawRead) const;
protected:
AliFMDReconstructor(const AliFMDReconstructor&);
AliFMDReconstructor& operator=(const AliFMDReconstructor&);
Bool_t PreReconstruct() const;
virtual void GetVertex(AliESDEvent* esd) const;
virtual void UseRecoParam(Bool_t set=kTRUE) const;
virtual void ProcessDigits(TClonesArray* digits) const;
virtual void ProcessDigit(AliFMDDigit* digit) const;
virtual void ProcessSignal(UShort_t det,
Char_t rng,
UShort_t sec,
UShort_t str,
Short_t adc) const;
virtual void DigitizeSignal(TClonesArray* sdigits,
UShort_t det,
Char_t rng,
UShort_t sec,
UShort_t str,
UShort_t sam,
Short_t adc) const;
virtual UShort_t SubtractPedestal(UShort_t det,
Char_t rng,
UShort_t sec,
UShort_t str,
UShort_t adc,
Float_t noiseFactor,
Bool_t zsEnabled,
UShort_t zsNoiseFactor) const;
virtual UShort_t SubtractPedestal(UShort_t det,
Char_t rng,
UShort_t sec,
UShort_t str,
Short_t adc) const;
virtual Float_t Adc2Energy(UShort_t det,
Char_t rng,
UShort_t sec,
UShort_t str,
UShort_t count) const;
virtual Float_t Adc2Energy(UShort_t det,
Char_t rng,
UShort_t sec,
UShort_t str,
Float_t eta,
UShort_t count) const;
virtual Float_t Energy2Multiplicity(UShort_t det,
Char_t rng,
UShort_t sec,
UShort_t str,
Float_t edep) const;
virtual void PhysicalCoordinates(UShort_t det,
Char_t rng,
UShort_t sec,
UShort_t str,
Float_t& eta,
Float_t& phi) const;
void MarkDeadChannels(AliESDFMD* esd) const;
const AliFMDRecoParam* GetParameters() const;
Int_t GetIdentifier() const;
enum Vertex_t {
kNoVertex,
kGenVertex,
kESDVertex
};
mutable TClonesArray* fMult;
mutable Int_t fNMult;
mutable TTree* fTreeR;
mutable Float_t fCurrentVertex;
mutable AliESDFMD* fESDObj;
mutable Float_t fNoiseFactor;
mutable Bool_t fAngleCorrect;
mutable Vertex_t fVertexType;
AliESDEvent* fESD;
Bool_t fDiagnostics;
TH1* fDiagStep1;
TH1* fDiagStep2;
TH1* fDiagStep3;
TH1* fDiagStep4;
TH1* fDiagAll;
mutable Bool_t fZS[3];
mutable UShort_t fZSFactor[3];
mutable AliFMDBoolMap fBad;
Bool_t fZombie;
private:
ClassDef(AliFMDReconstructor, 3)
};
#endif
AliFMDReconstructor.h:100 AliFMDReconstructor.h:101 AliFMDReconstructor.h:102 AliFMDReconstructor.h:103 AliFMDReconstructor.h:104 AliFMDReconstructor.h:105 AliFMDReconstructor.h:106 AliFMDReconstructor.h:107 AliFMDReconstructor.h:108 AliFMDReconstructor.h:109 AliFMDReconstructor.h:110 AliFMDReconstructor.h:111 AliFMDReconstructor.h:112 AliFMDReconstructor.h:113 AliFMDReconstructor.h:114 AliFMDReconstructor.h:115 AliFMDReconstructor.h:116 AliFMDReconstructor.h:117 AliFMDReconstructor.h:118 AliFMDReconstructor.h:119 AliFMDReconstructor.h:120 AliFMDReconstructor.h:121 AliFMDReconstructor.h:122 AliFMDReconstructor.h:123 AliFMDReconstructor.h:124 AliFMDReconstructor.h:125 AliFMDReconstructor.h:126 AliFMDReconstructor.h:127 AliFMDReconstructor.h:128 AliFMDReconstructor.h:129 AliFMDReconstructor.h:130 AliFMDReconstructor.h:131 AliFMDReconstructor.h:132 AliFMDReconstructor.h:133 AliFMDReconstructor.h:134 AliFMDReconstructor.h:135 AliFMDReconstructor.h:136 AliFMDReconstructor.h:137 AliFMDReconstructor.h:138 AliFMDReconstructor.h:139 AliFMDReconstructor.h:140 AliFMDReconstructor.h:141 AliFMDReconstructor.h:142 AliFMDReconstructor.h:143 AliFMDReconstructor.h:144 AliFMDReconstructor.h:145 AliFMDReconstructor.h:146 AliFMDReconstructor.h:147 AliFMDReconstructor.h:148 AliFMDReconstructor.h:149 AliFMDReconstructor.h:150 AliFMDReconstructor.h:151 AliFMDReconstructor.h:152 AliFMDReconstructor.h:153 AliFMDReconstructor.h:154 AliFMDReconstructor.h:155 AliFMDReconstructor.h:156 AliFMDReconstructor.h:157 AliFMDReconstructor.h:158 AliFMDReconstructor.h:159 AliFMDReconstructor.h:160 AliFMDReconstructor.h:161 AliFMDReconstructor.h:162 AliFMDReconstructor.h:163 AliFMDReconstructor.h:164 AliFMDReconstructor.h:165 AliFMDReconstructor.h:166 AliFMDReconstructor.h:167 AliFMDReconstructor.h:168 AliFMDReconstructor.h:169 AliFMDReconstructor.h:170 AliFMDReconstructor.h:171 AliFMDReconstructor.h:172 AliFMDReconstructor.h:173 AliFMDReconstructor.h:174 AliFMDReconstructor.h:175 AliFMDReconstructor.h:176 AliFMDReconstructor.h:177 AliFMDReconstructor.h:178 AliFMDReconstructor.h:179 AliFMDReconstructor.h:180 AliFMDReconstructor.h:181 AliFMDReconstructor.h:182 AliFMDReconstructor.h:183 AliFMDReconstructor.h:184 AliFMDReconstructor.h:185 AliFMDReconstructor.h:186 AliFMDReconstructor.h:187 AliFMDReconstructor.h:188 AliFMDReconstructor.h:189 AliFMDReconstructor.h:190 AliFMDReconstructor.h:191 AliFMDReconstructor.h:192 AliFMDReconstructor.h:193 AliFMDReconstructor.h:194 AliFMDReconstructor.h:195 AliFMDReconstructor.h:196 AliFMDReconstructor.h:197 AliFMDReconstructor.h:198 AliFMDReconstructor.h:199 AliFMDReconstructor.h:200 AliFMDReconstructor.h:201 AliFMDReconstructor.h:202 AliFMDReconstructor.h:203 AliFMDReconstructor.h:204 AliFMDReconstructor.h:205 AliFMDReconstructor.h:206 AliFMDReconstructor.h:207 AliFMDReconstructor.h:208 AliFMDReconstructor.h:209 AliFMDReconstructor.h:210 AliFMDReconstructor.h:211 AliFMDReconstructor.h:212 AliFMDReconstructor.h:213 AliFMDReconstructor.h:214 AliFMDReconstructor.h:215 AliFMDReconstructor.h:216 AliFMDReconstructor.h:217 AliFMDReconstructor.h:218 AliFMDReconstructor.h:219 AliFMDReconstructor.h:220 AliFMDReconstructor.h:221 AliFMDReconstructor.h:222 AliFMDReconstructor.h:223 AliFMDReconstructor.h:224 AliFMDReconstructor.h:225 AliFMDReconstructor.h:226 AliFMDReconstructor.h:227 AliFMDReconstructor.h:228 AliFMDReconstructor.h:229 AliFMDReconstructor.h:230 AliFMDReconstructor.h:231 AliFMDReconstructor.h:232 AliFMDReconstructor.h:233 AliFMDReconstructor.h:234 AliFMDReconstructor.h:235 AliFMDReconstructor.h:236 AliFMDReconstructor.h:237 AliFMDReconstructor.h:238 AliFMDReconstructor.h:239 AliFMDReconstructor.h:240 AliFMDReconstructor.h:241 AliFMDReconstructor.h:242 AliFMDReconstructor.h:243 AliFMDReconstructor.h:244 AliFMDReconstructor.h:245 AliFMDReconstructor.h:246 AliFMDReconstructor.h:247 AliFMDReconstructor.h:248 AliFMDReconstructor.h:249 AliFMDReconstructor.h:250 AliFMDReconstructor.h:251 AliFMDReconstructor.h:252 AliFMDReconstructor.h:253 AliFMDReconstructor.h:254 AliFMDReconstructor.h:255 AliFMDReconstructor.h:256 AliFMDReconstructor.h:257 AliFMDReconstructor.h:258 AliFMDReconstructor.h:259 AliFMDReconstructor.h:260 AliFMDReconstructor.h:261 AliFMDReconstructor.h:262 AliFMDReconstructor.h:263 AliFMDReconstructor.h:264 AliFMDReconstructor.h:265 AliFMDReconstructor.h:266 AliFMDReconstructor.h:267 AliFMDReconstructor.h:268 AliFMDReconstructor.h:269 AliFMDReconstructor.h:270 AliFMDReconstructor.h:271 AliFMDReconstructor.h:272 AliFMDReconstructor.h:273 AliFMDReconstructor.h:274 AliFMDReconstructor.h:275 AliFMDReconstructor.h:276 AliFMDReconstructor.h:277 AliFMDReconstructor.h:278 AliFMDReconstructor.h:279 AliFMDReconstructor.h:280 AliFMDReconstructor.h:281 AliFMDReconstructor.h:282 AliFMDReconstructor.h:283 AliFMDReconstructor.h:284 AliFMDReconstructor.h:285 AliFMDReconstructor.h:286 AliFMDReconstructor.h:287 AliFMDReconstructor.h:288 AliFMDReconstructor.h:289 AliFMDReconstructor.h:290 AliFMDReconstructor.h:291 AliFMDReconstructor.h:292 AliFMDReconstructor.h:293 AliFMDReconstructor.h:294 AliFMDReconstructor.h:295 AliFMDReconstructor.h:296 AliFMDReconstructor.h:297 AliFMDReconstructor.h:298 AliFMDReconstructor.h:299 AliFMDReconstructor.h:300 AliFMDReconstructor.h:301 AliFMDReconstructor.h:302 AliFMDReconstructor.h:303 AliFMDReconstructor.h:304 AliFMDReconstructor.h:305 AliFMDReconstructor.h:306 AliFMDReconstructor.h:307 AliFMDReconstructor.h:308 AliFMDReconstructor.h:309 AliFMDReconstructor.h:310 AliFMDReconstructor.h:311 AliFMDReconstructor.h:312 AliFMDReconstructor.h:313 AliFMDReconstructor.h:314 AliFMDReconstructor.h:315 AliFMDReconstructor.h:316 AliFMDReconstructor.h:317 AliFMDReconstructor.h:318 AliFMDReconstructor.h:319 AliFMDReconstructor.h:320 AliFMDReconstructor.h:321 AliFMDReconstructor.h:322 AliFMDReconstructor.h:323 AliFMDReconstructor.h:324 AliFMDReconstructor.h:325 AliFMDReconstructor.h:326 AliFMDReconstructor.h:327 AliFMDReconstructor.h:328 AliFMDReconstructor.h:329 AliFMDReconstructor.h:330 AliFMDReconstructor.h:331 AliFMDReconstructor.h:332 AliFMDReconstructor.h:333 AliFMDReconstructor.h:334 AliFMDReconstructor.h:335 AliFMDReconstructor.h:336 AliFMDReconstructor.h:337 AliFMDReconstructor.h:338 AliFMDReconstructor.h:339 AliFMDReconstructor.h:340 AliFMDReconstructor.h:341 AliFMDReconstructor.h:342 AliFMDReconstructor.h:343 AliFMDReconstructor.h:344 AliFMDReconstructor.h:345 AliFMDReconstructor.h:346 AliFMDReconstructor.h:347 AliFMDReconstructor.h:348 AliFMDReconstructor.h:349 AliFMDReconstructor.h:350 AliFMDReconstructor.h:351 AliFMDReconstructor.h:352 AliFMDReconstructor.h:353 AliFMDReconstructor.h:354 AliFMDReconstructor.h:355 AliFMDReconstructor.h:356 AliFMDReconstructor.h:357 AliFMDReconstructor.h:358 AliFMDReconstructor.h:359 AliFMDReconstructor.h:360 AliFMDReconstructor.h:361 AliFMDReconstructor.h:362 AliFMDReconstructor.h:363 AliFMDReconstructor.h:364 AliFMDReconstructor.h:365 AliFMDReconstructor.h:366 AliFMDReconstructor.h:367 AliFMDReconstructor.h:368 AliFMDReconstructor.h:369 AliFMDReconstructor.h:370 AliFMDReconstructor.h:371 AliFMDReconstructor.h:372 AliFMDReconstructor.h:373 AliFMDReconstructor.h:374 AliFMDReconstructor.h:375 AliFMDReconstructor.h:376 AliFMDReconstructor.h:377 AliFMDReconstructor.h:378 AliFMDReconstructor.h:379 AliFMDReconstructor.h:380 AliFMDReconstructor.h:381 AliFMDReconstructor.h:382 AliFMDReconstructor.h:383 AliFMDReconstructor.h:384 AliFMDReconstructor.h:385 AliFMDReconstructor.h:386 AliFMDReconstructor.h:387 AliFMDReconstructor.h:388 AliFMDReconstructor.h:389 AliFMDReconstructor.h:390 AliFMDReconstructor.h:391 AliFMDReconstructor.h:392 AliFMDReconstructor.h:393 AliFMDReconstructor.h:394 AliFMDReconstructor.h:395 AliFMDReconstructor.h:396 AliFMDReconstructor.h:397 AliFMDReconstructor.h:398 AliFMDReconstructor.h:399 AliFMDReconstructor.h:400 AliFMDReconstructor.h:401 AliFMDReconstructor.h:402 AliFMDReconstructor.h:403 AliFMDReconstructor.h:404 AliFMDReconstructor.h:405 AliFMDReconstructor.h:406 AliFMDReconstructor.h:407 AliFMDReconstructor.h:408 AliFMDReconstructor.h:409 AliFMDReconstructor.h:410 AliFMDReconstructor.h:411 AliFMDReconstructor.h:412 AliFMDReconstructor.h:413 AliFMDReconstructor.h:414 AliFMDReconstructor.h:415 AliFMDReconstructor.h:416 AliFMDReconstructor.h:417 AliFMDReconstructor.h:418 AliFMDReconstructor.h:419 AliFMDReconstructor.h:420 AliFMDReconstructor.h:421 AliFMDReconstructor.h:422 AliFMDReconstructor.h:423 AliFMDReconstructor.h:424 AliFMDReconstructor.h:425 AliFMDReconstructor.h:426 AliFMDReconstructor.h:427 AliFMDReconstructor.h:428 AliFMDReconstructor.h:429 AliFMDReconstructor.h:430 AliFMDReconstructor.h:431 AliFMDReconstructor.h:432 AliFMDReconstructor.h:433 AliFMDReconstructor.h:434 AliFMDReconstructor.h:435 AliFMDReconstructor.h:436 AliFMDReconstructor.h:437 AliFMDReconstructor.h:438 AliFMDReconstructor.h:439 AliFMDReconstructor.h:440 AliFMDReconstructor.h:441 AliFMDReconstructor.h:442 AliFMDReconstructor.h:443 AliFMDReconstructor.h:444 AliFMDReconstructor.h:445 AliFMDReconstructor.h:446 AliFMDReconstructor.h:447 AliFMDReconstructor.h:448 AliFMDReconstructor.h:449 AliFMDReconstructor.h:450 AliFMDReconstructor.h:451 AliFMDReconstructor.h:452 AliFMDReconstructor.h:453 AliFMDReconstructor.h:454 AliFMDReconstructor.h:455 AliFMDReconstructor.h:456 AliFMDReconstructor.h:457 AliFMDReconstructor.h:458 AliFMDReconstructor.h:459 AliFMDReconstructor.h:460 AliFMDReconstructor.h:461 AliFMDReconstructor.h:462 AliFMDReconstructor.h:463 AliFMDReconstructor.h:464 AliFMDReconstructor.h:465 AliFMDReconstructor.h:466 AliFMDReconstructor.h:467 AliFMDReconstructor.h:468 AliFMDReconstructor.h:469 AliFMDReconstructor.h:470 AliFMDReconstructor.h:471 AliFMDReconstructor.h:472 AliFMDReconstructor.h:473 AliFMDReconstructor.h:474 AliFMDReconstructor.h:475