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

#include <PndSciTDigiTask.h>

Inheritance diagram for PndSciTDigiTask:
PndPersistencyTask

Public Member Functions

 PndSciTDigiTask ()
 
 PndSciTDigiTask (Double_t dt, Double_t deadtime)
 
 ~PndSciTDigiTask ()
 
virtual void SetParContainers ()
 
virtual InitStatus Init ()
 
void RunTimeBased ()
 
void SetDeadTime (Double_t deadtime)
 
void SetTimeResolution (Double_t dt)
 
void SetPileupTime (Double_t pileuptime)
 
void SetBuffering (Bool_t B)
 
virtual void Exec (Option_t *opt)
 
void smear (Double_t &time, Double_t &dt)
 
void SetPersistency (Bool_t val=kTRUE)
 
Bool_t GetPersistency ()
 

Protected Member Functions

void Register ()
 
void Reset ()
 
void ProduceHits ()
 
 ClassDef (PndSciTDigiTask, 1)
 

Protected Attributes

TString fInBranchName
 
TString fOutBranchName
 
TString fSortedOutBranchName
 
TClonesArray * fPointArray
 
TClonesArray * fHitArray
 
PndSciTHitWriteoutBufferfDataBuffer
 
PndGeoSciTParfGeoPar
 
PndGeoHandlingfGeoH
 
Double_t fdt
 
Double_t fDeadtime
 
Double_t fPileupTime
 
Bool_t fTimeOrderedDigi
 set to kTRUE to use the time ordering of the output data. More...
 
Bool_t fActivateBuffering
 

Detailed Description

Definition at line 36 of file PndSciTDigiTask.h.

Constructor & Destructor Documentation

PndSciTDigiTask::PndSciTDigiTask ( )

Default constructor

Definition at line 27 of file PndSciTDigiTask.cxx.

References fActivateBuffering, fDeadtime, fdt, fGeoH, fInBranchName, fOutBranchName, fPileupTime, fSortedOutBranchName, fTimeOrderedDigi, and PndPersistencyTask::SetPersistency().

27  :
28  PndPersistencyTask("PndSciT Hit Producer")
29 {
30  fInBranchName = "SciTPoint";
31  fOutBranchName = "SciTHit";
32  fSortedOutBranchName = "SciTSortedHit";
33 
34  fTimeOrderedDigi = kFALSE;
35  fActivateBuffering = kTRUE;
36  SetPersistency(kTRUE);
37 
38  fGeoH = NULL;
39 
40  fdt = 0.075; //auto time resolution 0.075 ns
41  fDeadtime = 1000.0; // Tile dead time after a hit in ns
42  fPileupTime = 10.0; // Time of possible Pile up after a Hit in ns
43 
44 }
PndGeoHandling * fGeoH
void SetPersistency(Bool_t val=kTRUE)
Bool_t fActivateBuffering
TString fOutBranchName
Double_t fPileupTime
Bool_t fTimeOrderedDigi
set to kTRUE to use the time ordering of the output data.
TString fSortedOutBranchName
PndSciTDigiTask::PndSciTDigiTask ( Double_t  dt,
Double_t  deadtime 
)

Definition at line 48 of file PndSciTDigiTask.cxx.

References fActivateBuffering, fDeadtime, fdt, fGeoH, fInBranchName, fOutBranchName, fPileupTime, fSortedOutBranchName, fTimeOrderedDigi, and PndPersistencyTask::SetPersistency().

48  :
49  PndPersistencyTask("Ideal PndSciT Hit Producer")
50 {
51  fInBranchName = "SciTPoint";
52  fOutBranchName = "SciTHit";
53  fSortedOutBranchName = "SciTSortedHit";
54 
55  fTimeOrderedDigi = kFALSE;
56  fActivateBuffering = kTRUE;
57  SetPersistency(kTRUE);
58 
59  fGeoH = NULL;
60 
61  fdt = dt;
62  fDeadtime = deadtime;
63  fPileupTime = 10.0;
64 }
PndGeoHandling * fGeoH
void SetPersistency(Bool_t val=kTRUE)
Bool_t fActivateBuffering
TString fOutBranchName
Double_t fPileupTime
Bool_t fTimeOrderedDigi
set to kTRUE to use the time ordering of the output data.
TString fSortedOutBranchName
PndSciTDigiTask::~PndSciTDigiTask ( )

