List of all members | Public Types | Public Member Functions | Static Public Member Functions | Protected Types | Protected Attributes | Private Types | Private Member Functions | Private Attributes
RdStationSignalInterpolator::RdStationSignalInterpolator Class Reference

#include <RdStationSignalInterpolator.h>

Inheritance diagram for RdStationSignalInterpolator::RdStationSignalInterpolator:
Inheritance graph
[legend]

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 () override
 Finish: invoked at end of the run (NOT end of the event) More...
 
utl::StopwatchGetStopwatch ()
 
const utl::StopwatchGetStopwatch () const
 
std::string GetVersionInfo (const VersionInfoType v) const
 Retrieve different sorts of module version info. More...
 
fwk::VModule::ResultFlag Init () override
 Initialize: invoked at beginning of run (NOT beginning of event) More...
 
void InitTiming ()
 
 RdStationSignalInterpolator ()
 
fwk::VModule::ResultFlag Run (evt::Event &event) override
 Run: invoked once per event. More...
 
ResultFlag RunWithTiming (evt::Event &event)
 
 ~RdStationSignalInterpolator () override
 

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

enum  interpolationMethod { eNN = 0, eBilinear = 1, eBicubic = 2 }
 

Private Member Functions

std::vector< double > BicubicInterpolation (const double radius, const double azimuth, const std::set< double > &AzimuthListStarShape, const std::vector< StarShapeEntry > &StarShapeList, const std::vector< revt::StationRRecDataQuantities > &eNumNames, revt::REvent &rEvent, const bool errors)
 
std::vector< double > BilinearInterpolation (const double radius, const double azimuth, const std::set< double > &AzimuthListStarShape, const std::vector< StarShapeEntry > &StarShapeList, const std::vector< revt::StationRRecDataQuantities > &eNumNames, revt::REvent &rEvent, const bool errors)
 
std::vector< int > FindIndexOfSurroundingNN (const double x_coord, const double y_coord, const std::set< double > &AzimuthListStarShape, const std::vector< StarShapeEntry > &StarShapeList)
 
double LagrangianFactorCubic (const double X, const double x1, const double x2, const double x3, const double x4, const double v1, const double v2, const double v3, const double v4)
 
void MoveItemToBack (std::vector< StarShapeEntry > &v, const size_t itemIndex)
 
std::vector< double > NearestNeighbourInterpolation (const double radius, const double azimuth, const std::set< double > &AzimuthListStarShape, const std::vector< StarShapeEntry > &StarShapeList, const std::vector< revt::StationRRecDataQuantities > &eNumNames, revt::REvent &rEvent, const bool errors)
 
double PolarDistance (const double r1, const double phi1, const double r2, const double phi2)
 
 REGISTER_MODULE ("RdStationSignalInterpolator", RdStationSignalInterpolator)
 
std::vector< StarShapeEntrySortForInterpolation (const std::vector< StarShapeEntry > &StarShapeList)
 

Private Attributes

int fInterpolationMethod = 0
 
double fMinimumEnergy = 0
 
bool fRequireSDStationTrigger = false
 
bool fUseEarlyLate = false
 

Detailed Description

Definition at line 63 of file RdStationSignalInterpolator.h.

Member Enumeration Documentation

enum fwk::VModule::InfoLevel
protectedinherited
Enumerator
eInfoNone 
eInfoFinal 
eInfoIntermediate 
eInfoDebug 

Definition at line 125 of file VModule.h.

enum RdStationSignalInterpolator::RdStationSignalInterpolator::interpolationMethod
private
Enumerator
eNN 
eBilinear 
eBicubic 

Definition at line 116 of file RdStationSignalInterpolator.h.

enum fwk::VModule::ResultFlag
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.

Definition at line 60 of file VModule.h.

Different types of version info that can be retrieved from GetVersionInfo.

Enumerator
eFilename 
eRevisionNumber 
eDate 
eTime 
eLastEditor 

