FairRoot/PandaRoot
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
PndMvdTimeWalkCorrTask Class Reference

#include <PndMvdTimeWalkCorrTask.h>

Inheritance diagram for PndMvdTimeWalkCorrTask:
PndSdsTimeWalkCorrTask PndSdsTask PndPersistencyTask

Public Member Functions

 PndMvdTimeWalkCorrTask ()
 
virtual ~PndMvdTimeWalkCorrTask ()
 
void SetBranchNames ()
 
void SetParContainers ()
 
 ClassDef (PndMvdTimeWalkCorrTask, 1)
 
InitStatus Init ()
 
void Exec (Option_t *opt)
 
virtual void FinishTask ()
 
virtual void SetInBranchId ()
 
void SetPersistency (Bool_t val=kTRUE)
 
Bool_t GetPersistency ()
 

Protected Member Functions

 ClassDef (PndSdsTimeWalkCorrTask, 1)
 
 ClassDef (PndSdsTask, 1)
 

Protected Attributes

TClonesArray * fDigiArray
 
TClonesArray * fDigiCorrArray
 
PndSdsPixelDigiParfDigiPar
 
PndSdsTotDigiParfDigiTotPar
 
PndSdsFEfFEModel
 
Int_t fVerbose
 
TString fInBranchName
 
TString fOutBranchName
 
TString fFolderName
 
Int_t fInBranchId
 
Int_t fOutBranchId
 

Detailed Description

Definition at line 16 of file PndMvdTimeWalkCorrTask.h.

Constructor & Destructor Documentation

PndMvdTimeWalkCorrTask::PndMvdTimeWalkCorrTask ( )

Definition at line 13 of file PndMvdTimeWalkCorrTask.cxx.

References PndPersistencyTask::SetPersistency().

13  :
14 PndSdsTimeWalkCorrTask("SDS TimeWalkCorrection Task")
15 {
16  SetPersistency(true);
17 }
void SetPersistency(Bool_t val=kTRUE)
PndMvdTimeWalkCorrTask::~PndMvdTimeWalkCorrTask ( )
virtual

Definition at line 21 of file PndMvdTimeWalkCorrTask.cxx.

21  {
22 
23 }

Member Function Documentation

PndMvdTimeWalkCorrTask::ClassDef ( PndMvdTimeWalkCorrTask  ,
 
)
PndSdsTask::ClassDef ( PndSdsTask  ,
 
)
protectedinherited
PndSdsTimeWalkCorrTask::ClassDef ( PndSdsTimeWalkCorrTask  ,
 
)
protectedinherited
void PndSdsTimeWalkCorrTask::Exec ( Option_t *  opt)
inherited

Definition at line 94 of file PndSdsTimeWalkCorrTask.cxx.

References PndSdsTimeWalkCorrTask::fDigiArray, PndSdsTimeWalkCorrTask::fDigiCorrArray, PndSdsTimeWalkCorrTask::fFEModel, PndSdsDigi::GetCharge(), PndSdsFE::GetTimeStep(), and PndSdsFE::GetTimeWalkFromTot().

95 {
96 
97  if ( ! fDigiCorrArray ) Fatal("Exec", "No ClusterArray");
98  fDigiCorrArray->Delete();
99 
100 
101  Int_t nPoints = fDigiArray->GetEntriesFast();
102 
103  for (Int_t iPoint = 0; iPoint < nPoints; iPoint++)
104  {
105  PndSdsDigiPixel myDigi = *(PndSdsDigiPixel*)(fDigiArray->At(iPoint));
106  myDigi.SetTimeStamp(myDigi.GetTimeStamp() - fFEModel->GetTimeWalkFromTot(myDigi.GetCharge()) - fFEModel->GetTimeStep()/2);
107  new ((*fDigiCorrArray)[iPoint])PndSdsDigiPixel(myDigi);
108  }
109 
110 }
Double_t GetCharge() const
Definition: PndSdsDigi.h:60
virtual double GetTimeStep()
Definition: PndSdsFE.h:60
virtual double GetTimeWalkFromTot(double tot)
Definition: PndSdsFE.cxx:69
Data class to store the digi output of a pixel module.
void PndSdsTimeWalkCorrTask::FinishTask ( )
virtualinherited

