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