Definition at line 110 of file VModule.h.

Constructor & Destructor Documentation

RdStationSignalInterpolator::RdStationSignalInterpolator::RdStationSignalInterpolator ( )
inline

Definition at line 65 of file RdStationSignalInterpolator.h.

RdStationSignalInterpolator::RdStationSignalInterpolator::~RdStationSignalInterpolator ( )
inlineoverride

Definition at line 66 of file RdStationSignalInterpolator.h.

Member Function Documentation

vector< double > RdStationSignalInterpolator::RdStationSignalInterpolator::BicubicInterpolation ( const double  radius,
const double  azimuth,
const std::set< double > &  AzimuthListStarShape,
const std::vector< StarShapeEntry > &  StarShapeList,
const std::vector< revt::StationRRecDataQuantities > &  eNumNames,
revt::REvent rEvent,
const bool  errors 
)
private
vector< double > RdStationSignalInterpolator::RdStationSignalInterpolator::BilinearInterpolation ( const double  radius,
const double  azimuth,
const std::set< double > &  AzimuthListStarShape,
const std::vector< StarShapeEntry > &  StarShapeList,
const std::vector< revt::StationRRecDataQuantities > &  eNumNames,
revt::REvent rEvent,
const bool  errors 
)
private
vector< int > RdStationSignalInterpolator::RdStationSignalInterpolator::FindIndexOfSurroundingNN ( const double  x_coord,
const double  y_coord,
const std::set< double > &  AzimuthListStarShape,
const std::vector< StarShapeEntry > &  StarShapeList 
)
private

Definition at line 537 of file RdStationSignalInterpolator.cc.

References ok().

VModule::ResultFlag RdStationSignalInterpolator::RdStationSignalInterpolator::Finish ( )
overridevirtual

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 431 of file RdStationSignalInterpolator.cc.

References io::eSuccess, and INFO.

std::string fwk::VModule::GetResultFlagByName ( const ResultFlag  flag)
staticinherited
utl::Stopwatch& fwk::VModule::GetStopwatch ( )
inlineinherited

Definition at line 106 of file VModule.h.

References fwk::VModule::fStopwatch.

const utl::Stopwatch& fwk::VModule::GetStopwatch ( ) const
inlineinherited

Definition at line 107 of file VModule.h.

References fwk::VModule::fStopwatch.

std::string fwk::VModule::GetVersionInfo ( const VersionInfoType  v) const
inherited
VModule::ResultFlag RdStationSignalInterpolator::RdStationSignalInterpolator::Init ( )
overridevirtual

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 51 of file RdStationSignalInterpolator.cc.

References ERROR, io::eSuccess, utl::Branch::Get(), utl::Branch::GetChild(), utl::Branch::GetData(), utl::Branch::GetTopBranch(), INFO, and utl::StringEquivalent().

void fwk::VModule::InitTiming ( )
inlineinherited

Definition at line 95 of file VModule.h.

References fwk::VModule::fStopwatch, and utl::Stopwatch::Reset().

double RdStationSignalInterpolator::RdStationSignalInterpolator::LagrangianFactorCubic ( const double  X,
const double  x1,
const double  x2,
const double  x3,
const double  x4,
const double  v1,
const double  v2,
const double  v3,
const double  v4 
)
private

Definition at line 519 of file RdStationSignalInterpolator.cc.

void RdStationSignalInterpolator::RdStationSignalInterpolator::MoveItemToBack ( std::vector< StarShapeEntry > &  v,
const size_t  itemIndex 
)
private

Definition at line 450 of file RdStationSignalInterpolator.cc.

vector< double > RdStationSignalInterpolator::RdStationSignalInterpolator::NearestNeighbourInterpolation ( const double  radius,
const double  azimuth,
const std::set< double > &  AzimuthListStarShape,
const std::vector< StarShapeEntry > &  StarShapeList,
const std::vector< revt::StationRRecDataQuantities > &  eNumNames,
revt::REvent rEvent,
const bool  errors 
)
private
double RdStationSignalInterpolator::RdStationSignalInterpolator::PolarDistance ( const double  r1,
const double  phi1,
const double  r2,
const double  phi2 
)
private

