1 #ifndef GLOBALFIELDPROCESSOR_H
2 #define GLOBALFIELDPROCESSOR_H 1
8 #include <CLHEP/Matrix/Vector.h>
9 #include <CLHEP/Vector/ThreeVector.h>
12 #include <lccd/IConditionsChangeListener.hh>
16 #include "MagneticField.h"
17 #include "marlin/Processor.h"
23 class LCGenericObject;
70 virtual void check(lcio::LCEvent * evt );
144 std::vector<MagneticField*> _magnetic_fields;
152 bool _use_gear_bfield;
157 bool _use_cga_fields;
162 std::vector<std::string> _input_magnetic_fields;
166 std::vector<std::string> _input_electric_fields;
174 std::map<std::string, Field*> _field_by_typename;
178 std::vector<Field*> _active_magnetic_fields;
182 std::vector<Field*> _active_electric_fields;
186 std::vector<FieldNotifier*> _field_notifiers;
190 double _main_crossing_angle;
194 std::string _coil_position_collection;
204 #endif // GLOBALFIELDPROCESSOR_H
virtual void processRunHeader(lcio::LCRunHeader *run)
Called for every run.
Definition: GlobalFieldProcessor.cc:234
virtual void end()
Called after data processing for clean up.
Definition: GlobalFieldProcessor.cc:256
virtual ~GlobalFieldProcessor()
destructor
Definition: GlobalFieldProcessor.cc:84
Field : A base interface to an electric or magnetic field.
Definition: Field.h:22
bool register_field(Field *)
registers a field with the field manager
Definition: GlobalFieldProcessor.cc:292
static GlobalFieldProcessor & get_instance()
return the instance of the global field processor
Definition: GlobalFieldProcessor.cc:421
virtual void conditionsChanged(lcio::LCCollection *col)
from IConditionsChangeListener.
Definition: GlobalFieldProcessor.cc:440
CLHEP::HepVector get_global_magnetic_field(const CLHEP::HepVector &x) const
Returns the magnetic field (in T) at a given point and time in the detector.
Definition: GlobalFieldProcessor.cc:307
CLHEP::HepVector get_global_electric_field(const CLHEP::HepVector &x) const
Returns the electric field (in V) at a given point and time in the detector.
Definition: GlobalFieldProcessor.cc:360
double get_main_crossing_angle() const
returns the main crossing angle of the ILC model
Definition: GlobalFieldProcessor.cc:413
virtual void check(lcio::LCEvent *evt)
Called after the event has been processed.
Definition: GlobalFieldProcessor.cc:253
virtual void init()
Called at the begin of the job before anything is read.
Definition: GlobalFieldProcessor.cc:93
Definition: GlobalFieldProcessor.h:117
CLHEP::Hep3Vector get_global_electric_field_error() const
Returns the combined symmetric field errors (in T) of measured electric field maps.
Definition: GlobalFieldProcessor.cc:390
GlobalFieldProcessor()
constructor
Definition: GlobalFieldProcessor.cc:36
virtual void conditionsChanged(lcio::LCCollection *col)
from IConditionsChangeListener.
Definition: GlobalFieldProcessor.cc:459
virtual Processor * newProcessor()
used by Marlin to create a new processor
Definition: GlobalFieldProcessor.cc:87
virtual void processEvent(lcio::LCEvent *evt)
Called for every event - the working horse.
Definition: GlobalFieldProcessor.cc:250
Definition: GlobalFieldProcessor.h:132
GlobalFieldProcessor : This processor manages the fields used in MarlinTPC.
Definition: GlobalFieldProcessor.h:36
CLHEP::Hep3Vector get_global_magnetic_field_error() const
Returns the combined symmetric field errors (in T) of measured magnetic field maps.
Definition: GlobalFieldProcessor.cc:337