List of all members | Public Types | Public Member Functions | Private Types | Private Member Functions | Private Attributes | Friends
sevt::PMTSimData Class Reference

Class to hold simulated data at PMT level. More...

#include <sevt/PMTSimData.h>

Public Types

typedef
utl::MultiTimeDistributionD::ConstIterator 
ConstFADCTraceDIterator
 Const iterator over available high gain channel FADC sources. More...
 
typedef
utl::MultiTimeDistributionD::Iterator 
FADCTraceDIterator
 Iterator over available high gain channel FADC sources. More...
 

Public Member Functions

FADCTraceDIterator FADCTracesDBegin (const sdet::PMTConstants::PMTGain gain=sdet::PMTConstants::eHighGain)
 Begin iterator over available FADC traces (you specify the gain) More...
 
ConstFADCTraceDIterator FADCTracesDBegin (const sdet::PMTConstants::PMTGain gain=sdet::PMTConstants::eHighGain) const
 Const begin iterator over available FADC traces (you specify the gain) More...
 
FADCTraceDIterator FADCTracesDEnd (const sdet::PMTConstants::PMTGain gain=sdet::PMTConstants::eHighGain)
 End iterator over available FADC traces (you specify the gain) More...
 
ConstFADCTraceDIterator FADCTracesDEnd (const sdet::PMTConstants::PMTGain gain=sdet::PMTConstants::eHighGain) const
 Const end iterator over available FADC traces (you specify the gain) More...
 
