- void AddCluster(Int_t ic, Int_t nclust, TMatrixD *aij_clu_clu, Bool_t *used, Int_t *clustNumb, Int_t &nCoupled); // add a cluster to the group of coupled clusters
- Double_t MinGroupCoupl(Int_t nCoupled, Int_t *clustNumb, TMatrixD *aij_clu_clu, Int_t *minGroup); // find group of cluster with min. coupling to others
- Int_t SelectPad(Int_t nCoupled, Int_t nForFit, Int_t *clustNumb, Int_t *clustFit, TMatrixD *aij_clu_clu); //select pads for fit
- void Merge(Int_t nForFit, Int_t nCoupled, Int_t *clustNumb, Int_t *clustFit, TObjArray **clusters, TMatrixD *aij_clu_clu, TMatrixD *aij_clu_pad); // merge clusters
- Int_t Fit(Int_t nfit, Int_t *clustFit, TObjArray **clusters, Double_t *parOk); // do the fitting
- void UpdatePads(Int_t nfit, Double_t *par); // subtract fitted charges from pads
- void AddRawCluster(Double_t x, Double_t y, Double_t fmin); // add new raw cluster
- Int_t FindLocalMaxima(Int_t *localMax, Double_t *maxVal); // find local maxima
- void FlagLocalMax(TH2D *hist, Int_t i, Int_t j, Int_t *isLocalMax); // flag local max
- void FindCluster(Int_t *localMax, Int_t iMax); // find cluster around local max
+ void AddCluster(Int_t ic, Int_t nclust, TMatrixD *aijcluclu, Bool_t *used, Int_t *clustNumb, Int_t &nCoupled); // add a cluster to the group of coupled clusters
+ Double_t MinGroupCoupl(Int_t nCoupled, Int_t *clustNumb, TMatrixD *aijcluclu, Int_t *minGroup); // find group of cluster with min. coupling to others
+ Int_t SelectPad(Int_t nCoupled, Int_t nForFit, Int_t *clustNumb, Int_t *clustFit, TMatrixD *aijcluclu); //select pads for fit
+ void Merge(Int_t nForFit, Int_t nCoupled, Int_t *clustNumb, Int_t *clustFit, TObjArray **clusters, TMatrixD *aijcluclu, TMatrixD *aijclupad); // merge clusters
+ Int_t Fit(Int_t iSimple, Int_t nfit, Int_t *clustFit, TObjArray **clusters, Double_t *parOk); // do the fitting
+ void UpdatePads(Int_t nfit, Double_t *par); // subtract fitted charges from pads
+ void AddRawCluster(Double_t x, Double_t y, Double_t qTot, Double_t fmin, Int_t nfit, Int_t *tracks, Double_t sigx, Double_t sigy, Double_t dist); // add new reconstructed cluster
+ Int_t FindLocalMaxima(TObjArray *pixArray, Int_t *localMax, Double_t *maxVal); // find local maxima
+ void FlagLocalMax(TH2D *hist, Int_t i, Int_t j, Int_t *isLocalMax); // flag local max
+ void FindCluster(Int_t *localMax, Int_t iMax); // find cluster around local max
+ void AddVirtualPad(); // add virtual pads for some clusters (if necessary)
+ void PadsInXandY(Int_t &nInX, Int_t &nInY); // get number of pads in X and Y
+ // This function is used for fitting
+ void Fcn1(Int_t &npar, Double_t *gin, Double_t &f, Double_t *par, Int_t iflag);
+ void Simple(); // process simple cluster
+
+ void Errors(AliMUONRawCluster *clus); // correct coordinates and eval. errors
+ void Errors(Int_t ny, Int_t nx, Int_t iby, Int_t ibx, Double_t fmin,
+ Double_t wy, Double_t wx, Int_t iover,
+ Double_t dyc, Double_t dxc, Double_t qtot,
+ Double_t &yrec, Double_t &xrec, Double_t &erry, Double_t &errx);
+
+ // Dummy methods for overloading warnings
+ void FindCluster(int, int, int, AliMUONRawCluster&) {return;}
+ void FindLocalMaxima(AliMUONRawCluster*) {return;}
+ void Split(AliMUONRawCluster*) {return;}
+ void AddRawCluster(AliMUONRawCluster&) {return;}
+
+ClassDef(AliMUONClusterFinderAZ,0) // cluster finder in MUON arm of ALICE
+};