more secure string operations
[u/mrichter/AliRoot.git] / TPC / AliExternalComparison.h
CommitLineData
d73981ad 1#ifndef ALIEXTERNALCOMPARISON_H
2#define ALIEXTERNALCOMPARISON_H
3
4/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5 * See cxx source for full Copyright notice */
6
7
8#include "TNamed.h"
a5ade541 9#include "TMatrixDfwd.h"
d73981ad 10class THnSparse;
11class TCollection;
12class AliExternalTrackParam;
13class TParticle;
14class AliTrackReference;
15class TObjArray;
16
17class AliExternalComparison:public TNamed {
18public:
19 AliExternalComparison();
20 AliExternalComparison(const Text_t *name, const Text_t *title);
a5ade541 21 AliExternalComparison(const AliExternalComparison& comp);
22 AliExternalComparison& operator=(const AliExternalComparison& comp);
834f8b74 23 //
d73981ad 24 virtual ~AliExternalComparison();
a5ade541 25 virtual Long64_t Merge(TCollection *const li);
26 virtual void Add(AliExternalComparison *const comp);
d73981ad 27 virtual void Analyze();
28 virtual void Process(const AliExternalTrackParam *param0, const AliExternalTrackParam *param1);
29 virtual void Process(const AliExternalTrackParam *param0, TParticle *part);
30 virtual void Process(const AliExternalTrackParam *param0, TParticle *part, const AliTrackReference *ref);
31 //
32 virtual THnSparse * GetHisto(Int_t ivar, Int_t type);
33 void MakeComparisonTree(const char * outname);
34 static AliExternalTrackParam *MakeExternalParam(TParticle *part);
35 static AliExternalTrackParam *MakeExternalParam(TParticle *part, const AliTrackReference *ref);
36 Bool_t AcceptPair(const AliExternalTrackParam *param0, const AliExternalTrackParam *param1);
37
38 virtual void SetDefaultRange(Float_t scale=0.3, Float_t arm=160, Int_t nbins=200);
39 virtual void SetDefaultCuts();
d73981ad 40 //
9b25160c 41 void SetParameterRange(Int_t param, Float_t min, Float_t max, Int_t nbins);
d73981ad 42 void SetDistCut(Float_t dP0, Float_t dP1,Float_t dP2,Float_t dP3, Float_t dP4);
43 void SetPullDistCut(Float_t dnP0, Float_t dnP1,Float_t dnP2,Float_t dnP3, Float_t dnP4);
8a3aca82 44 void SetResolRange(Int_t param, Float_t min, Float_t max, Int_t nbins);
d73981ad 45
46protected:
47 void MakeHistos();
d73981ad 48 TObjArray * fResolHistos; // resolution histogram
49 TObjArray * fPullHistos; // pull histogram
50 TMatrixD * fRangeMatrix; // range matrix
51 TMatrixD * fCutMatrix; // cut matrix
52 //
d73981ad 53
54 ClassDef(AliExternalComparison, 1);
55};
56
57#endif
58
59