Destructor

Definition at line 68 of file PndSciTDigiTask.cxx.

69 {
70 }

Member Function Documentation

PndSciTDigiTask::ClassDef ( PndSciTDigiTask  ,
 
)
protected
void PndSciTDigiTask::Exec ( Option_t *  opt)
virtual

Virtual method Exec

Definition at line 141 of file PndSciTDigiTask.cxx.

References Double_t, fActivateBuffering, fDataBuffer, fDeadtime, fdt, fGeoH, fHitArray, fInBranchName, fPointArray, fTimeOrderedDigi, fVerbose, PndSciTPoint::GetDetName(), PndGeoHandling::GetSensorDimensionsShortId(), PndGeoHandling::LocalToMasterShortId(), PndGeoHandling::MasterToLocalShortId(), point, smear(), sqrt(), and TString.

142 {
143  // Reset output array
144  if ( ! fHitArray )
145  Fatal("Exec", "No HitArray");
146 
147  //fHitArray->Clear();
148 
149  // Declare some variables
150 
151  PndSciTPoint *point = NULL;
152 
153  Double_t nBC408 = 1.58;
154 
155 
156  Int_t detectorID; // Detector ID /shortID
157  TString detectorName;
158  Double_t mcTime,eventTime,hitTime,detectingTime;
159  Double_t sipm1 , sipm2, dSiPm;
160 
161  TVector3 zeroVector(0,0,0);
162 
163  TVector3 detectorPosition;
164  TVector3 mcPosition;
165  Double_t xSiPm1, xSiPm2;
166  TVector3 hitPosition;
167  Double_t hitXPosition;
168  TVector3 sensorDim; // Sensor dimension always in half the lenghts in root!
169  TVector3 dHitPosition;
170 
171  //calculate invariant values outside of a loop:
172 
173  dSiPm = sqrt(2) * fdt; // time resolution of a single (row of) SiPm
174  Double_t cBC408 = 299792458.0/nBC408*(100/(1.0e9)); // Light in BC408 Scintillator in [cm/ns]
175 
176  // Loop over SciTPoints
177  Int_t
178  nPoints = fPointArray->GetEntriesFast();
179 
180  for (Int_t iPoint = 0; iPoint < nPoints; iPoint++)
181  {
182  point = (PndSciTPoint*) fPointArray->At(iPoint);
183  if (fVerbose>0) std::cout << " Ideal Hit Producer -Point-: " << point << std::endl;
184  if ( ! point)
185  continue;
186 
187  // Detector ID
188  detectorID = point->GetDetectorID();
189  detectorName = point->GetDetName();
190 
191  point->Position(mcPosition);
192  mcPosition = fGeoH->MasterToLocalShortId(mcPosition, detectorID);
193 
194  sensorDim = fGeoH->GetSensorDimensionsShortId(detectorID);
195 
196  xSiPm1=sensorDim(0)+mcPosition(0);
197  xSiPm2=sensorDim(0)-mcPosition(0);
198 
199  // produce realistic timestamp
200 
201  mcTime = point->GetTime();//Get MCTime
202  eventTime = FairRootManager::Instance()->GetEventTime();
203  hitTime = mcTime + eventTime;
204 
205  sipm1 = hitTime + xSiPm1/cBC408;
206  sipm2 = hitTime + xSiPm2/cBC408;
207 
208  smear(sipm1,dSiPm);// smear with fdt to creat realistic Time
209  smear(sipm2,dSiPm);// smear with fdt to creat realistic Time
210 
211  detectingTime = (sipm1+sipm2)/2.0-sensorDim(0)/cBC408;
212 
213  // HitPosition in the middle of the sensor = Detector Position
214 
215  detectorPosition = fGeoH->LocalToMasterShortId(zeroVector, detectorID);
216 
217  hitXPosition = (sipm1-sipm2)/2*cBC408;
218  if (hitXPosition > sensorDim(0)){
219  hitXPosition = sensorDim(0);
220  }
221  else if (hitXPosition < -sensorDim(0)){
222  hitXPosition = -sensorDim(0);
223  }
224  hitPosition.SetXYZ(hitXPosition,0.,0.);
225 
226  hitPosition = fGeoH->LocalToMasterShortId(hitPosition, detectorID);
227 
228  // sensor Dimensions equivalent to the potential error of the hitPosition in the center of the Tile. Attention,in real its no Gaussian shaped distribution but an rectangual!!
229 
230  dHitPosition =(1/sqrt(12))*2*sensorDim; //without x position by time difference
231 
232  dHitPosition.SetX(fdt*cBC408);
233 
234 
235 
236  // Create new hit
237  // new ((*fHitArray)[iPoint]) PndSciTHit(detectorID, detectorName,
238  // time+FairRootManager::Instance()->GetEventTime(), fdt,
239  // hitPosition,dHitPosition,
240  // iPoint,
241  // point->GetEnergyLoss());
242 
243  PndSciTHit *tempHit = new PndSciTHit(detectorID, detectorName,
244  detectingTime, fdt,
245  sipm1, dSiPm, sipm2, dSiPm,
246  hitPosition,dHitPosition,
247  iPoint,
248  point->GetEnergyLoss());
249  if (fTimeOrderedDigi){
250  tempHit->ResetLinks();
251  FairEventHeader* evtHeader = (FairEventHeader*)FairRootManager::Instance()->GetObject("EventHeader.");
252  tempHit->AddLink(FairLink(evtHeader->GetInputFileId(), FairRootManager::Instance()->GetEntryNr(), fInBranchName, iPoint));
253 
254  tempHit->AddLink(FairLink(-1, FairRootManager::Instance()->GetEntryNr(), "EventHeader.", -1));
255  }
256 
257  fDataBuffer->FillNewData(tempHit,
258  hitTime,
259  hitTime+fDeadtime);
260 
261  delete tempHit;
262 
263  } // Loop over MCPoints
264 
265  //fHitArray->Sort();
266  // Event summary
267  if (fVerbose>1) std::cout << "-I- PndSciTDigiTask: " << nPoints << " SciTPoints, "
268  << nPoints << " Hits created." << std::endl;
269 
270  //---------- Write Out ALL Data after every Event in EventBased Version only -------
271 
272  if (fTimeOrderedDigi==kFALSE && fActivateBuffering==kTRUE) fDataBuffer->WriteOutAllData();
273 
274 
275 }
int fVerbose
Definition: poormantracks.C:24
PndGeoHandling * fGeoH
friend F32vec4 sqrt(const F32vec4 &a)
Definition: P4_F32vec4.h:29
TClonesArray * fPointArray
TClonesArray * fHitArray
TVector3 GetSensorDimensionsShortId(Int_t shortId)
Double_t
Bool_t fActivateBuffering
TClonesArray * point
Definition: anaLmdDigi.C:29
PndSciTHitWriteoutBuffer * fDataBuffer
void smear(Double_t &time, Double_t &dt)
TVector3 MasterToLocalShortId(const TVector3 &master, const Int_t &shortId)
TVector3 LocalToMasterShortId(const TVector3 &local, const Int_t &shortId)
Bool_t fTimeOrderedDigi
set to kTRUE to use the time ordering of the output data.
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(), PndRichHitProducer::Init(), PndSttHitProducerRealFast::Init(), PndDiscTaskReconstruction::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(), 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 PndSciTDigiTask::Init ( )
virtual

