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

#include <PndDiscTaskDigitization.h>

Inheritance diagram for PndDiscTaskDigitization:
PndPersistencyTask

Public Member Functions

 PndDiscTaskDigitization ()
 
 PndDiscTaskDigitization (const char *name)
 
virtual ~PndDiscTaskDigitization ()
 
virtual InitStatus Init ()
 
virtual InitStatus ReInit ()
 
virtual void Exec (Option_t *opt)
 
virtual void FinishEvent ()
 
virtual void FinishTask ()
 
void RunTimeBased (Bool_t time_based)
 
void FilterParticleSpecies (Int_t pdg)
 
void SetRunMixed (Bool_t is_mixed=kTRUE)
 
void SetPersistency (Bool_t val=kTRUE)
 
Bool_t GetPersistency ()
 

Protected Attributes

TString branch_name_mc_point
 Branch name where mc points were stored. More...
 
TString branch_name_digits
 Branch name where digitized hits shall be stored. More...
 
TString folder_name_digits
 Folder name for output in root file. More...
 
Int_t mc_point_branch_id
 Cache branch id of the mc point branch for linking with FairLink. More...
 
TClonesArray * tclarr_mc_points
 
TClonesArray * tclarr_particle_tracks_in
 to cache the pointer to input TClonesArray returned by IO manager. More...
 
TClonesArray * tclarr_particle_tracks_out
 
TClonesArray * array
 
std::set< int > particle_types
 
FairWriteoutBuffer * writeout_buffer
 particle types to filter in output More...
 
FairMCEventHeader * fMcEventHeader
 
Bool_t is_run_mixed
 
Bool_t is_time_based
 Time based buffering on/off. More...
 
Bool_t is_persistent
 Write buffer to disc on/off. More...
 
DiscDIRC_Photodetectorphoto_detector
 

Detailed Description

Definition at line 36 of file PndDiscTaskDigitization.h.

Constructor & Destructor Documentation

PndDiscTaskDigitization::PndDiscTaskDigitization ( )

Definition at line 43 of file PndDiscTaskDigitization.cxx.

References array, branch_name_digits, branch_name_mc_point, folder_name_digits, particle_types, and tclarr_particle_tracks_out.

43  : PndPersistencyTask("PndDiscTaskDigitization"), mc_point_branch_id(0), tclarr_mc_points(NULL), writeout_buffer(NULL), fMcEventHeader(NULL), is_time_based(kTRUE), is_persistent(kTRUE)
44 #ifndef USESENSORGRID
45  ,pde_interpolator(0, ROOT::Math::Interpolation::kLINEAR)
46 #endif
47 {
48  particle_types.insert(1);
49 
50  //Defining the TClonesArrays
51  tclarr_particle_tracks_out = new TClonesArray("PndDiscParticleMCPoint"); //TClonesArray for MCTruth tracks
52  array = new TClonesArray("PndDiscDigitizedHit"); //TClonesArray for digitized hits
53 
54  //Defining the branch- and foldernames
55  branch_name_mc_point = "DiscSensorMCPoint";
56  branch_name_digits = "DiscDigit";
57  folder_name_digits = "DiscDIRC";
58 }
FairWriteoutBuffer * writeout_buffer
particle types to filter in output
TString branch_name_mc_point
Branch name where mc points were stored.
TString folder_name_digits
Folder name for output in root file.
FairMCEventHeader * fMcEventHeader
Int_t mc_point_branch_id
Cache branch id of the mc point branch for linking with FairLink.
TClonesArray * tclarr_particle_tracks_out
Bool_t is_persistent
Write buffer to disc on/off.
TString branch_name_digits
Branch name where digitized hits shall be stored.
Bool_t is_time_based
Time based buffering on/off.
PndDiscTaskDigitization::PndDiscTaskDigitization ( const char *  name)
PndDiscTaskDigitization::~PndDiscTaskDigitization ( )
virtual

Definition at line 63 of file PndDiscTaskDigitization.cxx.

References writeout_buffer.