Definition at line 112 of file PndSdsTimeWalkCorrTask.cxx.

References PndSdsTimeWalkCorrTask::fDigiArray, PndSdsTimeWalkCorrTask::fDigiCorrArray, PndSdsTimeWalkCorrTask::fFEModel, PndSdsDigi::GetCharge(), PndSdsFE::GetTimeStep(), and PndSdsFE::GetTimeWalkFromTot().

113 {
114  if ( ! fDigiCorrArray ) Fatal("Exec", "No ClusterArray");
115  fDigiCorrArray->Delete();
116 
117 
118  Int_t nPoints = fDigiArray->GetEntriesFast();
119 
120  for (Int_t iPoint = 0; iPoint < nPoints; iPoint++)
121  {
122  PndSdsDigiPixel myDigi = *(PndSdsDigiPixel*)(fDigiArray->At(iPoint));
123  myDigi.SetTimeStamp(myDigi.GetTimeStamp() - fFEModel->GetTimeWalkFromTot(myDigi.GetCharge()) - fFEModel->GetTimeStep()/2);
124  new ((*fDigiCorrArray)[iPoint])PndSdsDigiPixel(myDigi);
125  }
126 }
Double_t GetCharge() const
Definition: PndSdsDigi.h:60
virtual double GetTimeStep()
Definition: PndSdsFE.h:60
virtual double GetTimeWalkFromTot(double tot)
Definition: PndSdsFE.cxx:69
Data class to store the digi output of a pixel module.
Bool_t PndPersistencyTask::GetPersistency ( )
inlineinherited

Definition at line 32 of file PndPersistencyTask.h.

References PndPersistencyTask::fPersistency.

Referenced by PndLmdPixelHitProducerFast::GetPersistance(), PndMdtDigitization::Init(), PndMdtHitProducerIdeal::Init(), PndMdtClusterTask::Init(), PndFtsHitProducerRealFast::Init(), PndSttHitProducerRealFast::Init(), PndDiscTaskReconstruction::Init(), PndRichHitProducer::Init(), PndSttHelixHitProducer::Init(), PndDiscTaskPID::Init(), PndIdealTrackFinder::Init(), PndSttMvdGemTracking::Init(), PndMdtTrkProducer::Init(), PndFtsHitProducerRealFull::Init(), PndLmdPixelClusterTask::Init(), PndSttHitProducerRealFull::Init(), PndLmdStripClusterTask::Init(), PndEmcApdHitProducer::Init(), PndMissingPzCleanerTask::Init(), PndEmcMakeRecoHit::Init(), PndEmcMakeClusterOnline::Init(), PndTrackSmearTask::Init(), PndEmcFWEndcapTimebasedWaveforms::Init(), PndSttHitProducerIdeal::Init(), PndEmcFWEndcapDigi::Init(), PndFtsHitProducerIdeal::Init(), PndEmcMakeCluster::Init(), PndMdtPointsToWaveform::Init(), PndDiscTaskDigitization::Init(), PndEmcMakeDigi::Init(), PndSdsTimeWalkCorrTask::Init(), PndLmdPixelHitProducerFast::Init(), PndDrcHitFinder::Init(), PndRichHitFinder::Init(), PndEmcMakeCorr::Init(), PndFtofHitProducerIdeal::Init(), PndEmcHitsToWaveform::Init(), PndSciTDigiTask::Init(), PndDrcHitProducerIdeal::Init(), PndSdsHitProducerIdeal::Init(), PndSciTHitProducerIdeal::Init(), PndEmcHitProducer::Init(), PndRecoMultiKalmanTask2::Init(), PndDrcHitProducerReal::Init(), PndDskFLGHitProducerIdeal::Init(), PndEmcTmpWaveformToDigi::Init(), PndDrcDigiTask::Init(), PndEmcWaveformToDigi::Init(), PndSttMatchTracks::Init(), PndEmcWaveformToCalibratedDigi::Init(), PndTrkTracking2::Init(), PndSttFindTracks::Init(), PndEmcMultiWaveformToCalibratedDigi::Init(), PndDrcTimeDigiTask::Init(), PndRecoKalmanTask2::Init(), PndEmcExpClusterSplitter::Init(), PndSdsNoiseProducer::Init(), PndFtsHoughTrackerTask::Init(), PndEmcPhiBumpSplitter::Init(), PndSdsHybridHitProducer::Init(), PndSdsIdealRecoTask::Init(), PndRecoMultiKalmanTask::Init(), PndSdsIdealClusterTask::Init(), PndRecoKalmanTask::Init(), PndSdsStripHitProducerDif::Init(), PndSdsStripHitProducer::Init(), PndGemDigitize::Init(), PndGemFindHits::Init(), PndSdsPixelClusterTask::Init(), PndSdsStripClusterTask::Init(), PndMvdGemTrackFinderOnHits::Init(), PndBarrelTrackFinder::Init(), PndEmcFullDigiTask::PndEmcFullDigiTask(), PndEmcMakeBump::PndEmcMakeBump(), PndUnassignedHitsTask::RegisterBranches(), PndMvdClusterTask::SetPersistance(), PndMvdDigiTask::SetPersistance(), PndEmcMakeBump::SetStorageOfData(), and PndEmcFullDigiTask::StoreDigi().