utl::TimeDistributionDGetFADCTraceD (const sdet::PMTConstants::PMTGain gain=sdet::PMTConstants::eHighGain, const StationConstants::SignalComponent source=StationConstants::eTotal)
 Get FADC trace by gain and source (these are double-valued traces so we sidestep the truncation of digital traces. More...
 
const utl::TimeDistributionDGetFADCTraceD (const sdet::PMTConstants::PMTGain gain=sdet::PMTConstants::eHighGain, const StationConstants::SignalComponent source=StationConstants::eTotal) const
 Get const FADC trace by gain and source. More...
 
double GetTriggerVEMPeak (const bool isUUB) const
 
void SetCompatibilityTriggerVEMPeak (const double peak)
 
void SetTriggerVEMPeak (const double peak)
 

Private Types

typedef std::map
< utl::TimeStamp,
utl::MultiTraceD
TimeTraceDMap
 
typedef std::map
< utl::TimeStamp,
utl::MultiTraceI
TimeTraceIMap
 
typedef std::map
< utl::TimeStamp,
utl::MultiTraceI
TimeTraceMap
 

Private Member Functions

utl::MultiTraceIGetMultiTrace (const utl::TimeStamp &stamp, const sdet::PMTConstants::PMTGain gain)
 Utility function to retrieve the multi trace and throw an exception when it fails. More...
 
const utl::MultiTraceIGetMultiTrace (const utl::TimeStamp &stamp, const sdet::PMTConstants::PMTGain gain) const
 
utl::MultiTraceDGetMultiTraceD (const utl::TimeStamp &stamp, const sdet::PMTConstants::PMTGain gain)
 
const utl::MultiTraceDGetMultiTraceD (const utl::TimeStamp &stamp, const sdet::PMTConstants::PMTGain gain) const
 
 PMTSimData ()=default
 
void SetFADCBinSize (const double binSize)
 
void SetFADCTraceLength (const unsigned int traceLength)
 
 ~PMTSimData ()=default
 

Private Attributes

utl::MultiTimeDistributionD fBaseSignal
 
double fCompatibilityTriggerVEMPeak = 0
 
double fFADCBinSize = 0
 
utl::MultiTimeDistributionI fFADCTrace [sdet::PMTConstants::eNumberOfGains]
 
utl::MultiTimeDistributionD fFADCTraceD [sdet::PMTConstants::eNumberOfGains]
 
unsigned int fFADCTraceLength = 0
 
TimeTraceIMap fFADCTraces [sdet::PMTConstants::eNumberOfGains]
 
TimeTraceDMap fFADCTracesD [sdet::PMTConstants::eNumberOfGains]
 
utl::MultiTimeDistributionD fFilterSignal
 
utl::MultiTimeDistributionI fPETimeDistribution
 
double fTriggerVEMPeak = 0
 

Friends

class io::PMTSimData_ROOT
 
class sevt::PMT
 
class utl::ShadowPtr< sevt::PMTSimData >
 

Photoelectron time distributions. Filled by the tank simulation

typedef
utl::MultiTimeDistributionI::Iterator 
PETimeDistributionsIterator
 Iterator over available PE time distribution sources. See utl::MultiTimeDistribution. More...
 
typedef
utl::MultiTimeDistributionI::ConstIterator 
ConstPETimeDistributionsIterator
 Const iterator over available PE time distribution sources. More...
 
utl::TimeDistributionIGetPETimeDistribution (const StationConstants::SignalComponent source=StationConstants::eTotal)
 Simulated photoelectron time distribution. More...
 
const utl::TimeDistributionIGetPETimeDistribution (const StationConstants::SignalComponent source=StationConstants::eTotal) const
 Simulated photoelectron time distribution. More...
 
void MakePETimeDistribution (const StationConstants::SignalComponent source=StationConstants::eTotal)
 Create a PE release time distribution (optionally for given source) More...
 
bool HasPETimeDistribution (const StationConstants::SignalComponent source=StationConstants::eTotal) const
 Check if a PE release time distribution exists (optionally for a given source) More...
 
PETimeDistributionsIterator PETimeDistributionsBegin ()
 Begin iterator over PE time distribution sources. More...
 
ConstPETimeDistributionsIterator PETimeDistributionsBegin () const
 Begin iterator over PE time distribution sources. More...
 
PETimeDistributionsIterator PETimeDistributionsEnd ()
 End iterator over PE time distribution sources. More...
 
ConstPETimeDistributionsIterator PETimeDistributionsEnd () const
 End iterator over PE time distribution sources. More...
 

Simulated signal at the PMT base (before the filter). Filled by PMT simulation.

typedef
utl::MultiTimeDistributionD::Iterator 
BaseSignalsIterator
 Iterator over available PMT base signal sources. More...
 
typedef
utl::MultiTimeDistributionD::ConstIterator 
ConstBaseSignalsIterator
 Const iterator over available PMT base signal sources. More...
 
utl::TimeDistributionDGetBaseSignal (const StationConstants::SignalComponent source=StationConstants::eTotal)
 Get simulated signal at the PMT base, optionally for a given source. More...
 
const utl::TimeDistributionDGetBaseSignal (const StationConstants::SignalComponent source=StationConstants::eTotal) const
 Get simulated signal at the PMT base (before filter) More...
 
void MakeBaseSignal (const StationConstants::SignalComponent source=StationConstants::eTotal)
 Create a TimeDistributionD representing signal at PMT base (optionally for a give source) More...
 
bool HasBaseSignal (const StationConstants::SignalComponent source=StationConstants::eTotal) const
 Check if signal at PMT base already exists (optionally for a given source) More...
 
void ClearBaseSignals ()
 Remove signal at PMT base. More...
 
BaseSignalsIterator BaseSignalsBegin ()
 Begin iterator over PMT base signal sources. More...
 
ConstBaseSignalsIterator BaseSignalsBegin () const
 Const begin iterator over PMT base signal sources. More...
 
BaseSignalsIterator BaseSignalsEnd ()
 End iterator over PMT base signal sources. More...
 
ConstBaseSignalsIterator BaseSignalsEnd () const
 Const end iterator over PMT base signal sources. More...
 

Simulated signal after the filter. Filled by filter & FADC simulation

typedef
utl::MultiTimeDistributionD::Iterator 
FilterSignalsIterator
 Iterator over available front-end filter sources. More...
 
typedef
utl::MultiTimeDistributionD::ConstIterator 
ConstFilterSignalsIterator
 Const iterator over available front-end filter sources. More...
 
utl::TimeDistributionDGetFilterSignal (const StationConstants::SignalComponent source=StationConstants::eTotal)
 get simulated signal after the filter, optionally for a given source. More...
 
const utl::TimeDistributionDGetFilterSignal (const StationConstants::SignalComponent source=StationConstants::eTotal) const
 get const simulated signal after the filter More...
 
void MakeFilterSignal (const StationConstants::SignalComponent source=StationConstants::eTotal)
 Create a TimeDistributionD representing signal after front-end filter (optionally for a given source) More...
 
bool HasFilterSignal (const StationConstants::SignalComponent source=StationConstants::eTotal) const
 Check if the signal at front-end filter already exists (optionally for a given source) More...
 
FilterSignalsIterator FilterSignalsBegin ()
 Begin iterator over available front-end filter sources. More...
 
ConstFilterSignalsIterator FilterSignalsBegin () const
 Const begin iterator over available front-end filter sources. More...
 
FilterSignalsIterator FilterSignalsEnd ()
 End iterator over available front-end filter sources. More...
 
ConstFilterSignalsIterator FilterSignalsEnd () const
 Const end iterator over available front-end filter sources. More...
 

Simulated FADC trace before local trigger simulation. Filled by filter and FADC simulation

typedef
utl::MultiTimeDistributionI::Iterator 
FADCTraceIterator
 Iterator over available high gain channel FADC sources. More...
 
typedef
utl::MultiTimeDistributionI::ConstIterator 
ConstFADCTraceIterator
 Const iterator over available high gain channel FADC sources. More...
 
utl::TimeDistributionIGetFADCTrace (const sdet::PMTConstants::PMTGain gain=sdet::PMTConstants::eHighGain, const StationConstants::SignalComponent source=StationConstants::eTotal)
 Get FADC trace by gain and source. More...
 
const utl::TimeDistributionIGetFADCTrace (const sdet::PMTConstants::PMTGain gain=sdet::PMTConstants::eHighGain, const StationConstants::SignalComponent source=StationConstants::eTotal) const
 Get const FADC trace by gain and source. More...
 
void MakeFADCTrace (StationConstants::SignalComponent source=StationConstants::eTotal)
 Make FADC trace prior to local trigger simulation. More...
 
bool HasFADCTrace (StationConstants::SignalComponent source=StationConstants::eTotal) const
 Check if FADC trace (prior to local trigger simulation) exists. More...
 
FADCTraceIterator FADCTracesBegin (const sdet::PMTConstants::PMTGain gain=sdet::PMTConstants::eHighGain)
 Begin iterator over available FADC traces (you specify the gain) More...
 
ConstFADCTraceIterator FADCTracesBegin (const sdet::PMTConstants::PMTGain gain=sdet::PMTConstants::eHighGain) const
 Const begin iterator over available FADC traces (you specify the gain) More...
 
FADCTraceIterator FADCTracesEnd (const sdet::PMTConstants::PMTGain gain=sdet::PMTConstants::eHighGain)
 End iterator over available FADC traces (you specify the gain) More...
 
ConstFADCTraceIterator FADCTracesEnd (const sdet::PMTConstants::PMTGain gain=sdet::PMTConstants::eHighGain) const
 Const end iterator over available FADC traces (you specify the gain) More...
 

Simulated FADC traces after local trigger simulation. Filled by the local trigger simulator (obviously)

typedef utl::MultiTraceI::Iterator FADCTriggeredTraceIterator
 Iterator over available high gain channel FADC sources. More...
 
typedef
utl::MultiTraceI::ConstIterator 
ConstFADCTriggeredTraceIterator
 
decltype(std::begin(boost::adaptors::keys(TimeTraceMap())))
typedef 
TriggerTimeIterator
 
TriggerTimeIterator TriggerTimesBegin () const
 
TriggerTimeIterator TriggerTimesEnd () const
 
utl::TraceIGetFADCTrace (const utl::TimeStamp &stamp, const sdet::PMTConstants::PMTGain gain=sdet::PMTConstants::eHighGain, const StationConstants::SignalComponent source=StationConstants::eTotal)
 
const utl::TraceIGetFADCTrace (const utl::TimeStamp &stamp, const sdet::PMTConstants::PMTGain gain=sdet::PMTConstants::eHighGain, const StationConstants::SignalComponent source=StationConstants::eTotal) const
 
void MakeFADCTrace (const utl::TimeStamp &stamp, StationConstants::SignalComponent source=StationConstants::eTotal)
 Make FADC trace after local trigger simulation. More...
 
bool HasFADCTrace (const utl::TimeStamp &stamp, StationConstants::SignalComponent source=StationConstants::eTotal) const
 Check if there is an FADC trace (after local trigger simulation) More...
 
FADCTriggeredTraceIterator FADCTriggeredTracesBegin (const utl::TimeStamp &stamp, const sdet::PMTConstants::PMTGain gain)
 
FADCTriggeredTraceIterator FADCTriggeredTracesEnd (const utl::TimeStamp &stamp, const sdet::PMTConstants::PMTGain gain)
 
ConstFADCTriggeredTraceIterator FADCTriggeredTracesBegin (const utl::TimeStamp &stamp, const sdet::PMTConstants::PMTGain gain) const
 
ConstFADCTriggeredTraceIterator FADCTriggeredTracesEnd (const utl::TimeStamp &stamp, const sdet::PMTConstants::PMTGain gain) const
 

Simulated FADC double-valued traces after local trigger simulation. Filled by the local trigger simulator (obviously)

typedef utl::MultiTraceD::Iterator FADCTriggeredTraceDIterator
 Iterator over available high gain channel FADC sources. More...
 
typedef
utl::MultiTraceD::ConstIterator 
ConstFADCTriggeredTraceDIterator
 
utl::TraceDGetFADCTraceD (const utl::TimeStamp &stamp, const sdet::PMTConstants::PMTGain gain=sdet::PMTConstants::eHighGain, const StationConstants::SignalComponent source=StationConstants::eTotal)
 
const utl::TraceDGetFADCTraceD (const utl::TimeStamp &stamp, const sdet::PMTConstants::PMTGain gain=sdet::PMTConstants::eHighGain, const StationConstants::SignalComponent source=StationConstants::eTotal) const
 
FADCTriggeredTraceDIterator FADCTriggeredTracesDBegin (const utl::TimeStamp &stamp, const sdet::PMTConstants::PMTGain gain)
 
FADCTriggeredTraceDIterator FADCTriggeredTracesDEnd (const utl::TimeStamp &stamp, const sdet::PMTConstants::PMTGain gain)
 
ConstFADCTriggeredTraceDIterator FADCTriggeredTracesDBegin (const utl::TimeStamp &stamp, const sdet::PMTConstants::PMTGain gain) const
 
ConstFADCTriggeredTraceDIterator FADCTriggeredTracesDEnd (const utl::TimeStamp &stamp, const sdet::PMTConstants::PMTGain gain) const
 

Detailed Description

Class to hold simulated data at PMT level.

Author
S. Argiro
T. Paul
T. Porter

Definition at line 40 of file PMTSimData.h.

Member Typedef Documentation

Iterator over available PMT base signal sources.

Definition at line 112 of file PMTSimData.h.

Const iterator over available PMT base signal sources.

Definition at line 115 of file PMTSimData.h.

Const iterator over available high gain channel FADC sources.

Definition at line 228 of file PMTSimData.h.

Const iterator over available high gain channel FADC sources.

Definition at line 194 of file PMTSimData.h.

Definition at line 300 of file PMTSimData.h.

Definition at line 273 of file PMTSimData.h.

Const iterator over available front-end filter sources.

Definition at line 154 of file PMTSimData.h.

Const iterator over available PE time distribution sources.

Definition at line 72 of file PMTSimData.h.

Iterator over available high gain channel FADC sources.

Returns a LabeledTrace when dereferenced

Definition at line 225 of file PMTSimData.h.

Iterator over available high gain channel FADC sources.

Returns a LabeledTrace when dereferenced

Definition at line 191 of file PMTSimData.h.

Iterator over available high gain channel FADC sources.

Definition at line 299 of file PMTSimData.h.

Iterator over available high gain channel FADC sources.

Definition at line 272 of file PMTSimData.h.

Iterator over available front-end filter sources.

Definition at line 151 of file PMTSimData.h.

Iterator over available PE time distribution sources. See utl::MultiTimeDistribution.

Definition at line 69 of file PMTSimData.h.

Definition at line 343 of file PMTSimData.h.

Definition at line 342 of file PMTSimData.h.

Definition at line 43 of file PMTSimData.h.

Constructor & Destructor Documentation

sevt::PMTSimData::PMTSimData ( )
privatedefault
sevt::PMTSimData::~PMTSimData ( )
privatedefault

Member Function Documentation

BaseSignalsIterator sevt::PMTSimData::BaseSignalsBegin ( )
inline

Begin iterator over PMT base signal sources.

Definition at line 118 of file PMTSimData.h.

References utl::MultiObject< T, LabeledObjectType >::Begin(), and fBaseSignal.

Referenced by SdFilterFADCSimulatorASCII::SdFilterFADCSimulator::Run().

ConstBaseSignalsIterator sevt::PMTSimData::BaseSignalsBegin ( ) const
inline

Const begin iterator over PMT base signal sources.

Definition at line 120 of file PMTSimData.h.

References utl::MultiObject< T, LabeledObjectType >::Begin(), and fBaseSignal.

BaseSignalsIterator sevt::PMTSimData::BaseSignalsEnd ( )
inline

End iterator over PMT base signal sources.

Definition at line 122 of file PMTSimData.h.

References utl::MultiObject< T, LabeledObjectType >::End(), and fBaseSignal.

Referenced by SdFilterFADCSimulatorASCII::SdFilterFADCSimulator::Run().

ConstBaseSignalsIterator sevt::PMTSimData::BaseSignalsEnd ( ) const
inline

Const end iterator over PMT base signal sources.

Definition at line 124 of file PMTSimData.h.

References utl::MultiObject< T, LabeledObjectType >::End(), and fBaseSignal.

void PMTSimData::ClearBaseSignals ( )

Remove signal at PMT base.

Definition at line 26 of file PMTSimData.cc.

Referenced by SdFilterFADCSimulatorASCII::SdFilterFADCSimulator::Run().

FADCTraceIterator sevt::PMTSimData::FADCTracesBegin ( const sdet::PMTConstants::PMTGain  gain = sdet::PMTConstants::eHighGain)
inline

Begin iterator over available FADC traces (you specify the gain)

Definition at line 197 of file PMTSimData.h.

References utl::MultiObject< T, LabeledObjectType >::Begin(), fFADCTrace, and gain.

ConstFADCTraceIterator sevt::PMTSimData::FADCTracesBegin ( const sdet::PMTConstants::PMTGain  gain = sdet::PMTConstants::eHighGain) const
inline

Const begin iterator over available FADC traces (you specify the gain)

Definition at line 200 of file PMTSimData.h.

References utl::MultiObject< T, LabeledObjectType >::Begin(), fFADCTrace, and gain.

FADCTraceDIterator sevt::PMTSimData::FADCTracesDBegin ( const sdet::PMTConstants::PMTGain  gain = sdet::PMTConstants::eHighGain)
inline

Begin iterator over available FADC traces (you specify the gain)

Definition at line 231 of file PMTSimData.h.

References utl::MultiObject< T, LabeledObjectType >::Begin(), fFADCTraceD, and gain.

ConstFADCTraceDIterator sevt::PMTSimData::FADCTracesDBegin ( const sdet::PMTConstants::PMTGain  gain = sdet::PMTConstants::eHighGain) const
inline

Const begin iterator over available FADC traces (you specify the gain)

Definition at line 234 of file PMTSimData.h.

References utl::MultiObject< T, LabeledObjectType >::Begin(), fFADCTraceD, and gain.

FADCTraceDIterator sevt::PMTSimData::FADCTracesDEnd ( const sdet::PMTConstants::PMTGain  gain = sdet::PMTConstants::eHighGain)
inline

End iterator over available FADC traces (you specify the gain)

Definition at line 237 of file PMTSimData.h.

References utl::MultiObject< T, LabeledObjectType >::End(), fFADCTraceD, and gain.

ConstFADCTraceDIterator sevt::PMTSimData::FADCTracesDEnd ( const sdet::PMTConstants::PMTGain  gain = sdet::PMTConstants::eHighGain) const
inline

Const end iterator over available FADC traces (you specify the gain)

Definition at line 240 of file PMTSimData.h.

References utl::MultiObject< T, LabeledObjectType >::End(), fFADCTraceD, and gain.

FADCTraceIterator sevt::PMTSimData::FADCTracesEnd ( const sdet::PMTConstants::PMTGain  gain = sdet::PMTConstants::eHighGain)
inline

End iterator over available FADC traces (you specify the gain)

Definition at line 203 of file PMTSimData.h.

References utl::MultiObject< T, LabeledObjectType >::End(), fFADCTrace, and gain.

ConstFADCTraceIterator sevt::PMTSimData::FADCTracesEnd ( const sdet::PMTConstants::PMTGain  gain = sdet::PMTConstants::eHighGain) const
inline

Const end iterator over available FADC traces (you specify the gain)

Definition at line 206 of file PMTSimData.h.

References utl::MultiObject< T, LabeledObjectType >::End(), fFADCTrace, and gain.

FADCTriggeredTraceIterator sevt::PMTSimData::FADCTriggeredTracesBegin ( const utl::TimeStamp stamp,
const sdet::PMTConstants::PMTGain  gain 
)
inline
ConstFADCTriggeredTraceIterator sevt::PMTSimData::FADCTriggeredTracesBegin ( const utl::TimeStamp stamp,
const sdet::PMTConstants::PMTGain  gain 
) const
inline
FADCTriggeredTraceDIterator sevt::PMTSimData::FADCTriggeredTracesDBegin ( const utl::TimeStamp stamp,
const sdet::PMTConstants::PMTGain  gain 
)
inline
ConstFADCTriggeredTraceDIterator sevt::PMTSimData::FADCTriggeredTracesDBegin ( const utl::TimeStamp stamp,
const sdet::PMTConstants::PMTGain  gain 
) const
inline
FADCTriggeredTraceDIterator sevt::PMTSimData::FADCTriggeredTracesDEnd ( const utl::TimeStamp stamp,
const sdet::PMTConstants::PMTGain  gain 
)
inline
ConstFADCTriggeredTraceDIterator sevt::PMTSimData::FADCTriggeredTracesDEnd ( const utl::TimeStamp stamp,
const sdet::PMTConstants::PMTGain  gain 
) const
inline
FADCTriggeredTraceIterator sevt::PMTSimData::FADCTriggeredTracesEnd ( const utl::TimeStamp stamp,
const sdet::PMTConstants::PMTGain  gain 
)
inline
ConstFADCTriggeredTraceIterator sevt::PMTSimData::FADCTriggeredTracesEnd ( const utl::TimeStamp stamp,
const sdet::PMTConstants::PMTGain  gain 
) const
inline
FilterSignalsIterator sevt::PMTSimData::FilterSignalsBegin ( )
inline

Begin iterator over available front-end filter sources.

Definition at line 157 of file PMTSimData.h.

References utl::MultiObject< T, LabeledObjectType >::Begin(), and fFilterSignal.

ConstFilterSignalsIterator sevt::PMTSimData::FilterSignalsBegin ( ) const
inline

Const begin iterator over available front-end filter sources.

Definition at line 159 of file PMTSimData.h.

References utl::MultiObject< T, LabeledObjectType >::Begin(), and fFilterSignal.

FilterSignalsIterator sevt::PMTSimData::FilterSignalsEnd ( )
inline

End iterator over available front-end filter sources.

Definition at line 161 of file PMTSimData.h.

References utl::MultiObject< T, LabeledObjectType >::End(), and fFilterSignal.

ConstFilterSignalsIterator sevt::PMTSimData::FilterSignalsEnd ( ) const
inline

Const end iterator over available front-end filter sources.

Definition at line 163 of file PMTSimData.h.

References utl::MultiObject< T, LabeledObjectType >::End(), and fFilterSignal.

utl::TimeDistributionD& sevt::PMTSimData::GetBaseSignal ( const StationConstants::SignalComponent  source = StationConstants::eTotal)
inline

Get simulated signal at the PMT base, optionally for a given source.

A PE time distribution is read in (as a TimeDistributionI), some smearing is done and a new distribution (a TimeDistributionD) is written. This TimeDistributionD represents the signal at the PMT base, before the filter.

Definition at line 94 of file PMTSimData.h.

References fBaseSignal, and utl::MultiTimeDistribution< T >::GetTimeDistribution().

Referenced by SdFilterFADCSimulatorASCII::SdFilterFADCSimulator::Run(), SdPMTSimulatorASCII::SdPMTSimulator::Run(), and testSEventImpl::setPMTSimDataValues().

const utl::TimeDistributionD& sevt::PMTSimData::GetBaseSignal ( const StationConstants::SignalComponent  source = StationConstants::eTotal) const
inline

Get simulated signal at the PMT base (before filter)

Definition at line 98 of file PMTSimData.h.

References fBaseSignal, and utl::MultiTimeDistribution< T >::GetTimeDistribution().

Get FADC trace by gain and source.

The trace is stored as a TimeDistributionI (rather than a TraceI) in order to accommodate negative time bins. The trace(s) after local trigger is stored in PMT

Definition at line 173 of file PMTSimData.h.

References fFADCTrace, gain, and utl::MultiTimeDistribution< T >::GetTimeDistribution().

Referenced by SdSimulationCalibratorOG::SdSimulationCalibrator::ProcessStation(), SdBaselineSimulatorASCII::SdBaselineSimulator::Run(), SdFilterFADCSimulatorASCII::SdFilterFADCSimulator::Run(), and testSEventImpl::setPMTSimDataValues().

const utl::TimeDistributionI& sevt::PMTSimData::GetFADCTrace ( const sdet::PMTConstants::PMTGain  gain = sdet::PMTConstants::eHighGain,
const StationConstants::SignalComponent  source = StationConstants::eTotal 
) const
inline

Get const FADC trace by gain and source.

Definition at line 178 of file PMTSimData.h.

References fFADCTrace, gain, and utl::MultiTimeDistribution< T >::GetTimeDistribution().

utl::TraceI& sevt::PMTSimData::GetFADCTrace ( const utl::TimeStamp stamp,
const sdet::PMTConstants::PMTGain  gain = sdet::PMTConstants::eHighGain,
const StationConstants::SignalComponent  source = StationConstants::eTotal 
)
inline

Definition at line 253 of file PMTSimData.h.

References gain, GetMultiTrace(), and utl::MultiTrace< T >::GetTrace().

const utl::TraceI& sevt::PMTSimData::GetFADCTrace ( const utl::TimeStamp stamp,
const sdet::PMTConstants::PMTGain  gain = sdet::PMTConstants::eHighGain,
const StationConstants::SignalComponent  source = StationConstants::eTotal 
) const
inline

Definition at line 258 of file PMTSimData.h.

References gain, GetMultiTrace(), and utl::MultiTrace< T >::GetTrace().

Get FADC trace by gain and source (these are double-valued traces so we sidestep the truncation of digital traces.

The trace is stored as a TimeDistributionD (rather than a TraceI) in order to accommodate negative time bins. The trace(s) after local trigger is stored in PMT

Definition at line 214 of file PMTSimData.h.

References fFADCTraceD, gain, and utl::MultiTimeDistribution< T >::GetTimeDistribution().

Referenced by SdBaselineSimulatorASCII::SdBaselineSimulator::Run(), and SdFilterFADCSimulatorASCII::SdFilterFADCSimulator::Run().

const utl::TimeDistributionD& sevt::PMTSimData::GetFADCTraceD ( const sdet::PMTConstants::PMTGain  gain = sdet::PMTConstants::eHighGain,
const StationConstants::SignalComponent  source = StationConstants::eTotal 
) const
inline

Get const FADC trace by gain and source.

Definition at line 219 of file PMTSimData.h.

References fFADCTraceD, gain, and utl::MultiTimeDistribution< T >::GetTimeDistribution().

utl::TraceD& sevt::PMTSimData::GetFADCTraceD ( const utl::TimeStamp stamp,
const sdet::PMTConstants::PMTGain  gain = sdet::PMTConstants::eHighGain,
const StationConstants::SignalComponent  source = StationConstants::eTotal 
)
inline

Definition at line 289 of file PMTSimData.h.

References gain, GetMultiTraceD(), and utl::MultiTrace< T >::GetTrace().

const utl::TraceD& sevt::PMTSimData::GetFADCTraceD ( const utl::TimeStamp stamp,
const sdet::PMTConstants::PMTGain  gain = sdet::PMTConstants::eHighGain,
const StationConstants::SignalComponent  source = StationConstants::eTotal 
) const
inline

Definition at line 293 of file PMTSimData.h.

References gain, GetMultiTraceD(), and utl::MultiTrace< T >::GetTrace().

utl::TimeDistributionD& sevt::PMTSimData::GetFilterSignal ( const StationConstants::SignalComponent  source = StationConstants::eTotal)
inline

get simulated signal after the filter, optionally for a given source.

This object should be filled by the filter simulation step. A time distribution (TimeDistributionD) is read in representing the signal at the PMT base, some smearing is done, and a new time distribution (TimeDistributionD) is written. This time distribution represents the signal after the filter but before the FADC sampling.

Definition at line 136 of file PMTSimData.h.

References fFilterSignal, and utl::MultiTimeDistribution< T >::GetTimeDistribution().

Referenced by SdFilterFADCSimulatorASCII::SdFilterFADCSimulator::Run(), and testSEventImpl::setPMTSimDataValues().

const utl::TimeDistributionD& sevt::PMTSimData::GetFilterSignal ( const StationConstants::SignalComponent  source = StationConstants::eTotal) const
inline

get const simulated signal after the filter

Definition at line 140 of file PMTSimData.h.

References fFilterSignal, and utl::MultiTimeDistribution< T >::GetTimeDistribution().

utl::MultiTraceI& sevt::PMTSimData::GetMultiTrace ( const utl::TimeStamp stamp,
const sdet::PMTConstants::PMTGain  gain 
)
inlineprivate

Utility function to retrieve the multi trace and throw an exception when it fails.

Definition at line 321 of file PMTSimData.h.

References OFFLINE_CAST_CONST_METHOD.

Referenced by FADCTriggeredTracesBegin(), FADCTriggeredTracesEnd(), and GetFADCTrace().

const MultiTraceI & PMTSimData::GetMultiTrace ( const utl::TimeStamp stamp,
const sdet::PMTConstants::PMTGain  gain 
) const
private

Definition at line 84 of file PMTSimData.cc.

References ERROR, gain, and G4StationSimulatorOG::p.

utl::MultiTraceD& sevt::PMTSimData::GetMultiTraceD ( const utl::TimeStamp stamp,
const sdet::PMTConstants::PMTGain  gain 
)
inlineprivate
const MultiTraceD & PMTSimData::GetMultiTraceD ( const utl::TimeStamp stamp,
const sdet::PMTConstants::PMTGain  gain 
) const
private

Definition at line 107 of file PMTSimData.cc.

References ERROR, gain, and G4StationSimulatorOG::p.

utl::TimeDistributionI& sevt::PMTSimData::GetPETimeDistribution ( const StationConstants::SignalComponent  source = StationConstants::eTotal)
inline
const utl::TimeDistributionI& sevt::PMTSimData::GetPETimeDistribution ( const StationConstants::SignalComponent  source = StationConstants::eTotal) const
inline

Simulated photoelectron time distribution.

Definition at line 58 of file PMTSimData.h.

References fPETimeDistribution, and utl::MultiTimeDistribution< T >::GetTimeDistribution().

double sevt::PMTSimData::GetTriggerVEMPeak ( const bool  isUUB) const
inline

Definition at line 46 of file PMTSimData.h.

References fCompatibilityTriggerVEMPeak, and fTriggerVEMPeak.

bool sevt::PMTSimData::HasBaseSignal ( const StationConstants::SignalComponent  source = StationConstants::eTotal) const
inline

Check if signal at PMT base already exists (optionally for a given source)

Definition at line 105 of file PMTSimData.h.

References fBaseSignal, and utl::MultiObject< T, LabeledObjectType >::HasLabel().

Referenced by SdPMTSimulatorASCII::SdPMTSimulator::Run(), and testSEventImpl::setPMTSimDataValues().

bool sevt::PMTSimData::HasFADCTrace ( StationConstants::SignalComponent  source = StationConstants::eTotal) const
inline
bool PMTSimData::HasFADCTrace ( const utl::TimeStamp stamp,
StationConstants::SignalComponent  source = StationConstants::eTotal 
) const

Check if there is an FADC trace (after local trigger simulation)

Definition at line 50 of file PMTSimData.cc.

References sdet::PMTConstants::eHighGain.

bool sevt::PMTSimData::HasFilterSignal ( const StationConstants::SignalComponent  source = StationConstants::eTotal) const
inline

Check if the signal at front-end filter already exists (optionally for a given source)

Definition at line 147 of file PMTSimData.h.

References fFilterSignal, and utl::MultiObject< T, LabeledObjectType >::HasLabel().

Referenced by SdFilterFADCSimulatorASCII::SdFilterFADCSimulator::Run(), and testSEventImpl::setPMTSimDataValues().

bool sevt::PMTSimData::HasPETimeDistribution ( const StationConstants::SignalComponent  source = StationConstants::eTotal) const
inline
void PMTSimData::MakeBaseSignal ( const StationConstants::SignalComponent  source = StationConstants::eTotal)

Create a TimeDistributionD representing signal at PMT base (optionally for a give source)

Definition at line 19 of file PMTSimData.cc.

References utl::ns.

Referenced by SdPMTSimulatorASCII::SdPMTSimulator::Run(), and testSEventImpl::setPMTSimDataValues().

void PMTSimData::MakeFADCTrace ( StationConstants::SignalComponent  source = StationConstants::eTotal)
void PMTSimData::MakeFADCTrace ( const utl::TimeStamp stamp,
StationConstants::SignalComponent  source = StationConstants::eTotal 
)

Make FADC trace after local trigger simulation.

Definition at line 61 of file PMTSimData.cc.

References sdet::PMTConstants::eHighGain, sdet::PMTConstants::eLowGain, gain, and utl::m.

void PMTSimData::MakeFilterSignal ( const StationConstants::SignalComponent  source = StationConstants::eTotal)

Create a TimeDistributionD representing signal after front-end filter (optionally for a given source)

Definition at line 33 of file PMTSimData.cc.

References utl::ns.

Referenced by SdFilterFADCSimulatorASCII::SdFilterFADCSimulator::Run(), and testSEventImpl::setPMTSimDataValues().

void PMTSimData::MakePETimeDistribution ( const StationConstants::SignalComponent  source = StationConstants::eTotal)
PETimeDistributionsIterator sevt::PMTSimData::PETimeDistributionsBegin ( )
inline

Begin iterator over PE time distribution sources.

Definition at line 75 of file PMTSimData.h.

References utl::MultiObject< T, LabeledObjectType >::Begin(), and fPETimeDistribution.

ConstPETimeDistributionsIterator sevt::PMTSimData::PETimeDistributionsBegin ( ) const
inline

Begin iterator over PE time distribution sources.

Definition at line 77 of file PMTSimData.h.

References utl::MultiObject< T, LabeledObjectType >::Begin(), and fPETimeDistribution.

PETimeDistributionsIterator sevt::PMTSimData::PETimeDistributionsEnd ( )
inline

End iterator over PE time distribution sources.

Definition at line 79 of file PMTSimData.h.

References utl::MultiObject< T, LabeledObjectType >::End(), and fPETimeDistribution.

ConstPETimeDistributionsIterator sevt::PMTSimData::PETimeDistributionsEnd ( ) const
inline

End iterator over PE time distribution sources.

Definition at line 81 of file PMTSimData.h.

References utl::MultiObject< T, LabeledObjectType >::End(), and fPETimeDistribution.

void sevt::PMTSimData::SetCompatibilityTriggerVEMPeak ( const double  peak)
inline

Definition at line 48 of file PMTSimData.h.

References fCompatibilityTriggerVEMPeak.

void sevt::PMTSimData::SetFADCBinSize ( const double  binSize)
inlineprivate

Definition at line 318 of file PMTSimData.h.

References fFADCBinSize.

void sevt::PMTSimData::SetFADCTraceLength ( const unsigned int  traceLength)
inlineprivate

Definition at line 317 of file PMTSimData.h.

References fFADCTraceLength.

Referenced by sevt::PMT::MakeSimData().

void sevt::PMTSimData::SetTriggerVEMPeak ( const double  peak)
inline

Definition at line 47 of file PMTSimData.h.

References fTriggerVEMPeak.

TriggerTimeIterator sevt::PMTSimData::TriggerTimesBegin ( ) const
inline

Definition at line 249 of file PMTSimData.h.

References sdet::PMTConstants::eHighGain, and fFADCTraces.

TriggerTimeIterator sevt::PMTSimData::TriggerTimesEnd ( ) const
inline

Definition at line 250 of file PMTSimData.h.

References sdet::PMTConstants::eHighGain, and fFADCTraces.

Friends And Related Function Documentation

friend class io::PMTSimData_ROOT
friend

Definition at line 349 of file PMTSimData.h.

friend class sevt::PMT
friend

Definition at line 347 of file PMTSimData.h.

friend class utl::ShadowPtr< sevt::PMTSimData >
friend

Definition at line 348 of file PMTSimData.h.

Member Data Documentation

utl::MultiTimeDistributionD sevt::PMTSimData::fBaseSignal
private
double sevt::PMTSimData::fCompatibilityTriggerVEMPeak = 0
private

Definition at line 330 of file PMTSimData.h.

Referenced by GetTriggerVEMPeak(), and SetCompatibilityTriggerVEMPeak().

double sevt::PMTSimData::fFADCBinSize = 0
private

Definition at line 337 of file PMTSimData.h.

Referenced by SetFADCBinSize().

utl::MultiTimeDistributionI sevt::PMTSimData::fFADCTrace[sdet::PMTConstants::eNumberOfGains]
private
utl::MultiTimeDistributionD sevt::PMTSimData::fFADCTraceD[sdet::PMTConstants::eNumberOfGains]
private
unsigned int sevt::PMTSimData::fFADCTraceLength = 0
private

Definition at line 336 of file PMTSimData.h.

Referenced by SetFADCTraceLength().

TimeTraceIMap sevt::PMTSimData::fFADCTraces[sdet::PMTConstants::eNumberOfGains]
private
TimeTraceDMap sevt::PMTSimData::fFADCTracesD[sdet::PMTConstants::eNumberOfGains]
private

Definition at line 345 of file PMTSimData.h.

Referenced by io::PMTSimData_ROOT::operator>>().

utl::MultiTimeDistributionD sevt::PMTSimData::fFilterSignal
private
utl::MultiTimeDistributionI sevt::PMTSimData::fPETimeDistribution
private
double sevt::PMTSimData::fTriggerVEMPeak = 0
private

Definition at line 329 of file PMTSimData.h.

Referenced by GetTriggerVEMPeak(), and SetTriggerVEMPeak().

decltype(std::begin(boost::adaptors::keys(TimeTraceMap()))) typedef sevt::PMTSimData::TriggerTimeIterator

Definition at line 247 of file PMTSimData.h.


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

, generated on Tue Sep 26 2023.