64 {
65  if(writeout_buffer != NULL) delete writeout_buffer;
66 }
FairWriteoutBuffer * writeout_buffer
particle types to filter in output

Member Function Documentation

void PndDiscTaskDigitization::Exec ( Option_t *  opt)
virtual

Definition at line 294 of file PndDiscTaskDigitization.cxx.

References array, SensorGrid::SensorGridPhotodetector::Detect(), Double_t, SensorGrid::SensorGridPhotodetector::GetGrid(), PndDiscSensorMCPoint::GetTotalReflectionAngle(), gGeoManager, hit_x, i, PndDiscParticleMCPoint::is_primary, is_run_mixed, mc_point_branch_id, n_phase_sellmeier(), particle_types, photo_detector, photon_momentum, Pi, SensorGrid::SensorGridBase::PixelToPosition(), PndDiscParticleMCPoint::pos_in_inside, PndDiscDigitizedHit::Print(), res, sin(), sqrt(), tclarr_mc_points, tclarr_particle_tracks_in, and tclarr_particle_tracks_out.

295 {
296  PndDiscSensorMCPoint * mc_point = NULL;
297  Int_t i = 0, n_mc_points = tclarr_mc_points->GetEntriesFast();
298  FairEventHeader* event_header = (FairEventHeader*)FairRootManager::Instance()->GetObject("EventHeader.");
299  Int_t input_file_id = event_header->GetInputFileId();
300 
301  // --------------------------------------------------------
302  // some fixed design parameters:
303  // --------------------------------------------------------
304  //Double_t rms_time_ns = 0.021; //[R.K. 01/2017] unused variable?
305  Double_t binning_ns = 0.050;
306  Double_t radiator_thickness = 2.0;
307  Double_t rms_roughness_nm = 1.5;
308  //Double_t dead_time = 20.0; //[R.K. 01/2017] unused variable?
309  // need refractive index for reflection probability:
310  Double_t sellmeier_coeff [6] = {0.473115591, 0.631038719, 0.906404498, 0.012995717, 0.0041280992, 98.7685322};
311  // --------------------------------------------------------
312 
313  array->Clear();
314 
315  for(i=0; i<n_mc_points; i++)
316  {
317  mc_point = (PndDiscSensorMCPoint*)tclarr_mc_points->At(i); //Get Entries from Sensor
318  Double_t photon_momentum = sqrt( (mc_point->GetPx()*mc_point->GetPx()) + (mc_point->GetPy()*mc_point->GetPy()) + (mc_point->GetPz()*mc_point->GetPz()));
319  Double_t wavelength_nm = (1.239841939/photon_momentum)*1E-06;
320  Double_t rindex = n_phase_sellmeier(sellmeier_coeff, wavelength_nm*1E-3);
321  Double_t sin_iref_angle = sin(mc_point->GetTotalReflectionAngle());
322  Double_t reflection_probability = 1. - pow(4.*TMath::Pi()*rms_roughness_nm * sin_iref_angle * rindex/wavelength_nm, 2);
323 
324  // Apply reflection probability
325  Int_t n_reflections = (Int_t)(mc_point->GetLength()*sin_iref_angle/radiator_thickness);
326  if( gRandom->Uniform(1.0) > pow( reflection_probability, n_reflections) ) continue;
327 
328  // --------------------------------------------------------
329  // Detection - digitize the hit ...
330  // --------------------------------------------------------
331 
332  double absolute_time = mc_point->GetTime() + FairRootManager::Instance()->GetEventTime();
333  double tdc_time_ns;
334  SensorGrid::PixelInfo pixel_info;
335 
336  int pixel_id = photo_detector->Detect(mc_point->GetX(), mc_point->GetY(), absolute_time, wavelength_nm, pixel_info, tdc_time_ns);
337  if( pixel_id < 0) continue;
338 
339  tdc_time_ns = (floor(tdc_time_ns/binning_ns) + 0.5) * binning_ns;
340 
341  Double_t hit_x, hit_z;
342  photo_detector->GetGrid()->PixelToPosition(pixel_info, hit_x, hit_z);
343 
344  int classifier = 0;
345  if(is_run_mixed && input_file_id == 0) classifier = 2;
346 
347  Int_t copy_number = mc_point->GetDetectorID();
348  div_t res = div(copy_number, 27);
349  Int_t detector_id = res.quot;
350  Int_t readout_id = res.rem;
351 
352  if(gGeoManager == NULL)
353  {
354  LOG(FATAL) << "gGeoManager is NULL - cannot retrieve geo information !!!";
355  }
356 
357  PndDiscDigitizedHit * digit = new PndDiscDigitizedHit(FairLink(input_file_id, event_header->GetMCEntryNumber(), mc_point_branch_id, i),
358  detector_id, readout_id, readout_id*3 + 3-pixel_info.column_on_grid, pixel_info.pixel_number,
359  pixel_info.row_on_grid, hit_z, tdc_time_ns, absolute_time, classifier);
360 
361  // buffer is responsible to delete digit:
362  //writeout_buffer->FillNewData(digit, absolute_time, absolute_time+dead_time);
363 
364  digit = new((*array)[array->GetEntriesFast()]) PndDiscDigitizedHit(*digit);
365  digit->Print();
366  }
367 
368  if( (!is_run_mixed || input_file_id > 0) && particle_types.size() > 0)
369  {
370  PndDiscParticleMCPoint * particle_mc_point;
371  n_mc_points = tclarr_particle_tracks_in->GetEntries();
372  for(i=0; i<n_mc_points; i++)
373  {
374  particle_mc_point = (PndDiscParticleMCPoint*) tclarr_particle_tracks_in->At(i);
375  //if(particle_types.count(abs(particle_mc_point->pdgCode)) == 0) continue;
376  if(particle_mc_point->pos_in_inside!=0) continue; //check if created inside
377  if(!particle_mc_point->is_primary) continue; //check if particle is primary
378  particle_mc_point = new((*tclarr_particle_tracks_out)[tclarr_particle_tracks_out->GetEntriesFast()]) PndDiscParticleMCPoint(*particle_mc_point);
379  Double_t particle_tof = particle_mc_point->GetTime();
380  particle_mc_point->SetTime(particle_tof + FairRootManager::Instance()->GetEventTime());
381  }
382  }
383 }
virtual void Print(std::ostream &out=std::cout)
Double_t n_phase_sellmeier(Double_t *coeff, Double_t lambda_um)
Int_t res
Definition: anadigi.C:166
Int_t i
Definition: run_full.C:25
TVector3 photon_momentum
friend F32vec4 sqrt(const F32vec4 &a)
Definition: P4_F32vec4.h:29
DiscDIRC_Photodetector * photo_detector
friend F32vec4 sin(const F32vec4 &a)
Definition: P4_F32vec4.h:111
TGeoManager * gGeoManager
Int_t mc_point_branch_id
Cache branch id of the mc point branch for linking with FairLink.
Double_t
TClonesArray * tclarr_particle_tracks_out
virtual bool PixelToPosition(PixelInfo &pixel_info, double &x, double &y) const =0
const Double_t & GetTotalReflectionAngle()
FairMCPoint forces the implementation.
int Detect(double const &hit_pos_x, double const &hit_pos_y, double const &hit_time_ns, double const &wavelength_nm, PixelInfo &pixel_info, double &smeared_time_ns) const
Handle photon detection:
Double_t Pi
TClonesArray * tclarr_particle_tracks_in
to cache the pointer to input TClonesArray returned by IO manager.
void PndDiscTaskDigitization::FilterParticleSpecies ( Int_t  pdg)