Definition at line 73 of file PndSciTDigiTask.cxx.

References fActivateBuffering, fDataBuffer, fInBranchName, fOutBranchName, fPointArray, and PndPersistencyTask::GetPersistency().

74 {
75  // Get RootManager
76  FairRootManager* ioman = FairRootManager::Instance();
77 
78  if ( ! ioman )
79  {
80  std::cout << "-E- PndSciTDigiTask::Init: "
81  << "RootManager not instantiated!" << std::endl;
82  return kFATAL;
83  }
84 
85  // Get input array
86  fPointArray = (TClonesArray*) ioman->GetObject(fInBranchName);
87 
88  if ( ! fPointArray )
89  {
90  std::cout << "-W- PndSciTDigiTask::Init: "
91  << "No SciTPoint array!" << std::endl;
92  return kERROR;
93  }
94  //eventbased
95  // Create and register output array
96  //fHitArray = ioman->Register(OutBranchName, ClassName, FolderName, kTRUE);
97  //fHitArray = ioman->Register("SciTHit", "PndSciTHit", "SciT", kTRUE);
98 
99  //time and event based simulation:
100  // fDataBuffer = new PndSciTHitWriteoutBuffer(fOutBranchName, fFolderName", fPersistance);
102  fDataBuffer = (PndSciTHitWriteoutBuffer*)ioman->RegisterWriteoutBuffer(fOutBranchName, fDataBuffer);
103  fDataBuffer->ActivateBuffering(fActivateBuffering);// Buffering always activated to handle the Pile up in Event and Time based Version
104 
105  std::cout << "-I- PndSciTDigiTask: Intialisation successfull" << std::endl;
106  return kSUCCESS;
107 }
TClonesArray * fPointArray
Bool_t fActivateBuffering
PndSciTHitWriteoutBuffer * fDataBuffer
TString fOutBranchName
void PndSciTDigiTask::ProduceHits ( )
protected
void PndSciTDigiTask::Register ( )
protected
void PndSciTDigiTask::Reset ( )
protected
void PndSciTDigiTask::RunTimeBased ( )