32 { return fPersistency; }
InitStatus PndSdsTimeWalkCorrTask::Init ( )
inherited

Definition at line 56 of file PndSdsTimeWalkCorrTask.cxx.

References PndSdsTimeWalkCorrTask::fDigiArray, PndSdsTimeWalkCorrTask::fDigiCorrArray, PndSdsTimeWalkCorrTask::fDigiPar, PndSdsTimeWalkCorrTask::fDigiTotPar, PndSdsTimeWalkCorrTask::fFEModel, PndSdsTask::fFolderName, PndSdsTask::fInBranchName, PndSdsTask::fOutBranchName, PndPersistencyTask::GetPersistency(), PndSdsTotDigiPar::Print(), PndSdsPixelDigiPar::Print(), PndSdsTask::SetBranchNames(), and PndSdsTask::SetInBranchId().

57 {
59 
60  fFEModel = new PndSdsFESimple();
61 
62  FairRootManager* ioman = FairRootManager::Instance();
63 
64  if ( ! ioman )
65  {
66  std::cout << "-E- PndSdsTimeWalkCorrTask::Init: "
67  << "RootManager not instantiated!" << std::endl;
68  return kFATAL;
69  }
70 
71  // Get input array
72  fDigiArray = (TClonesArray*) ioman->GetTClonesArray(fInBranchName);
73 
74  if ( ! fDigiArray )
75  {
76  std::cout << "-W- PndSdsTimeWalkCorrTask::Init: " << "No SDSDigi array!" << std::endl;
77  return kERROR;
78  }
79 
80  // Create output array
81  fDigiCorrArray = ioman->Register(fOutBranchName, "PndSdsDigiPixel", fFolderName, GetPersistency());
82 
83  SetInBranchId();
84 
85  fDigiPar->Print();
86  fDigiTotPar->Print();
87 
88  std::cout << "-I- PndSdsTimeWalkCorrTask: Initialisation successfull" << std::endl;
89 
90  return kSUCCESS;
91 }
TString fOutBranchName
Definition: PndSdsTask.h:40
PndSdsTotDigiPar * fDigiTotPar
PndSdsPixelDigiPar * fDigiPar
TString fInBranchName
Definition: PndSdsTask.h:39
virtual void SetBranchNames()=0
TString fFolderName
Definition: PndSdsTask.h:41
virtual void Print(std::ostream &out=std::cout) const
virtual void Print(std::ostream &out=std::cout) const
virtual void SetInBranchId()
Definition: PndSdsTask.h:30
void PndMvdTimeWalkCorrTask::SetBranchNames ( )
virtual