Definition at line 398 of file PndDiscTaskDigitization.cxx.

References particle_types.

399 {
400  particle_types.insert(abs(pdg_code));
401 }
void PndDiscTaskDigitization::FinishEvent ( )
virtual

Definition at line 386 of file PndDiscTaskDigitization.cxx.

References tclarr_particle_tracks_out.

387 {
389  FinishEvents();
390 }
TClonesArray * tclarr_particle_tracks_out
void PndDiscTaskDigitization::FinishTask ( )
virtual

Definition at line 393 of file PndDiscTaskDigitization.cxx.

394 {
395 }
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(), PndDiscTaskReconstruction::Init(), PndRichHitProducer::Init(), PndSttHitProducerRealFast::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(), 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(), PndRecoMultiKalmanTask2::Init(), PndEmcHitProducer::Init(), PndDrcHitProducerReal::Init(), PndDskFLGHitProducerIdeal::Init(), PndEmcTmpWaveformToDigi::Init(), PndDrcDigiTask::Init(), PndEmcWaveformToDigi::Init(), PndSttMatchTracks::Init(), PndEmcWaveformToCalibratedDigi::Init(), PndTrkTracking2::Init(), PndSttFindTracks::Init(), PndEmcMultiWaveformToCalibratedDigi::Init(), PndRecoKalmanTask2::Init(), PndDrcTimeDigiTask::Init(), PndEmcExpClusterSplitter::Init(), PndFtsHoughTrackerTask::Init(), PndSdsNoiseProducer::Init(), PndEmcPhiBumpSplitter::Init(), PndSdsIdealRecoTask::Init(), PndSdsHybridHitProducer::Init(), PndRecoMultiKalmanTask::Init(), PndSdsIdealClusterTask::Init(), PndRecoKalmanTask::Init(), PndSdsStripHitProducerDif::Init(), PndGemDigitize::Init(), PndSdsStripHitProducer::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 PndDiscTaskDigitization::Init ( )
virtual