Definition at line 110 of file PndSciTDigiTask.cxx.

References Add(), fOutBranchName, fSortedOutBranchName, and fTimeOrderedDigi.

Referenced by digi(), run_digi(), run_reco(), run_reco_timebased(), tb_digi_complete(), and tb_digi_scit().

110  {
111 
112  fTimeOrderedDigi = kTRUE;
113  this->Add(new PndSciTHitSorterTask(2000, 1, fOutBranchName, fSortedOutBranchName, "SciT"));
114 }
mychain Add("run.root")
TString fOutBranchName
Bool_t fTimeOrderedDigi
set to kTRUE to use the time ordering of the output data.
TString fSortedOutBranchName
void PndSciTDigiTask::SetBuffering ( Bool_t  B)
inline

Definition at line 58 of file PndSciTDigiTask.h.

References fActivateBuffering.

Bool_t fActivateBuffering
void PndSciTDigiTask::SetDeadTime ( Double_t  deadtime)
inline

Definition at line 54 of file PndSciTDigiTask.h.

References fDeadtime.

Referenced by run_digi(), run_reco(), run_reco_timebased(), and tb_digi_scit().

54 {fDeadtime = deadtime;};//in ns default val = 1000
void PndSciTDigiTask::SetParContainers ( )
virtual

Virtual method Init

Definition at line 120 of file PndSciTDigiTask.cxx.

References fGeoH, PndGeoHandling::Instance(), and PndGeoHandling::SetParContainers().

121 {
122  // Get Base Container
123  // FairRun* ana = FairRun::Instance();
124  //FairRuntimeDb* rtdb=ana->GetRuntimeDb();
125 
126  if ( fGeoH == NULL ){
127  std::cout << "ScitTil fGeoH is loading" << std::endl;
129  }
130  else std::cout << "ScitTil fGeoH is already defind but shouldn't" << std::endl;
131  if ( fGeoH == NULL ){
132  std::cout << "ScitTil fGeoH was loaded but is still NULL" << std::endl;
133  }
135 
136  return;
137 }
PndGeoHandling * fGeoH
virtual void SetParContainers()
static PndGeoHandling * Instance()
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::PndMvdTimeWalkCorrTask(), PndMvdToPix4ClusterTask::PndMvdToPix4ClusterTask(), PndRecoKalmanTask::PndRecoKalmanTask(), PndRecoKalmanTask2::PndRecoKalmanTask2(), PndRecoMultiKalmanTask::PndRecoMultiKalmanTask(), PndRecoMultiKalmanTask2::PndRecoMultiKalmanTask2(), PndRichHitFinder::PndRichHitFinder(), PndRichHitProducer::PndRichHitProducer(), 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
void PndSciTDigiTask::SetPileupTime ( Double_t  pileuptime)
inline

