New ITS code for new structure and simulations.
[u/mrichter/AliRoot.git] / ITS / AliITSClusterFinder.cxx
CommitLineData
b0f5e3fc 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
17#include "AliITSClusterFinder.h"
18#include "TTree.h"
19#include "AliRun.h"
20#include <TCanvas.h>
21#include <TH1.h>
22#include <TPad.h>
23#include <TGraph.h>
24#include <TPostScript.h>
25#include <TMinuit.h>
26
27class AliITSRecPointNew;
28
29//----------------------------------------------------------
30
31//----------------------------------------------------------
32
33ClassImp(AliITSClusterFinder)
34
35AliITSClusterFinder::AliITSClusterFinder
36(AliITSsegmentation *seg, AliITSresponse *response, TClonesArray *digits)
37{
38 // cluster finder
39 fSegmentation=seg;
40 fResponse=response;
41 fMap = 0;
42
43 fDigits=digits;
44 fNdigits = fDigits->GetEntriesFast();
45
46 fNRawClusters=0;
47
48 SetNperMax();
49 SetClusterSize();
50 SetDeclusterFlag();
51
52 fNPeaks=-1;
53}
54
55//----------------------------------------------------------
56AliITSClusterFinder::AliITSClusterFinder()
57{
58 // constructor
59 fResponse=0;
60
61 fDigits=0;
62 fNdigits = 0;
63
64 fNRawClusters=0;
65 fMap = 0;
66
67
68 SetNperMax();
69 SetClusterSize();
70 SetDeclusterFlag();
71
72 fNPeaks=-1;
73}
74
75//__________________________________________________________________________
76AliITSClusterFinder::AliITSClusterFinder(const AliITSClusterFinder &source){
77 // Copy Constructor
78 if(&source == this) return;
79 this->fDigits = source.fDigits;
80 this->fNdigits = source.fNdigits;
81 this->fResponse = source.fResponse;
82 this->fSegmentation = source.fSegmentation;
83 this->fNRawClusters = source.fNRawClusters;
84 this->fMap = source.fMap;
85 this->fNperMax = source.fNperMax;
86 this->fDeclusterFlag = source.fDeclusterFlag;
87 this->fClusterSize = source.fClusterSize;
88 this->fNPeaks = source.fNPeaks;
89 return;
90}
91
92//_________________________________________________________________________
93AliITSClusterFinder&
94 AliITSClusterFinder::operator=(const AliITSClusterFinder &source) {
95 // Assignment operator
96 if(&source == this) return *this;
97 this->fDigits = source.fDigits;
98 this->fNdigits = source.fNdigits;
99 this->fResponse = source.fResponse;
100 this->fSegmentation = source.fSegmentation;
101 this->fNRawClusters = source.fNRawClusters;
102 this->fMap = source.fMap;
103 this->fNperMax = source.fNperMax;
104 this->fDeclusterFlag = source.fDeclusterFlag;
105 this->fClusterSize = source.fClusterSize;
106 this->fNPeaks = source.fNPeaks;
107 return *this;
108}
109
110//----------------------------------------------------------
111void AliITSClusterFinder::AddCluster(Int_t branch, AliITSRawCluster *c)
112{
113 //
114 // Add a raw cluster copy to the list
115 //
116 AliITS *iTS=(AliITS*)gAlice->GetModule("ITS");
117 iTS->AddCluster(branch,c);
118 fNRawClusters++;
119}
120
121
122
123
124