Definition at line 79 of file PndDiscTaskDigitization.cxx.

References array, branch_name_mc_point, DiscDIRC_Photodetector::DESIGN_LRD, PndPersistencyTask::GetPersistency(), mc_point_branch_id, particle_types, photo_detector, DiscDIRC_Photodetector::SetPDE(), tclarr_mc_points, tclarr_particle_tracks_in, and tclarr_particle_tracks_out.

80 {
81  // Get IO manager instance:
82  FairRootManager* io_manager = FairRootManager::Instance();
83  if(!io_manager)
84  {
85  LOG(FATAL) << "FairRootManager instance is NULL !!!";
86  return kFATAL;
87  }
88 
89  // Get sensor hits from input tree:
90  tclarr_mc_points = (TClonesArray*) io_manager->GetObject(branch_name_mc_point);
91  if(!tclarr_mc_points)
92  {
93  LOG(ERROR) << "Branch "<< branch_name_mc_point.Data() <<" is not accessible through FairRootManager.";
94  return kERROR;
95  }
96  mc_point_branch_id = io_manager->GetBranchId(branch_name_mc_point);
97 
98  // Create the buffer for time based simulation:
99  //writeout_buffer = new DiscDIRC_WriteoutBuffer(branch_name_digits, folder_name_digits, is_persistent);
100  //writeout_buffer->SetVerbose(1);
101  //writeout_buffer = (DiscDIRC_WriteoutBuffer*)io_manager->RegisterWriteoutBuffer(branch_name_digits, writeout_buffer);
102 
103  // Set buffering mode:
104  //writeout_buffer->ActivateBuffering(is_time_based);
105 
106  // MCTruth output if particle types are set
107  if(particle_types.size() > 0)
108  {
109  // get particles from input tree
110  tclarr_particle_tracks_in = (TClonesArray*) io_manager->GetObject("DiscParticleMCPoint");
112  {
113  LOG(ERROR) << "GetObject(\"DiscParticleMCPoint\") returned NULL";
114  return kERROR;
115  }
116 
117  // create output branch for particle tracks
118  //tclarr_particle_tracks_out = new TClonesArray("DiscParticleMCPoint");
119  FairRootManager::Instance()->Register("DiscMCTruthTracks","DiscDIRC", tclarr_particle_tracks_out, GetPersistency());
120  FairRootManager::Instance()->Register("DiscDigit","DiscDIRC", array, GetPersistency());
121  }
122 
123 
124  // Initialize PDE values of Sensor:
125  {
126  double pde_wl_nm[74] =
127  {
128  269.949916528,
129  275.959933222,
130  280.634390651,
131  285.30884808,
132  289.983305509,
133  295.993322204,
134  302.003338898,
135  308.013355593,
136  313.355592654,
137  320.701168614,
138  326.711185309,
139  333.388981636,
140  338.731218698,
141  346.74457429,
142  351.41903172,
143  358.764607679,
144  366.110183639,
145  375.459098497,
146  382.804674457,
147  389.482470785,
148  398.16360601,
149  407.512520868,
150  414.190317195,
151  420.20033389,
152  424.207011686,
153  430.217028381,
154  434.89148581,
155  440.233722871,
156  442.904841402,
157  446.911519199,
158  452.25375626,
159  456.260434057,
160  459.59933222,
161  462.938230384,
162  468.948247078,
163  474.958263773,
164  478.964941569,
165  483.639398998,
166  488.98163606,
167  492.320534224,
168  498.998330551,
169  504.340567613,
170  508.347245409,
171  513.021702838,
172  517.696160267,
173  522.370617696,
174  525.041736227,
175  530.383973289,
176  533.722871452,
177  539.065108514,
178  545.075125209,
179  550.41736227,
180  556.427378965,
181  563.772954925,
182  569.782971619,
183  577.128547579,
184  585.809682805,
185  593.823038397,
186  601.168614357,
187  608.514190317,
188  610.517529215,
189  615.859766277,
190  621.202003339,
191  630.550918197,
192  637.228714524,
193  644.574290484,
194  652.587646077,
195  659.933222037,
196  670.61769616,
197  676.627712855,
198  682.637729549,
199  689.983305509,
200  696.661101836,
201  702.003338898
202  };
203 
204  double pde_efficiency[74] =
205  {
206  0.152452,
207  0.159915,
208  0.168443,
209  0.173774,
210  0.179104,
211  0.182836,
212  0.186034,
213  0.189232,
214  0.191898,
215  0.195096,
216  0.200959,
217  0.206823,
218  0.208955,
219  0.210021,
220  0.211087,
221  0.214819,
222  0.220682,
223  0.224947,
224  0.227612,
225  0.227079,
226  0.223348,
227  0.219616,
228  0.215352,
229  0.211620,
230  0.208955,
231  0.204691,
232  0.198827,
233  0.194563,
234  0.190832,
235  0.186567,
236  0.180704,
237  0.176439,
238  0.171109,
239  0.166311,
240  0.157249,
241  0.147655,
242  0.141258,
243  0.136461,
244  0.132196,
245  0.128998,
246  0.124733,
247  0.122601,
248  0.119403,
249  0.114606,
250  0.108742,
251  0.100746,
252  0.095416,
253  0.085821,
254  0.078891,
255  0.068230,
256  0.061301,
257  0.054904,
258  0.050107,
259  0.045842,
260  0.040512,
261  0.037313,
262  0.032516,
263  0.028252,
264  0.025586,
265  0.022388,
266  0.021855,
267  0.020256,
268  0.018124,
269  0.015991,
270  0.013859,
271  0.013326,
272  0.011727,
273  0.010661,
274  0.009062,
275  0.007463,
276  0.006397,
277  0.005330,
278  0.004264,
279  0.003731
280  };
281 
282 #ifdef USESENSORGRID
284  photo_detector->SetPDE(74, pde_wl_nm, pde_efficiency);
285 #else
286  //pde_interpolator.SetData(74, pde_wl_nm, pde_efficiency);
287 #endif
288  }
289 
290  return kSUCCESS;
291 }
DiscDIRC_Photodetector * photo_detector
TString branch_name_mc_point
Branch name where mc points were stored.
void SetPDE(int n_entries, const double *wavelength_nm, const double *pde)
Int_t mc_point_branch_id
Cache branch id of the mc point branch for linking with FairLink.
TClonesArray * tclarr_particle_tracks_out
TClonesArray * tclarr_particle_tracks_in
to cache the pointer to input TClonesArray returned by IO manager.
InitStatus PndDiscTaskDigitization::ReInit ( )
virtual

