LArSoft  v09_90_00
Liquid Argon Software toolkit - https://larsoft.org/
recob::OpFlash Class Reference

#include "OpFlash.h"

Public Member Functions

 OpFlash ()=default
 
 OpFlash (double time, double timewidth, double abstime, unsigned int frame, std::vector< double > PEperOpDet, bool InBeamFrame, int OnBeamTime, double FastToTotal, double xCenter, double xWidth, double yCenter, double yWidth, double zCenter, double zWidth, std::vector< double > WireCenters=std::vector< double >(0), std::vector< double > WireWidths=std::vector< double >(0))
 Constructor: all data members directly initialized. More...
 
 OpFlash (double time, double timewidth, double abstime, unsigned int frame, std::vector< double > PEperOpDet, bool InBeamFrame=0, int OnBeamTime=0, double FastToTotal=1, double yCenter=0, double yWidth=0, double zCenter=0, double zWidth=0, std::vector< double > WireCenters=std::vector< double >(0), std::vector< double > WireWidths=std::vector< double >(0))
 Constructor: all data members directly initialized except x coordinate. More...
 
double Time () const
 
double TimeWidth () const
 
double AbsTime () const
 
unsigned int Frame () const
 
double PE (unsigned int i) const
 
std::vector< double > const & PEs () const
 Returns a vector with a number of photoelectrons per channel. More...
 
bool hasXCenter () const
 Returns whether the estimated center on x direction is available. More...
 