Definition at line 443 of file RdStationSignalInterpolator.cc.

References std::pow(), and sqrt().

RdStationSignalInterpolator::RdStationSignalInterpolator::REGISTER_MODULE ( "RdStationSignalInterpolator"  ,
RdStationSignalInterpolator   
)
private
VModule::ResultFlag RdStationSignalInterpolator::RdStationSignalInterpolator::Run ( evt::Event event)
overridevirtual

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 82 of file RdStationSignalInterpolator.cc.

References revt::REvent::CandidateStationsBegin(), revt::REvent::CandidateStationsEnd(), revt::eBadSNR, revt::eManuallyExcluded, ERROR, revt::eStationWithoutTrigger, io::eSuccess, evt::ShowerSimData::GetDirection(), evt::ShowerSimData::GetLocalCoordinateSystem(), evt::ShowerRRecData::GetMagneticFieldVector(), revt::StationRecData::GetParameter(), rdet::Station::GetPosition(), det::Detector::GetRDetector(), revt::Station::GetRecData(), revt::Station::GetRejectedReason(), utl::Trace< T >::GetSize(), rdet::RDetector::GetStation(), sevt::SEvent::GetStation(), revt::REvent::GetStation(), revt::Station::GetStationTimeSeries(), sevt::Station::GetTriggerData(), utl::RadioGeometryUtilities::GetVectorInShowerPlaneVxB(), utl::BasicVector< HepVector >::GetZ(), revt::Station::HasGPSData(), revt::StationRecData::HasParameter(), revt::Station::HasRecData(), evt::Event::HasSEvent(), revt::Station::HasSimData(), sevt::SEvent::HasStation(), revt::REvent::HasStation(), revt::Station::HasTriggerData(), sevt::Station::HasTriggerData(), INFODebug, INFOFinal, INFOIntermediate, revt::Station::MakeGPSData(), revt::Station::MakeRecData(), revt::Station::MakeSimData(), revt::REvent::MakeStation(), revt::Station::MakeTriggerData(), max, galactic::meter, std::pow(), revt::Station::SetExcludedReason(), revt::StationRecData::SetParameter(), revt::StationRecData::SetParameterError(), revt::StationRecData::SetPulseFound(), revt::Station::SetRejectedReason(), revt::Station::SetSignal(), utl::Sqr(), sqrt(), rdet::RDetector::StationsBegin(), rdet::RDetector::StationsEnd(), and WARNING.

ResultFlag fwk::VModule::RunWithTiming ( evt::Event event)
inlineinherited
vector< StarShapeEntry > RdStationSignalInterpolator::RdStationSignalInterpolator::SortForInterpolation ( const std::vector< StarShapeEntry > &  StarShapeList)
private

Definition at line 458 of file RdStationSignalInterpolator.cc.

Member Data Documentation

int fwk::VModule::fInfoLevel = 0
protectedinherited
int RdStationSignalInterpolator::RdStationSignalInterpolator::fInterpolationMethod = 0
private

Definition at line 114 of file RdStationSignalInterpolator.h.

double RdStationSignalInterpolator::RdStationSignalInterpolator::fMinimumEnergy = 0
private

Definition at line 111 of file RdStationSignalInterpolator.h.

bool RdStationSignalInterpolator::RdStationSignalInterpolator::fRequireSDStationTrigger = false
private

Definition at line 113 of file RdStationSignalInterpolator.h.

bool RdStationSignalInterpolator::RdStationSignalInterpolator::fUseEarlyLate = false
private

Definition at line 112 of file RdStationSignalInterpolator.h.


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

, generated on Tue Sep 26 2023.