Definition at line 71 of file PndDiscTaskDigitization.cxx.

72 {
73  return kSUCCESS;
74 }
void PndDiscTaskDigitization::RunTimeBased ( Bool_t  time_based)
inline

Definition at line 50 of file PndDiscTaskDigitization.h.

References is_time_based.

Referenced by digi(), and digi_complete().

50 { is_time_based = time_based; }
Bool_t is_time_based
Time based buffering on/off.
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::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 PndDiscTaskDigitization::SetRunMixed ( Bool_t  is_mixed = kTRUE)
inline
Parameters
is_mixedRun in mixed input mode

Definition at line 54 of file PndDiscTaskDigitization.h.

References is_run_mixed.

55  { is_run_mixed = is_mixed; }

Member Data Documentation

TClonesArray* PndDiscTaskDigitization::array
protected

Definition at line 66 of file PndDiscTaskDigitization.h.

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

TString PndDiscTaskDigitization::branch_name_digits
protected

Branch name where digitized hits shall be stored.

Definition at line 59 of file PndDiscTaskDigitization.h.

Referenced by PndDiscTaskDigitization().

TString PndDiscTaskDigitization::branch_name_mc_point
protected

Branch name where mc points were stored.

Definition at line 58 of file PndDiscTaskDigitization.h.