Implements PndSdsTask.

Definition at line 26 of file PndMvdTimeWalkCorrTask.cxx.

References PndSdsTask::fFolderName, PndSdsTask::fInBranchName, and PndSdsTask::fOutBranchName.

27 {
28  fInBranchName = "MVDPixelDigis"; // Name in digi_complete
29  fOutBranchName = "MVDDigisCorr"; // Name in reco_complete
30  fFolderName = "PndMvd";
31 }
TString fOutBranchName
Definition: PndSdsTask.h:40
TString fInBranchName
Definition: PndSdsTask.h:39
TString fFolderName
Definition: PndSdsTask.h:41
virtual void PndSdsTask::SetInBranchId ( )
inlinevirtualinherited

Reimplemented in PndSdsStripClusterTask, PndSdsPixelClusterTask, and PndSdsIdealClusterTask.

Definition at line 30 of file PndSdsTask.h.

References PndSdsTask::fInBranchId, PndSdsTask::fInBranchName, PndSdsTask::fOutBranchId, and PndSdsTask::fOutBranchName.

Referenced by PndSdsTimeWalkCorrTask::Init(), PndSdsRecoTask::Init(), PndSdsIdealRecoTask::Init(), PndLmdStripHitProducer::SetBranchNames(), PndMvdHitProducerIdeal::SetBranchNames(), PndLmdHybridHitProducer::SetBranchNames(), PndMvdHybridHitProducer::SetBranchNames(), and PndMvdStripHitProducer::SetBranchNames().

30  {
31  FairRootManager *ioman = FairRootManager::Instance();
32  fInBranchId = ioman->GetBranchId(fInBranchName);
33  fOutBranchId = ioman->GetBranchId(fOutBranchName);
34  std::cout << "InBranchId: " << fInBranchId << " for Branch: " << fInBranchName.Data() << std::endl;
35  std::cout << "OutBranchId: " << fOutBranchId << " for Branch: " << fOutBranchName.Data() << std::endl;
36  }
Int_t fInBranchId
Definition: PndSdsTask.h:43
TString fOutBranchName
Definition: PndSdsTask.h:40
Int_t fOutBranchId
Definition: PndSdsTask.h:44
TString fInBranchName
Definition: PndSdsTask.h:39
void PndMvdTimeWalkCorrTask::SetParContainers ( )

Definition at line 33 of file PndMvdTimeWalkCorrTask.cxx.

References PndSdsTimeWalkCorrTask::fDigiPar, PndSdsTimeWalkCorrTask::fDigiTotPar, rtdb, and PndSdsTimeWalkCorrTask::SetParContainers().

33  {
34 
35  FairRun* ana = FairRun::Instance();
36  FairRuntimeDb* rtdb=ana->GetRuntimeDb();
37  fDigiPar = (PndSdsPixelDigiPar*)(rtdb->getContainer("MVDPixelDigiPar"));
38  fDigiTotPar = (PndSdsTotDigiPar*)(rtdb->getContainer("MVDPixelTotDigiPar"));
40 
41 }
PndSdsTotDigiPar * fDigiTotPar
PndSdsPixelDigiPar * fDigiPar
Charge Digitization Parameter Class for SDS.
FairRuntimeDb * rtdb
Definition: hit_dirc.C:66
Digitization Parameter Class for SDS-Pixel part.
void PndPersistencyTask::SetPersistency ( Bool_t  val = kTRUE)
inlineinherited

Definition at line 31 of file PndPersistencyTask.h.

References PndPersistencyTask::fPersistency, and val.

