1 #ifndef ChargeDistributionProcessor_h
2 #define ChargeDistributionProcessor_h 1
10 #include "marlin/Processor.h"
105 static std::list< std::pair< VoxelTPC::VoxelIndex, int > > *
fetchVoxelList();
120 bool _outputIsPersistent;
129 const gear::TPCParameters* _tpcParameters;
141 static std::list< std::pair< VoxelTPC::VoxelIndex, int > >*
_fetchedList;
static std::list< std::pair< VoxelTPC::VoxelIndex, int > > * fetchVoxelList()
A function to directly get the voxels from the internal map.
Definition: ChargeDistributionProcessor.cc:454
virtual void processRunHeader(lcio::LCRunHeader *run)
Called for every run.
Definition: ChargeDistributionProcessor.cc:236
virtual void processEvent(lcio::LCEvent *evt)
Called for every event - the working horse.
Definition: ChargeDistributionProcessor.cc:252
float _EInd
Induction field.
Definition: ChargeDistributionProcessor.h:119
This processor takes the coordinates of the drifted electrons and the charge from amplification and s...
Definition: ChargeDistributionProcessor.h:76
double _inductionFactor
Size of induction on neighbour pads in percent of charge on central pad.
Definition: ChargeDistributionProcessor.h:148
bool _improveMemoryFootprint
Flag whether to use the memory saving shotcut.
Definition: ChargeDistributionProcessor.h:143
double _zBinLength
Length of a z-bin in ns.
Definition: ChargeDistributionProcessor.h:125
The VoxelTPC is a helper class containing a std::map of all TPCVoxels which contain charge...
Definition: VoxelTPC.h:42
double _bunchIntervall
Time between two bunch crossings in ns.
Definition: ChargeDistributionProcessor.h:124
double _sigma
If true the output collection is written.
Definition: ChargeDistributionProcessor.h:121
float _ETrans1
First transfer field.
Definition: ChargeDistributionProcessor.h:117
float _BField
Strength of the magnetic field in T.
Definition: ChargeDistributionProcessor.h:123
double _sigmaOverride
Optional override parameter for the charge broadening.
Definition: ChargeDistributionProcessor.h:144
float _ETrans2
Second transfer field.
Definition: ChargeDistributionProcessor.h:118
static std::list< std::pair< VoxelTPC::VoxelIndex, int > > * _fetchedList
A subset of voxels which has been removed (fetched) from the VoxelTPC.
Definition: ChargeDistributionProcessor.h:141
virtual void init()
Called at the begin of the job before anything is read.
Definition: ChargeDistributionProcessor.cc:153
bool _isFirstEvent
Test if this is the first event to be processed at all.
Definition: ChargeDistributionProcessor.h:134
double _ionisationEnergy
Ionisation energy of the gas.
Definition: ChargeDistributionProcessor.h:136
int _writeAfterNEvents
Number of overlayed events after which the TPC is read out.
Definition: ChargeDistributionProcessor.h:127
std::string _altTPCConditionsName
Name of the newly created TPCConditonsCollection if the original one is not writeable.
Definition: ChargeDistributionProcessor.h:114
double _BOverride
Optional override parameter for the magnetic field.
Definition: ChargeDistributionProcessor.h:145
std::string _inputCollectionName
Input/output collection names.
Definition: ChargeDistributionProcessor.h:111
double _sigmaLong
Value of the longitudinal defocussing.
Definition: ChargeDistributionProcessor.h:122
std::string _outputCollectionName
Name of the output collection.
Definition: ChargeDistributionProcessor.h:112
std::string _tpcConditionsColName
Name of collection containing the TPCConditions.
Definition: ChargeDistributionProcessor.h:113
std::string _gas
Name of the gas mixture.
Definition: ChargeDistributionProcessor.h:115