Referenced by Init(), and PndDiscTaskDigitization().

FairMCEventHeader* PndDiscTaskDigitization::fMcEventHeader
protected

Definition at line 71 of file PndDiscTaskDigitization.h.

TString PndDiscTaskDigitization::folder_name_digits
protected

Folder name for output in root file.

Definition at line 60 of file PndDiscTaskDigitization.h.

Referenced by PndDiscTaskDigitization().

Bool_t PndDiscTaskDigitization::is_persistent
protected

Write buffer to disc on/off.

Definition at line 75 of file PndDiscTaskDigitization.h.

Bool_t PndDiscTaskDigitization::is_run_mixed
protected

Definition at line 73 of file PndDiscTaskDigitization.h.

Referenced by Exec(), and SetRunMixed().

Bool_t PndDiscTaskDigitization::is_time_based
protected

Time based buffering on/off.

Definition at line 74 of file PndDiscTaskDigitization.h.

Referenced by RunTimeBased().

Int_t PndDiscTaskDigitization::mc_point_branch_id
protected

Cache branch id of the mc point branch for linking with FairLink.

Definition at line 62 of file PndDiscTaskDigitization.h.

Referenced by Exec(), and Init().

std::set<int> PndDiscTaskDigitization::particle_types
protected
DiscDIRC_Photodetector* PndDiscTaskDigitization::photo_detector
protected

Definition at line 79 of file PndDiscTaskDigitization.h.

Referenced by Exec(), and Init().

TClonesArray* PndDiscTaskDigitization::tclarr_mc_points
protected

Definition at line 63 of file PndDiscTaskDigitization.h.

Referenced by Exec(), and Init().

TClonesArray* PndDiscTaskDigitization::tclarr_particle_tracks_in
protected

to cache the pointer to input TClonesArray returned by IO manager.

Definition at line 64 of file PndDiscTaskDigitization.h.

Referenced by Exec(), and Init().

TClonesArray* PndDiscTaskDigitization::tclarr_particle_tracks_out
protected

Definition at line 65 of file PndDiscTaskDigitization.h.

Referenced by Exec(), FinishEvent(), Init(), and PndDiscTaskDigitization().

FairWriteoutBuffer* PndDiscTaskDigitization::writeout_buffer
protected

particle types to filter in output

Buffer for so calles "time based simulation"

Definition at line 69 of file PndDiscTaskDigitization.h.

Referenced by ~PndDiscTaskDigitization().


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