double XCenter () const
 Returns the estimated center on x direction (. More...
 
double XWidth () const
 
double YCenter () const
 
double YWidth () const
 
double ZCenter () const
 
double ZWidth () const
 
bool InBeamFrame () const
 
int OnBeamTime () const
 
std::vector< double > const & WireCenters () const
 
std::vector< double > const & WireWidths () const
 
double TotalPE () const
 
double FastToTotal () const
 

Static Public Attributes

static constexpr double NoCenter = std::numeric_limits<double>::max()
 Special value used for absence of center location information. More...
 

Private Attributes

double fTime {0.0}
 Time on trigger time scale [us]. More...
 
double fTimeWidth
 Width of the flash in time [us]. More...
 
double fAbsTime
 Time by PMT readout clock. More...
 
unsigned int fFrame
 Frame number. More...
 
std::vector< double > fPEperOpDet
 Number of PE on each PMT. More...
 
std::vector< double > fWireCenters
 Geometric center in each view. More...
 
std::vector< double > fWireWidths
 Geometric width in each view. More...
 
double fXCenter {NoCenter}
 Estimated center in x [cm]. More...
 
double fXWidth {NoCenter}
 Estimated width in x [cm]. More...
 
double fYCenter
 Geometric center in y [cm]. More...
 
double fYWidth
 Geometric width in y [cm]. More...
 
double fZCenter
 Geometric center in z [cm]. More...
 
double fZWidth
 Geometric width in z [cm]. More...
 
double fFastToTotal
 Fast to total light ratio. More...
 
bool fInBeamFrame
 Is this in the beam frame? More...
 
int fOnBeamTime
 Is this in time with beam? More...
 

Detailed Description

Definition at line 20 of file OpFlash.h.

Constructor & Destructor Documentation

recob::OpFlash::OpFlash ( )
default
recob::OpFlash::OpFlash ( double  time,
double  timewidth,
double  abstime,
unsigned int  frame,
std::vector< double >  PEperOpDet,
bool  InBeamFrame,
int  OnBeamTime,
double  FastToTotal,
double  xCenter,
double  xWidth,
double  yCenter,
double  yWidth,
double  zCenter,
double  zWidth,
std::vector< double >  WireCenters = std::vector<double>(0),
std::vector< double >  WireWidths = std::vector<double>(0) 
)

Constructor: all data members directly initialized.

Definition at line 20 of file OpFlash.cxx.

References fAbsTime, FastToTotal(), fFastToTotal, fFrame, fInBeamFrame, fOnBeamTime, fPEperOpDet, fTimeWidth, fWireCenters, fWireWidths, fXCenter, fXWidth, fYCenter, fYWidth, fZCenter, fZWidth, InBeamFrame(), WireCenters(), and WireWidths().

36  : fTime{time}
37  , fTimeWidth{timewidth}
38  , fAbsTime{abstime}
39  , fFrame{frame}
40  , fPEperOpDet{std::move(PEperOpDet)}
41  , fWireCenters{std::move(WireCenters)}
42  , fWireWidths{std::move(WireWidths)}
43  , fXCenter{xCenter}
44  , fXWidth{xWidth}
45  , fYCenter{yCenter}
46  , fYWidth{yWidth}
47  , fZCenter{zCenter}
48  , fZWidth{zWidth}
51  , fOnBeamTime{onBeamTime}
52  {}
double fYCenter
Geometric center in y [cm].
Definition: OpFlash.h:37
double fTime
Time on trigger time scale [us].
Definition: OpFlash.h:28
double FastToTotal() const
Definition: OpFlash.h:170
double fZCenter
Geometric center in z [cm].
Definition: OpFlash.h:39
std::vector< double > fPEperOpDet
Number of PE on each PMT.
Definition: OpFlash.h:32
double fXWidth
Estimated width in x [cm].
Definition: OpFlash.h:36
double fZWidth
Geometric width in z [cm].
Definition: OpFlash.h:40
double fYWidth
Geometric width in y [cm].
Definition: OpFlash.h:38
unsigned int fFrame
Frame number.
Definition: OpFlash.h:31
std::vector< double > fWireCenters
Geometric center in each view.
Definition: OpFlash.h:33
std::vector< double > fWireWidths
Geometric width in each view.
Definition: OpFlash.h:34
double fFastToTotal
Fast to total light ratio.
Definition: OpFlash.h:41
double fAbsTime
Time by PMT readout clock.
Definition: OpFlash.h:30
double fXCenter
Estimated center in x [cm].
Definition: OpFlash.h:35
bool fInBeamFrame
Is this in the beam frame?
Definition: OpFlash.h:42
int fOnBeamTime
Is this in time with beam?
Definition: OpFlash.h:43
double fTimeWidth
Width of the flash in time [us].
Definition: OpFlash.h:29
bool InBeamFrame() const
Definition: OpFlash.h:182
recob::OpFlash::OpFlash ( double  time,
double  timewidth,
double  abstime,
unsigned int  frame,
std::vector< double >  PEperOpDet,
bool  InBeamFrame = 0,
int  OnBeamTime = 0,
double  FastToTotal = 1,
double  yCenter = 0,
double  yWidth = 0,
double  zCenter = 0,
double  zWidth = 0,
std::vector< double >  WireCenters = std::vector<double>(0),
std::vector< double >  WireWidths = std::vector<double>(0) 
)

Constructor: all data members directly initialized except x coordinate.

Definition at line 55 of file OpFlash.cxx.

References FastToTotal(), InBeamFrame(), and NoCenter.

69  : OpFlash{time,
70  timewidth,
71  abstime,
72  frame,
73  std::move(PEperOpDet),
75  onBeamTime,
77  NoCenter,
78  NoCenter,
79  yCenter,
80  yWidth,
81  zCenter,
82  zWidth,
83  std::move(WireCenters),
84  std::move(WireWidths)}
85  {}
static constexpr double NoCenter
Special value used for absence of center location information.
Definition: OpFlash.h:23
double FastToTotal() const
Definition: OpFlash.h:170
OpFlash()=default
bool InBeamFrame() const
Definition: OpFlash.h:182

Member Function Documentation

double recob::OpFlash::AbsTime ( ) const
inline

Definition at line 126 of file OpFlash.h.

References fAbsTime.

Referenced by opdet::OpFlashAna::analyze(), and recob::operator<<().

127 {
128  return fAbsTime;
129 }
double fAbsTime
Time by PMT readout clock.
Definition: OpFlash.h:30
double recob::OpFlash::FastToTotal ( ) const
inline

Definition at line 170 of file OpFlash.h.

References fFastToTotal.

Referenced by opdet::OpFlashMCTruthAna::analyze(), recob::operator<<(), and OpFlash().

171 {
172  return fFastToTotal;
173 }
double fFastToTotal
Fast to total light ratio.
Definition: OpFlash.h:41
unsigned int recob::OpFlash::Frame ( ) const
inline

Definition at line 130 of file OpFlash.h.

References fFrame.

Referenced by opdet::OpFlashAna::analyze().

131 {
132  return fFrame;
133 }
unsigned int fFrame
Frame number.
Definition: OpFlash.h:31
bool recob::OpFlash::hasXCenter ( ) const
inline

Returns whether the estimated center on x direction is available.

Definition at line 142 of file OpFlash.h.

References fXCenter, and NoCenter.

Referenced by recob::operator<<().

143 {
144  return fXCenter != NoCenter;
145 }
static constexpr double NoCenter
Special value used for absence of center location information.
Definition: OpFlash.h:23
double fXCenter
Estimated center in x [cm].
Definition: OpFlash.h:35
bool recob::OpFlash::InBeamFrame ( ) const
inline

Definition at line 182 of file OpFlash.h.

References fInBeamFrame.

Referenced by opdet::OpFlashAna::analyze(), recob::operator<<(), and OpFlash().

183 {
184  return fInBeamFrame;
185 }
bool fInBeamFrame
Is this in the beam frame?
Definition: OpFlash.h:42
int recob::OpFlash::OnBeamTime ( ) const
inline
double recob::OpFlash::PE ( unsigned int  i) const
inline

Definition at line 134 of file OpFlash.h.

Referenced by opdet::OpFlashAna::analyze(), cosmic::BeamFlashTrackMatchTaggerAlg::CheckCompatibility(), recob::operator<<(), and cosmic::BeamFlashTrackMatchTaggerAlg::PrintHypothesisFlashComparison().

135 {
136  return fPEperOpDet[i];
137 }
std::vector< double > fPEperOpDet
Number of PE on each PMT.
Definition: OpFlash.h:32
std::vector< double > const & recob::OpFlash::PEs ( ) const
inline

Returns a vector with a number of photoelectrons per channel.

Definition at line 138 of file OpFlash.h.

References fPEperOpDet.

Referenced by recob::operator<<().

139 {
140  return fPEperOpDet;
141 }
std::vector< double > fPEperOpDet
Number of PE on each PMT.
Definition: OpFlash.h:32
double recob::OpFlash::Time ( ) const
inline
double recob::OpFlash::TimeWidth ( ) const
inline

Definition at line 122 of file OpFlash.h.

References fTimeWidth.

Referenced by recob::operator<<().

123 {
124  return fTimeWidth;
125 }
double fTimeWidth
Width of the flash in time [us].
Definition: OpFlash.h:29
std::vector< double > const & recob::OpFlash::WireCenters ( ) const
inline

Definition at line 174 of file OpFlash.h.

References fWireCenters.

Referenced by opdet::OpFlashMCTruthAna::analyze(), recob::operator<<(), and OpFlash().

175 {
176  return fWireCenters;
177 }
std::vector< double > fWireCenters
Geometric center in each view.
Definition: OpFlash.h:33
std::vector< double > const & recob::OpFlash::WireWidths ( ) const
inline

Definition at line 178 of file OpFlash.h.

References fWireWidths.

Referenced by opdet::OpFlashMCTruthAna::analyze(), recob::operator<<(), and OpFlash().

179 {
180  return fWireWidths;
181 }
std::vector< double > fWireWidths
Geometric width in each view.
Definition: OpFlash.h:34
double recob::OpFlash::XCenter ( ) const
inline

Returns the estimated center on x direction (.

See also
hasXCenter()).

Definition at line 146 of file OpFlash.h.

References fXCenter.

Referenced by recob::operator<<().

147 {
148  return fXCenter;
149 }
double fXCenter
Estimated center in x [cm].
Definition: OpFlash.h:35
double recob::OpFlash::XWidth ( ) const
inline

Definition at line 150 of file OpFlash.h.

References fXWidth.

Referenced by recob::operator<<().

151 {
152  return fXWidth;
153 }
double fXWidth
Estimated width in x [cm].
Definition: OpFlash.h:36
double recob::OpFlash::YCenter ( ) const
inline

Definition at line 154 of file OpFlash.h.

References fYCenter.

Referenced by opdet::OpFlashMCTruthAna::analyze(), opdet::OpFlashAna::analyze(), recob::operator<<(), and cosmic::BeamFlashTrackMatchTaggerAlg::PrintFlashProperties().

155 {
156  return fYCenter;
157 }
double fYCenter
Geometric center in y [cm].
Definition: OpFlash.h:37
double recob::OpFlash::YWidth ( ) const
inline

Definition at line 158 of file OpFlash.h.

References fYWidth.

Referenced by opdet::OpFlashMCTruthAna::analyze(), opdet::OpFlashAna::analyze(), recob::operator<<(), and cosmic::BeamFlashTrackMatchTaggerAlg::PrintFlashProperties().

159 {
160  return fYWidth;
161 }
double fYWidth
Geometric width in y [cm].
Definition: OpFlash.h:38
double recob::OpFlash::ZCenter ( ) const
inline

Definition at line 162 of file OpFlash.h.

References fZCenter.

Referenced by opdet::OpFlashMCTruthAna::analyze(), opdet::OpFlashAna::analyze(), recob::operator<<(), and cosmic::BeamFlashTrackMatchTaggerAlg::PrintFlashProperties().

163 {
164  return fZCenter;
165 }
double fZCenter
Geometric center in z [cm].
Definition: OpFlash.h:39
double recob::OpFlash::ZWidth ( ) const
inline

Definition at line 166 of file OpFlash.h.

References fZWidth.

Referenced by opdet::OpFlashMCTruthAna::analyze(), opdet::OpFlashAna::analyze(), recob::operator<<(), and cosmic::BeamFlashTrackMatchTaggerAlg::PrintFlashProperties().

167 {
168  return fZWidth;
169 }
double fZWidth
Geometric width in z [cm].
Definition: OpFlash.h:40

Member Data Documentation

double recob::OpFlash::fAbsTime
private

Time by PMT readout clock.

Definition at line 30 of file OpFlash.h.

Referenced by AbsTime(), and OpFlash().

double recob::OpFlash::fFastToTotal
private

Fast to total light ratio.

Definition at line 41 of file OpFlash.h.

Referenced by FastToTotal(), and OpFlash().

unsigned int recob::OpFlash::fFrame
private

Frame number.

Definition at line 31 of file OpFlash.h.

Referenced by Frame(), and OpFlash().

bool recob::OpFlash::fInBeamFrame
private

Is this in the beam frame?

Definition at line 42 of file OpFlash.h.

Referenced by InBeamFrame(), and OpFlash().

int recob::OpFlash::fOnBeamTime
private

Is this in time with beam?

Definition at line 43 of file OpFlash.h.

Referenced by OnBeamTime(), and OpFlash().

std::vector<double> recob::OpFlash::fPEperOpDet
private

Number of PE on each PMT.

Definition at line 32 of file OpFlash.h.

Referenced by OpFlash(), PEs(), and TotalPE().

double recob::OpFlash::fTime {0.0}
private

Time on trigger time scale [us].

Definition at line 28 of file OpFlash.h.

Referenced by Time().

double recob::OpFlash::fTimeWidth
private

Width of the flash in time [us].

Definition at line 29 of file OpFlash.h.

Referenced by OpFlash(), and TimeWidth().

std::vector<double> recob::OpFlash::fWireCenters
private

Geometric center in each view.

Definition at line 33 of file OpFlash.h.

Referenced by OpFlash(), and WireCenters().

std::vector<double> recob::OpFlash::fWireWidths
private

Geometric width in each view.

Definition at line 34 of file OpFlash.h.

Referenced by OpFlash(), and WireWidths().

double recob::OpFlash::fXCenter {NoCenter}
private

Estimated center in x [cm].

Definition at line 35 of file OpFlash.h.

Referenced by hasXCenter(), OpFlash(), and XCenter().

double recob::OpFlash::fXWidth {NoCenter}
private

Estimated width in x [cm].

Definition at line 36 of file OpFlash.h.

Referenced by OpFlash(), and XWidth().

double recob::OpFlash::fYCenter
private

Geometric center in y [cm].

Definition at line 37 of file OpFlash.h.

Referenced by OpFlash(), and YCenter().

double recob::OpFlash::fYWidth
private

Geometric width in y [cm].

Definition at line 38 of file OpFlash.h.

Referenced by OpFlash(), and YWidth().

double recob::OpFlash::fZCenter
private

Geometric center in z [cm].

Definition at line 39 of file OpFlash.h.

Referenced by OpFlash(), and ZCenter().

double recob::OpFlash::fZWidth
private

Geometric width in z [cm].

Definition at line 40 of file OpFlash.h.

Referenced by OpFlash(), and ZWidth().

constexpr double recob::OpFlash::NoCenter = std::numeric_limits<double>::max()
static

Special value used for absence of center location information.

Definition at line 23 of file OpFlash.h.

Referenced by hasXCenter(), and OpFlash().


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