TMarker *pMark=new TMarker(X(),Y(),5); pMark->SetUniqueID(fSt);pMark->SetMarkerColor(kBlue); pMark->Draw();
}
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
-void AliHMPIDCluster::FitFunc(Int_t &iNpars, Double_t* /*deriv*/, Double_t &chi2, Double_t *par, Int_t )
+void AliHMPIDCluster::FitFunc(Int_t &iNpars, Double_t* /*deriv*/, Double_t &chi2, Double_t *par, Int_t /* */)
{
// Cluster fit function
// par[0]=x par[1]=y par[2]=q for the first Mathieson shape
/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
* See cxx source for full Copyright notice */
//
+// Implementation class: AliHMPIDCluster
+//
+// class to reconstruct clester in HMPID
+// it is forseen to Solve (split) the raw cluster in
+// several clusters (# local maxima in the raw cluster -> deconvolution
+// according to a Mathieson profile of the charge
+//
#include "AliHMPIDDigit.h" //DigAdd()
#include <TObjArray.h> //DigAdd()
class TClonesArray; //Solve()
//framework part
void Draw (Option_t *opt="" ); //overloaded TObject::Print() to draw cluster in current canvas
void Print (Option_t *opt="" )const; //overloaded TObject::Print() to print cluster info
- static void FitFunc(Int_t &, Double_t *, Double_t &, Double_t *, Int_t); //fit function to be used by MINUIT
+ static void FitFunc(Int_t &iNpars, Double_t* /*deriv*/, Double_t &chi2, Double_t *par, Int_t /* */);//fit function to be used by MINUIT
//private part
Int_t Box ( )const{return fBox; }
void CoG ( ); //calculates center of gravity
* See cxx source for full Copyright notice */
// Class of HMPID to manage digits ---> pads
-//
-//
-
+//.
+//.
+//.
#include <AliDigit.h> //base class
#include "TMath.h" //Mathieson()
-#include "TRandom.h" //IsOverTh()
#include <AliBitPacking.h> //Raw()
static const Float_t fgkMinPcY[6]; //limits PC
static const Float_t fgkMaxPcX[6]; //limits PC
static const Float_t fgkMaxPcY[6]; //limits PC
- static const Float_t fgk1; //Mathieson parameters
- static const Float_t fgk2; //
- static const Float_t fgkSqrtK3; //
- static const Float_t fgk4; //
- Int_t fPad; //absolute pad number
+ static const Float_t fgk1; //Mathieson parameters
+ static const Float_t fgk2; //...
+ static const Float_t fgkSqrtK3; //...
+ static const Float_t fgk4; //...
+ Int_t fPad; //absolute pad number
Float_t fQ; //QDC value, fractions are permitted for summable procedure
ClassDef(AliHMPIDDigit,4) //HMPID digit class
};//class AliHMPIDDigit
* about the suitability of this software for any purpose. It is *
* provided "as is" without express or implied warranty. *
**************************************************************************/
-//
-//
-//
-//
-#include "AliHMPIDDigitizer.h"
-#include "AliHMPIDDigit.h"
-#include "AliHMPID.h"
+//.
+//.
+//.
+//.
+//.
+#include <AliRun.h>
#include <AliRunLoader.h>
#include "AliRunDigitizer.h"
#include <AliLoader.h>
#include <AliLog.h>
+#include "AliHMPIDDigitizer.h"
+#include "AliHMPIDDigit.h"
+#include "AliHMPID.h"
+#include <TRandom.h>
ClassImp(AliHMPIDDigitizer)
AliRunLoader *pOutRunLoader = AliRunLoader::GetRunLoader(fManager->GetOutputFolderName()); //open output stream (only 1 possible)
AliLoader *pOutRichLoader = pOutRunLoader->GetLoader("HMPIDLoader"); //take output HMPID loader
- AliHMPID *pOutRich = (AliHMPID*)pOutRunLoader->GetAliRun()->GetDetector("HMPID"); //take output HMPID
+ AliRun *pArun = pOutRunLoader->GetAliRun();
+ AliHMPID *pOutRich = (AliHMPID*)pArun->GetDetector("HMPID"); //take output HMPID
pOutRichLoader->MakeTree("D"); pOutRich->MakeBranch("D"); //create TreeD in output stream
Sdi2Dig(&sdigs,pOutRich->DigLst());
// Returns: none
TClonesArray *pLst[7]; Int_t iCnt[7];
-
+
+ TRandom *rnd = new TRandom();
for(Int_t i=0;i<7;i++){
pLst[i]=(TClonesArray*)(*pDigLst)[i];
iCnt[i]=0; if(pLst[i]->GetEntries()!=0) AliErrorClass("Some of digits lists is not empty"); //in principle those lists should be empty
for (Int_t iCh=AliHMPIDDigit::kMinCh;iCh<=AliHMPIDDigit::kMaxCh;iCh++)
for (Int_t iPc=AliHMPIDDigit::kMinPc;iPc<=AliHMPIDDigit::kMaxPc;iPc++)
for(Int_t iPx=AliHMPIDDigit::kMinPx;iPx<=AliHMPIDDigit::kMaxPx;iPx++)
- for(Int_t iPy=AliHMPIDDigit::kMinPy;iPy<=AliHMPIDDigit::kMaxPy;iPy++) arrNoise[iCh][iPc][iPx][iPy] = gRandom->Gaus(0,1);
+ for(Int_t iPy=AliHMPIDDigit::kMinPy;iPy<=AliHMPIDDigit::kMaxPy;iPy++) arrNoise[iCh][iPc][iPx][iPy] = rnd->Gaus(0,1);
}
pSdiLst->Sort();
#define AliHMPIDDigitizer_h
/* Copyright(c) 1998-2000, ALICE Experiment at CERN, All rights reserved. *
* See cxx source for full Copyright notice */
-//
+//.
+//.
+//.
-#include <AliRun.h>
#include <AliDigitizer.h>
-class AliRunDigitizer;
+
class TClonesArray;
class TObjArray;
#include <AliHit.h> //base class
#include <TVector3.h> //ctor
-#include <TRandom.h> //QdcTot()
#include "AliHMPIDDigit.h" //QdcTot()
+#include <TRandom.h>
+
class AliHMPIDHit : public AliHit // TObject-AliHit-AliHMPIDHit
{
public: