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

#include <RdPreWaveFitter.h>

Inheritance diagram for RdPreWaveFitter::RdPreWaveFitter:
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 ()
 
fwk::VModule::ResultFlag Run (evt::Event &event) override
 Run: invoked once per event. More...
 
ResultFlag RunWithTiming (evt::Event &event)
 

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 Member Functions

fwk::VModule::ResultFlag CallPlaneWaveFit (const revt::REvent &rEvent, FitParameters &sFitResults, bool reuseFit=false) const
 
fwk::VModule::ResultFlag ComputeBaryCenter (const revt::REvent &rEvent, utl::Point &baryCenter)
 
fwk::VModule::ResultFlag ComputeRMS (revt::REvent &rEvent)
 
fwk::VModule::ResultFlag ComputeSignalPosition (revt::REvent &rEvent, bool hilbert=false)
 
fwk::VModule::ResultFlag PlaneWaveFit (const revt::REvent &rEvent, FitParameters &fit, int type) const
 
 REGISTER_MODULE ("RdPreWaveFitter", RdPreWaveFitter)
 
fwk::VModule::ResultFlag ScanPWF (const revt::REvent &rEvent, FitParameters &sFitResults) const
 

Private Attributes

Chi2ForPlaneWaveFitChiPWF = nullptr
 
bool fComputeRMS = false
 
bool fcontinueAfterFailedFit = false
 
utl::Point fCoordinateOrigin
 
utl::CoordinateSystemPtr fLocalCS
 
bool fMaxOnComboTrace = false
 
int fMinNumberOfStations = 0
 
int fNFails = 0
 
int fNInitsPhi = 0
 
int fNInitsTheta = 0
 
int fNumberOfStations = 0
 
bool fRMSonBestTrace = false
 
double fSNRCut = 0
 
double fThetaMax = 0
 
unsigned int nSNRCut = 0
 

Detailed Description

Definition at line 55 of file RdPreWaveFitter.h.

Member Enumeration Documentation

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

Definition at line 125 of file VModule.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.

Member Function Documentation

VModule::ResultFlag RdPreWaveFitter::RdPreWaveFitter::CallPlaneWaveFit ( const revt::REvent rEvent,
FitParameters sFitResults,
bool  reuseFit = false 
) const
private

calls a plane wave fit. if its the first time the plane wave fit is called with different initial values (using ScanPWF()), otherwise the plan wave fit is called with the results from the last fit as initial values

Definition at line 448 of file RdPreWaveFitter.cc.

References io::eSuccess, result, and WARNING.

fwk::VModule::ResultFlag RdPreWaveFitter::RdPreWaveFitter::ComputeBaryCenter ( const revt::REvent rEvent,
utl::Point baryCenter 
)
private
VModule::ResultFlag RdPreWaveFitter::RdPreWaveFitter::ComputeRMS ( revt::REvent rEvent)
private
VModule::ResultFlag RdPreWaveFitter::RdPreWaveFitter::ComputeSignalPosition ( revt::REvent rEvent,
bool  hilbert = false 
)
private
VModule::ResultFlag RdPreWaveFitter::RdPreWaveFitter::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 232 of file RdPreWaveFitter.cc.

References io::eSuccess, and INFOFinal.

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 RdPreWaveFitter::RdPreWaveFitter::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 49 of file RdPreWaveFitter.cc.

References io::eSuccess, utl::Branch::GetChild(), utl::Branch::GetData(), and utl::Branch::GetTopBranch().

void fwk::VModule::InitTiming ( )
inlineinherited

Definition at line 95 of file VModule.h.

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

VModule::ResultFlag RdPreWaveFitter::RdPreWaveFitter::PlaneWaveFit ( const revt::REvent rEvent,
FitParameters fit,
int  type 
) const
private
RdPreWaveFitter::RdPreWaveFitter::REGISTER_MODULE ( "RdPreWaveFitter"  ,
RdPreWaveFitter   
)
private
VModule::ResultFlag RdPreWaveFitter::RdPreWaveFitter::Run ( evt::Event event)
overridevirtual
ResultFlag fwk::VModule::RunWithTiming ( evt::Event event)
inlineinherited
VModule::ResultFlag RdPreWaveFitter::RdPreWaveFitter::ScanPWF ( const revt::REvent rEvent,
FitParameters sFitResults 
) const
private

This function calls the PlaneWaveFit() with different initial parameters for theta and phi and saves the best result (the one with the lowest chiSquared) in the passed struct FitParameters.

Definition at line 344 of file RdPreWaveFitter.cc.

References RdPreWaveFitter::FitParameters::corrected, utl::deg, degree, io::eSuccess, INFOIntermediate, RdPreWaveFitter::FitParameters::minChi, RdPreWaveFitter::FitParameters::phi, RdPreWaveFitter::FitParameters::status, RdPreWaveFitter::FitParameters::theta, and WARNING.

Member Data Documentation

Chi2ForPlaneWaveFit* RdPreWaveFitter::RdPreWaveFitter::ChiPWF = nullptr
private

Definition at line 110 of file RdPreWaveFitter.h.

bool RdPreWaveFitter::RdPreWaveFitter::fComputeRMS = false
private

Definition at line 100 of file RdPreWaveFitter.h.

bool RdPreWaveFitter::RdPreWaveFitter::fcontinueAfterFailedFit = false
private

Definition at line 98 of file RdPreWaveFitter.h.

utl::Point RdPreWaveFitter::RdPreWaveFitter::fCoordinateOrigin
private

Definition at line 105 of file RdPreWaveFitter.h.

int fwk::VModule::fInfoLevel = 0
protectedinherited
utl::CoordinateSystemPtr RdPreWaveFitter::RdPreWaveFitter::fLocalCS
private

Definition at line 106 of file RdPreWaveFitter.h.

bool RdPreWaveFitter::RdPreWaveFitter::fMaxOnComboTrace = false
private

Definition at line 96 of file RdPreWaveFitter.h.

int RdPreWaveFitter::RdPreWaveFitter::fMinNumberOfStations = 0
private

Definition at line 89 of file RdPreWaveFitter.h.

int RdPreWaveFitter::RdPreWaveFitter::fNFails = 0
private

Definition at line 103 of file RdPreWaveFitter.h.

int RdPreWaveFitter::RdPreWaveFitter::fNInitsPhi = 0
private

Definition at line 94 of file RdPreWaveFitter.h.

int RdPreWaveFitter::RdPreWaveFitter::fNInitsTheta = 0
private

Definition at line 93 of file RdPreWaveFitter.h.

int RdPreWaveFitter::RdPreWaveFitter::fNumberOfStations = 0
private

Definition at line 90 of file RdPreWaveFitter.h.

bool RdPreWaveFitter::RdPreWaveFitter::fRMSonBestTrace = false
private

Definition at line 97 of file RdPreWaveFitter.h.

double RdPreWaveFitter::RdPreWaveFitter::fSNRCut = 0
private

Definition at line 101 of file RdPreWaveFitter.h.

double RdPreWaveFitter::RdPreWaveFitter::fThetaMax = 0
private

Definition at line 92 of file RdPreWaveFitter.h.

unsigned int RdPreWaveFitter::RdPreWaveFitter::nSNRCut = 0
private

Definition at line 108 of file RdPreWaveFitter.h.


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

, generated on Tue Sep 26 2023.