2 #define InhEFieldCalculationProcessor_h 1
9 #include "marlin/Processor.h"
15 #include "gearimpl/RectangularPadRowLayout.h"
16 #include "gearimpl/FixedPadSizeDiskLayout.h"
19 #include "EFieldVector.h"
29 virtual Processor* newProcessor()
52 virtual void check(lcio::LCEvent * evt) ;
66 std::string _inputCollectionName;
67 std::string _outputCollectionName;
71 int _xBins, _yBins, _zBins;
73 double _xBinLength, _yBinLength, _zBinLength;
75 gear::PadRowLayout2D
const* _padLayout;
76 gear::RectangularPadRowLayout
const* _rectPL;
77 gear::FixedPadSizeDiskLayout
const* _circPL;
virtual void processEvent(lcio::LCEvent *evt)
Called for every event - the working horse.
Definition: InhEFieldCalculationProcessor.cc:135
marlintpc::EFieldVector * calculateEField(int x, int y, int z, LCCollection *ions)
Calculates the EField in the TPC at the given grid point in units of V/cm.
Definition: InhEFieldCalculationProcessor.cc:200
virtual void end()
Called after data processing for clean-up.
Definition: InhEFieldCalculationProcessor.cc:192
virtual void processRunHeader(lcio::LCRunHeader *run)
Called for every run.
Definition: InhEFieldCalculationProcessor.cc:119
Definition: InhEFieldCalculationProcessor.h:24
virtual void init()
Called at the begin of the job before anything is read.
Definition: InhEFieldCalculationProcessor.cc:81
Definition: EFieldVector.h:19