]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWGHF/hfe/AliHFEpidQAmanager.h
Merge branch master into TRDdev
[u/mrichter/AliRoot.git] / PWGHF / hfe / AliHFEpidQAmanager.h
CommitLineData
3a72645a 1/**************************************************************************
2* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
3* *
4* Author: The ALICE Off-line Project. *
5* Contributors are mentioned in the code where appropriate. *
6* *
7* Permission to use, copy, modify and distribute this software and its *
8* documentation strictly for non-commercial purposes is hereby granted *
9* without fee, provided that the above copyright notice appears in all *
10* copies and that both the copyright notice and this permission notice *
11* appear in the supporting documentation. The authors make no claims *
12* about the suitability of this software for any purpose. It is *
13* provided "as is" without express or implied warranty. *
14**************************************************************************/
15//
16// Class AliHFEpidQAmanager
17// Steering PID QA
18// More information can be found inside the implementation file
19//
c2690925 20#ifndef ALIHFEPIDQAMANAGER_H
21#define ALIHFEPIDQAMANAGER_H
22
3a72645a 23#ifndef ROOT_TObject
24#include <TObject.h>
25#endif
26
27#ifndef ALIHFEPID_H
28#include "AliHFEpid.h"
29#endif
30
31#ifndef ALIHFEDETPIDQA_H
32#include "AliHFEdetPIDqa.h"
33#endif
34
35class TList;
36class AliVParticle;
37class AliESDpid;
38class AliAODpidUtil;
39class AliHFEpidObject;
40
41class AliHFEpidQAmanager : public TObject{
42 public:
43 AliHFEpidQAmanager();
44 AliHFEpidQAmanager(const AliHFEpidQAmanager &ref);
45 AliHFEpidQAmanager &operator=(const AliHFEpidQAmanager &ref);
46 void Copy(TObject &o) const;
47 ~AliHFEpidQAmanager();
48
49 void Initialize(AliHFEpid *pid);
6555e2ad 50 void ProcessTrack(const AliHFEpidObject *track, AliHFEpid::EDETtype_t det, AliHFEdetPIDqa::EStep_t step);
3a72645a 51 AliHFEdetPIDqa *GetDetectorPIDqa(AliHFEpid::EDETtype_t detector) const { return fDetPIDqa[detector]; }
6555e2ad 52 AliHFEpidBase *GetDetectorPID(AliHFEpid::EDETtype_t detector) const { return fDetPID[detector]; }
3a72645a 53 TList *MakeList(const Char_t *name);
bf892a6a 54 void SetHighResolutionHistos() { SetBit(kHighResolutionHistos, kTRUE); };
55 Bool_t HasHighResolutionHistos() const { return TestBit(kHighResolutionHistos); }
3a72645a 56
3a72645a 57 protected:
58 enum{
bf892a6a 59 kIsOwner = BIT(14),
60 kHighResolutionHistos = BIT(15)
3a72645a 61 };
62 Bool_t IsOwner() const { return TestBit(kIsOwner); }
63 void SetOwner() { SetBit(kIsOwner, kTRUE); }
64 void ReleaseOwnerShip() { SetBit(kIsOwner, kFALSE); }
65 void CreateDetPIDqa(AliHFEpid::EDETtype_t detector);
66
67 private:
6555e2ad 68 AliHFEdetPIDqa *fDetPIDqa[AliHFEpid::kNdetectorPID]; //! Detector PID QA objects
69 AliHFEpidBase *fDetPID[AliHFEpid::kNdetectorPID]; // Detector PID objects
3a72645a 70
71 ClassDef(AliHFEpidQAmanager, 0)
72};
73#endif