#include <SdStationPositionCorrectionOG/SdStationPositionCorrection.h>
Public Types | |
enum | ResultFlag { eSuccess, eFailure, eBreakLoop, eContinueLoop } |
Flag returned by module methods to the RunController. More... | |
enum | VersionInfoType { eFilename = 1, eRevisionNumber = 2, eDate = 3, eTime = 4, eLastEditor = 5 } |
Different types of version info that can be retrieved from GetVersionInfo. More... | |
Public Member Functions | |
fwk::VModule::ResultFlag | Finish () |
Finish: invoked at end of the run (NOT end of the event) More... | |
utl::Stopwatch & | GetStopwatch () |
const utl::Stopwatch & | GetStopwatch () const |
std::string | GetVersionInfo (const VersionInfoType v) const |
Retrieve different sorts of module version info. More... | |
fwk::VModule::ResultFlag | Init () |
Initialize: invoked at beginning of run (NOT beginning of event) More... | |
void | InitTiming () |
fwk::VModule::ResultFlag | Run (evt::Event &event) |
Run: invoked once per event. More... | |
ResultFlag | RunWithTiming (evt::Event &event) |
virtual | ~SdStationPositionCorrection () |
Static Public Member Functions | |
static std::string | GetResultFlagByName (const ResultFlag flag) |
Protected Types | |
enum | InfoLevel { eInfoNone = 0, eInfoFinal = 1, eInfoIntermediate = 2, eInfoDebug = 3 } |
Protected Attributes | |
int | fInfoLevel = 0 |
Private Types | |
typedef std::map< unsigned long int, utl::Triple > | SpatialOffset |
typedef std::map< unsigned int, SpatialOffset > | StationSpatialOffsetMap |
Private Member Functions | |
REGISTER_MODULE ("SdStationPositionCorrection", SdStationPositionCorrection) | |
Private Attributes | |
utl::Triple | fEffectiveVarianceCoefficients |
double | fEffectiveVerticalDelay = 0 |
StationSpatialOffsetMap | fStationSpatialOffset |
This module tries to correct for time offset which is a result of a wrong position set into the local GPS unit when switched to the position fixed mode of operation. The real positions of the stations were obtained as an average of several measurement campaigns that were performed in 2010 and 2011.
This module should be included into the module sequence after the SdCalibrator.
More details: this module will do two things; first, in the Init() method, the positions of all stations are changed to the GPS measurements. At the same time a time offset is calculated based on the PMS and GPS position difference (vertical component only). This offset is then used to correct the signal start times in all the stations of every event.
For more details see GAP-2011-071, GAP-2011-094, GAP-2012-052.
See also X. Bertou, GAP-2008-156.
Definition at line 41 of file SdStationPositionCorrection.h.
|
private |
Definition at line 51 of file SdStationPositionCorrection.h.
|
private |
Definition at line 52 of file SdStationPositionCorrection.h.
|
protectedinherited |
|
inherited |
Flag returned by module methods to the RunController.
Enumerator | |
---|---|
eSuccess |
Report success to RunController. |
eFailure |
Report failure to RunController, causing RunController to terminate execution. |
eBreakLoop |
Break current loop. It works for nested loops too! |
eContinueLoop |
Skip remaining modules in the current loop and continue with next iteration of the loop. |
|
inherited |
|
inlinevirtual |
Definition at line 44 of file SdStationPositionCorrection.h.
|
inlinevirtual |
Finish: invoked at end of the run (NOT end of the event)
This method is for things that should be done at the end of the run (for example, closing files or writing out histograms) {You must override this method in your concrete module}
Implements fwk::VModule.
Definition at line 48 of file SdStationPositionCorrection.h.
References fwk::VModule::eSuccess.
|
staticinherited |
Definition at line 8 of file VModule.cc.
References fwk::VModule::eBreakLoop, fwk::VModule::eContinueLoop, fwk::VModule::eFailure, and fwk::VModule::eSuccess.
Referenced by fwk::RunController::DoNextInSequence(), fwk::RunController::FinishBranch(), and fwk::RunController::InitBranch().
|
inlineinherited |
Definition at line 106 of file VModule.h.
References fwk::VModule::fStopwatch.
|
inlineinherited |
Definition at line 107 of file VModule.h.
References fwk::VModule::fStopwatch.
|
inherited |
Retrieve different sorts of module version info.
Definition at line 26 of file VModule.cc.
Referenced by fwk::CentralConfig::GetConfig(), ThresholdCalculatorKG::ThresholdCalculator::Init(), fdDoubleBumpFinder::FdDoubleBumpFinder::Init(), LaserGeneratorNA::LaserGenerator::Init(), LaserLightSimulatorNA::LaserLightSimulator::Init(), FdElectronicsSimulatorOG::FdElectronicsSimulator::Init(), TelescopeSimulatorKG::TelescopeSimulator::Init(), TelescopeSimulatorKG2::TelescopeSimulator::Init(), SdSimpleSimKG::SdSimpleSim::Init(), ShowerPhotonGeneratorOG::ShowerPhotonGenerator::Init(), and testRunController::testModuleVersionInfo().
|
virtual |
Initialize: invoked at beginning of run (NOT beginning of event)
This method is for things that should be done once at the beginning of a run (for example, booking histograms, performing calculations that need to be done only once, initializing parameters) {You must override this method in your concrete module}
Implements fwk::VModule.
Definition at line 74 of file SdStationPositionCorrection.cc.
References ERROR, io::eSuccess, utl::GetCurrentSystemTime(), utl::ReadStream::GetLines(), utl::UTMPoint::GetPoint(), INFO, utl::String::OfSortedIds(), SdStationPositionCorrectionOG::UnrestrictedSDetStation::SetPosition(), and WARNING.
|
inlineinherited |
Definition at line 95 of file VModule.h.
References fwk::VModule::fStopwatch, and utl::Stopwatch::Reset().
|
private |
|
virtual |
Run: invoked once per event.
This method is for things that should be done once per event {You must override this method in your concrete module}
Implements fwk::VModule.
Definition at line 193 of file SdStationPositionCorrection.cc.
References io::eSuccess, evt::Event::HasSEvent(), INFO, utl::nanosecond, utl::Sqr(), and sqrt().
|
inlineinherited |
Definition at line 98 of file VModule.h.
References fwk::VModule::fStopwatch, fwk::VModule::Run(), utl::Stopwatch::Start(), and utl::Stopwatch::Stop().
Referenced by fwk::RunController::DoNextInSequence().
|
private |
Definition at line 56 of file SdStationPositionCorrection.h.
|
private |
Definition at line 55 of file SdStationPositionCorrection.h.
|
protectedinherited |
Definition at line 123 of file VModule.h.
Referenced by RdChannelASCIINoiseImporterRD::RdChannelASCIINoiseImporterRD::Init(), Rd2dLDFFitter::Rd2dLDFFitter::Init(), RdChannelNoiseImporter_AERA::RdChannelNoiseImporter_AERA::Init(), and Rd2dLDFFitter::Rd2dLDFFitter::Run().
|
private |
Definition at line 53 of file SdStationPositionCorrection.h.