Referenced by barrelTrackFinder(), digi_complete(), digi_complete_newSTT(), digiOnly_complete(), PndBarrelTrackFinder::PndBarrelTrackFinder(), PndCATracking::PndCATracking(), PndDrcHitFinder::PndDrcHitFinder(), PndEmc2DLocMaxFinder::PndEmc2DLocMaxFinder(), PndEmcExpClusterSplitter::PndEmcExpClusterSplitter(), PndEmcFullDigiTask::PndEmcFullDigiTask(), PndEmcFWEndcapDigi::PndEmcFWEndcapDigi(), PndEmcFWEndcapTimebasedWaveforms::PndEmcFWEndcapTimebasedWaveforms(), PndEmcHitProducer::PndEmcHitProducer(), PndEmcHitsToWaveform::PndEmcHitsToWaveform(), PndEmcMakeBump::PndEmcMakeBump(), PndEmcMakeCluster::PndEmcMakeCluster(), PndEmcMakeClusterOnline::PndEmcMakeClusterOnline(), PndEmcMakeDigi::PndEmcMakeDigi(), PndEmcMakeRecoHit::PndEmcMakeRecoHit(), PndEmcMultiWaveformToCalibratedDigi::PndEmcMultiWaveformToCalibratedDigi(), PndEmcPhiBumpSplitter::PndEmcPhiBumpSplitter(), PndEmcTmpWaveformToDigi::PndEmcTmpWaveformToDigi(), PndEmcWaveformToCalibratedDigi::PndEmcWaveformToCalibratedDigi(), PndEmcWaveformToDigi::PndEmcWaveformToDigi(), PndFtofHitProducerIdeal::PndFtofHitProducerIdeal(), PndFtsCATracking::PndFtsCATracking(), PndFtsHitProducerIdeal::PndFtsHitProducerIdeal(), PndFtsHitProducerRealFast::PndFtsHitProducerRealFast(), PndFtsHitProducerRealFull::PndFtsHitProducerRealFull(), PndFtsHoughTrackerTask::PndFtsHoughTrackerTask(), PndGemDigitize::PndGemDigitize(), PndGemFindHits::PndGemFindHits(), PndIdealTrackFinder::PndIdealTrackFinder(), PndLmdPixelClusterTask::PndLmdPixelClusterTask(), PndLmdPixelHitProducerFast::PndLmdPixelHitProducerFast(), PndMdtClusterTask::PndMdtClusterTask(), PndMdtDigitization::PndMdtDigitization(), PndMdtHitProducerIdeal::PndMdtHitProducerIdeal(), PndMdtPointsToWaveform::PndMdtPointsToWaveform(), PndMdtTrkProducer::PndMdtTrkProducer(), PndMissingPzCleanerTask::PndMissingPzCleanerTask(), PndMvdGemTrackFinderOnHits::PndMvdGemTrackFinderOnHits(), PndMvdHitProducerIdeal::PndMvdHitProducerIdeal(), PndMvdPixelClusterTask::PndMvdPixelClusterTask(), PndMvdTimeWalkCorrTask(), PndMvdToPix4ClusterTask::PndMvdToPix4ClusterTask(), PndRecoKalmanTask::PndRecoKalmanTask(), PndRecoKalmanTask2::PndRecoKalmanTask2(), PndRecoMultiKalmanTask::PndRecoMultiKalmanTask(), PndRecoMultiKalmanTask2::PndRecoMultiKalmanTask2(), PndRichHitFinder::PndRichHitFinder(), PndRichHitProducer::PndRichHitProducer(), PndSciTDigiTask::PndSciTDigiTask(), PndSciTHitProducerIdeal::PndSciTHitProducerIdeal(), PndSdsHitProducerIdeal::PndSdsHitProducerIdeal(), PndSdsHybridHitProducer::PndSdsHybridHitProducer(), PndSdsIdealClusterTask::PndSdsIdealClusterTask(), PndSdsIdealRecoTask::PndSdsIdealRecoTask(), PndSdsNoiseProducer::PndSdsNoiseProducer(), PndSdsPixelClusterTask::PndSdsPixelClusterTask(), PndSdsStripClusterTask::PndSdsStripClusterTask(), PndSdsStripHitProducer::PndSdsStripHitProducer(), PndSdsTimeWalkCorrTask::PndSdsTimeWalkCorrTask(), PndSttFindTracks::PndSttFindTracks(), PndSttHelixHitProducer::PndSttHelixHitProducer(), PndSttHitProducerIdeal::PndSttHitProducerIdeal(), PndSttHitProducerRealFast::PndSttHitProducerRealFast(), PndSttHitProducerRealFull::PndSttHitProducerRealFull(), PndSttMatchTracks::PndSttMatchTracks(), PndSttMvdGemTracking::PndSttMvdGemTracking(), PndTrackSmearTask::PndTrackSmearTask(), PndTrkTracking2::PndTrkTracking2(), reco(), reco_complete(), reco_complete_gf2(), reco_complete_newSTT(), reco_complete_sec(), recoideal_complete(), PndMvdClusterTask::SetPersistance(), PndMvdDigiTask::SetPersistance(), PndLmdPixelHitProducerFast::SetPersistance(), PndSdsHitProducerIdeal::SetPersistance(), PndSttMvdGemTracking::SetPersistenc(), PndMdtClusterTask::SetPersistence(), PndSttHelixHitProducer::SetPersistence(), PndMissingPzCleanerTask::SetPersistence(), PndFtsHitProducerRealFast::SetPersistence(), PndFtsHitProducerRealFull::SetPersistence(), PndSttHitProducerRealFull::SetPersistence(), PndSttHitProducerIdeal::SetPersistence(), PndSttHitProducerRealFast::SetPersistence(), PndFtsHitProducerIdeal::SetPersistence(), PndTrackSmearTask::SetPersistence(), PndSciTHitProducerIdeal::SetPersistence(), PndIdealTrackFinder::SetPersistence(), PndSttMatchTracks::SetPersistence(), PndSttFindTracks::SetPersistence(), PndFtsHoughTrackerTask::SetPersistence(), PndTrkTracking2::SetPersistence(), PndEmcMakeRecoHit::SetStorageOfData(), PndEmcFWEndcapDigi::SetStorageOfData(), PndEmcMakeClusterOnline::SetStorageOfData(), PndEmcFWEndcapTimebasedWaveforms::SetStorageOfData(), PndEmcMakeDigi::SetStorageOfData(), PndMdtPointsToWaveform::SetStorageOfData(), PndEmc2DLocMaxFinder::SetStorageOfData(), PndEmcMakeCluster::SetStorageOfData(), PndEmcHitsToWaveform::SetStorageOfData(), PndEmcMakeBump::SetStorageOfData(), PndEmcTmpWaveformToDigi::SetStorageOfData(), PndEmcWaveformToDigi::SetStorageOfData(), PndEmcWaveformToCalibratedDigi::SetStorageOfData(), PndEmcMultiWaveformToCalibratedDigi::SetStorageOfData(), PndEmcExpClusterSplitter::SetStorageOfData(), PndEmcPhiBumpSplitter::SetStorageOfData(), standard_tracking(), and PndEmcFullDigiTask::StoreDigi().

31 { fPersistency = val; }
Double_t val[nBoxes][nFEBox]
Definition: createCalib.C:11

Member Data Documentation

TClonesArray* PndSdsTimeWalkCorrTask::fDigiArray
protectedinherited
TClonesArray* PndSdsTimeWalkCorrTask::fDigiCorrArray
protectedinherited
PndSdsPixelDigiPar* PndSdsTimeWalkCorrTask::fDigiPar
protectedinherited
PndSdsTotDigiPar* PndSdsTimeWalkCorrTask::fDigiTotPar
protectedinherited
PndSdsFE* PndSdsTimeWalkCorrTask::fFEModel
protectedinherited
TString PndSdsTask::fFolderName
protectedinherited
Int_t PndSdsTask::fInBranchId
protectedinherited
TString PndSdsTask::fInBranchName
protectedinherited
Int_t PndSdsTask::fOutBranchId
protectedinherited

Definition at line 44 of file PndSdsTask.h.

Referenced by PndSdsTask::SetInBranchId().

TString PndSdsTask::fOutBranchName
protectedinherited
Int_t PndSdsTimeWalkCorrTask::fVerbose
protectedinherited

The documentation for this class was generated from the following files: