// A simple clusterfinder for pixel detectors #include "PndMvdSimplePixelClusterFinder.h" #include "PndSdsIdealChargeConversion.h" #include "PndSdsTotChargeConversion.h" #include "FairLogger.h" PndMvdSimplePixelClusterFinder::PndMvdSimplePixelClusterFinder(TString parName, TString totParName, Int_t verbose):PndSdsSimplePixelClusterFinder(), fParName(parName), fTotParName(totParName), fDigiPar(NULL), fTotDigiPar(NULL) { fVerbose = verbose; FairRun* ana = FairRun::Instance(); FairRuntimeDb* rtdb=ana->GetRuntimeDb(); fDigiPar = (PndSdsPixelDigiPar*)(rtdb->getContainer(fParName.Data())); fTotDigiPar = (PndSdsTotDigiPar*)(rtdb->getContainer(fTotParName.Data())); SetParameters(); }; PndMvdSimplePixelClusterFinder::PndMvdSimplePixelClusterFinder(PndSdsPixelDigiPar* digiPar, PndSdsTotDigiPar* totPar):PndSdsSimplePixelClusterFinder(), fParName(""), fTotParName(""), fDigiPar(digiPar), fTotDigiPar(totPar) { SetParameters(); } void PndMvdSimplePixelClusterFinder::SetParameters() { if (fDigiPar->GetChargeConvMethod() == 0){ if(fVerbose>0) std::cout<<"Info in : ideal charge conversion"<GetNoise()); } else if (fDigiPar->GetChargeConvMethod() == 1){ if(fVerbose>0) std::cout<<"Info in : TOT charge conversion"<GetChargingTime(), fTotDigiPar->GetConstCurrent(), fDigiPar->GetThreshold(), fTotDigiPar->GetClockFrequency(), fVerbose); } else{ std::cout<<"Error in : charge conversion method not defined, use ideal converter..."<GetNoise()); } fcols = fDigiPar->GetFECols(); frows = fDigiPar->GetFERows(); fradius = fDigiPar->GetClustRadius(); }