Definition at line 56 of file PndSciTDigiTask.h.

References fPileupTime.

56 {fPileupTime = pileuptime;}; // in ns default val = 0.1
Double_t fPileupTime
void PndSciTDigiTask::SetTimeResolution ( Double_t  dt)
inline

Definition at line 55 of file PndSciTDigiTask.h.

References fdt.

Referenced by run_digi(), run_reco(), run_reco_timebased(), and tb_digi_scit().

55 {fdt = dt;}; // in ns default val = 0.075
void PndSciTDigiTask::smear ( Double_t time,
Double_t dt 
)

smear a 3d vector

Definition at line 279 of file PndSciTDigiTask.cxx.

References Double_t, and t.

Referenced by Exec().

280 {
282 
283  Double_t t = time;
284  //std::cout<<" time "<<time<<std::endl;
285  Double_t sigt;
286 
287  sigt=gRandom->Gaus(0,dt);
288  t += sigt;
289  time = t;
290  return;
291 }
Double_t
TTree * t
Definition: bump_analys.C:13

Member Data Documentation

Bool_t PndSciTDigiTask::fActivateBuffering
protected

Definition at line 84 of file PndSciTDigiTask.h.

Referenced by Exec(), Init(), PndSciTDigiTask(), and SetBuffering().

PndSciTHitWriteoutBuffer* PndSciTDigiTask::fDataBuffer
protected

Definition at line 77 of file PndSciTDigiTask.h.

Referenced by Exec(), and Init().

Double_t PndSciTDigiTask::fDeadtime
protected

Definition at line 81 of file PndSciTDigiTask.h.

Referenced by Exec(), PndSciTDigiTask(), and SetDeadTime().

Double_t PndSciTDigiTask::fdt
protected

Definition at line 81 of file PndSciTDigiTask.h.

Referenced by Exec(), PndSciTDigiTask(), and SetTimeResolution().

PndGeoHandling* PndSciTDigiTask::fGeoH
protected

Definition at line 79 of file PndSciTDigiTask.h.

Referenced by Exec(), PndSciTDigiTask(), and SetParContainers().

PndGeoSciTPar* PndSciTDigiTask::fGeoPar
protected

Definition at line 78 of file PndSciTDigiTask.h.

TClonesArray* PndSciTDigiTask::fHitArray
protected

Output array of PndSciTHits

Definition at line 75 of file PndSciTDigiTask.h.

Referenced by Exec().

TString PndSciTDigiTask::fInBranchName
protected

Definition at line 67 of file PndSciTDigiTask.h.

Referenced by Exec(), Init(), and PndSciTDigiTask().

TString PndSciTDigiTask::fOutBranchName
protected

Definition at line 68 of file PndSciTDigiTask.h.

Referenced by Init(), PndSciTDigiTask(), and RunTimeBased().

Double_t PndSciTDigiTask::fPileupTime
protected

Definition at line 81 of file PndSciTDigiTask.h.

Referenced by PndSciTDigiTask(), and SetPileupTime().

TClonesArray* PndSciTDigiTask::fPointArray
protected

Input array of PndSciTPoints

Definition at line 72 of file PndSciTDigiTask.h.

Referenced by Exec(), and Init().

TString PndSciTDigiTask::fSortedOutBranchName
protected

Definition at line 69 of file PndSciTDigiTask.h.

Referenced by PndSciTDigiTask(), and RunTimeBased().

Bool_t PndSciTDigiTask::fTimeOrderedDigi
protected

set to kTRUE to use the time ordering of the output data.

Definition at line 83 of file PndSciTDigiTask.h.

Referenced by Exec(), PndSciTDigiTask(), and RunTimeBased().


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