| Classes | Job Modules | Data Objects | Services | Algorithms | Tools | Packages | Directories | Tracs |

In This Package:

PerDaqPmtCrate Class Reference

#include <PerDaqPmtCrate.h>

Inheritance diagram for PerDaqPmtCrate:

[legend]
Collaboration diagram for PerDaqPmtCrate:
[legend]
List of all members.

Public Types

typedef std::vector< const
PerUintValue * > 
AdcPeakValues
 The list of ADC peak cycle values.
typedef std::vector< const
PerUintValue * > 
AdcValues
 The list of ADCs values.
typedef std::vector< const
PerUintValue * > 
PreAdcValues
 The list of pre-ADCs values.
typedef std::vector< const
PerUintValue * > 
GainValues
 The list of High Gain values.
typedef std::vector< const
PerUintValue * > 
TdcValues
 The list of TDCs values.
typedef std::vector< DayaBay::DaqPmtChannel * > PmtChannelPtrList
typedef std::vector< DayaBay::DaqFadcChannel * > FadcChannelPtrList

Public Member Functions

 PerDaqPmtCrate (const DybDaq::EventReadout *eventReadout)
 Constructor for read-only instance.
 PerDaqPmtCrate (const PerDaqPmtCrate &rhs)
 Creates an instance of this class.
virtual ~PerDaqPmtCrate ()
 Destroy this instance of the class.
const DayaBay::DaqPmtChannelchannel (const DayaBay::FeeChannelId &channelId) const
const DaqPmtCrate::PmtChannelPtrList & channel (int board, int chan) const
const AdcPeakValuespeaks (int board, int channel, int highGain=1) const
 Returns a vector containing 0 all the ADC values for the specified board, channel, and gain.
const AdcValuesadcs (int board, int channel, int highGain=1) const
 Returns a vector containing all the ADC values for the specified board, channel, and gain.
const PreAdcValuespreAdcRaws (int board, int channel, int highGain=1) const
 Returns a vector containing all the raw pre-ADC values for the specified board, channel, and gain.
const GainValuesgains (int board, int channel) const
 Returns a vector containing 0 all the ADC values for the specified board, channel, and gain.
const TdcValuestdcs (int board, int channel, int highGain=1) const
 Returns a vector containing 0 all the ADC values for the specified board, channel, and gain.
virtual std::ostream & fillStream (std::ostream &s) const
const DayaBay::DaqLtblocalTriggerBoard () const
const PmtChannelPtrListchannelReadouts () const
const PmtChannelPtrListpmtChannelReadouts () const
bool hasChannel (const DayaBay::FeeChannelId &channelId) const
bool hasChannel (const DayaBay::FadcChannelId &channelId) const
DaqPmtChannel & channel (const DayaBay::FeeChannelId &channelId)
const DaqFadcChannel & channel (const DayaBay::FadcChannelId &channelId) const
DaqFadcChannel & channel (const DayaBay::FadcChannelId &channelId)
const FadcChannelPtrListfadcChannelReadouts () const
const DayaBay::DaqPmtCrateasPmtCrate () const
const DayaBay::Detectordetector () const
unsigned int eventNumber () const
const DybDaq::EventReadouteventReadout () const
unsigned int localTriggerNumber () const
unsigned int runNumber () const
const TimeStamptriggerTime () const
Trigger::TriggerType_t triggerType () const
bool addLtb (const DaqLtb *ltb, const unsigned int slot)

Static Public Member Functions

static void * operator new (size_t size)
static void * operator new (size_t size, void *pObj)
static void operator delete (void *p)
static void operator delete (void *p, void *pObj)

Protected Member Functions

DybDaq::EventReadouteventReadout ()
const DayaBay::DaqLtbFramefirstLtbFrame () const
const DayaBay::DaqLtbltb () const

Private Member Functions

 PerDaqPmtCrate ()
 Suppress default.
PerDaqPmtCrateoperator= (const PerDaqPmtCrate &rhs)
 Suppress default.

Private Attributes

std::vector< const PerUintValue * > * m_returnedPeaks
 Temporary holding vector for results.
std::vector< const PerUintValue * > * m_returnedAdcs
 Temporary holding vector for results.
std::vector< const PerUintValue * > * m_returnedPreAdcs
 Temporary holding vector for results.
std::vector< const PerUintValue * > * m_returnedGains
 Temporary holding vector for results.
std::vector< const PerUintValue * > * m_returnedTdcs
 Temporary holding vector for results.

Static Private Attributes

static DaqPmtCrate::PmtChannelPtrList * m_channels = new DaqPmtCrate::PmtChannelPtrList()
 The common list to return channels.

Detailed Description

Definition at line 16 of file PerDaqPmtCrate.h.


Member Typedef Documentation

typedef std::vector<const PerUintValue*> PerDaqPmtCrate::AdcPeakValues

The list of ADC peak cycle values.

Definition at line 23 of file PerDaqPmtCrate.h.

typedef std::vector<const PerUintValue*> PerDaqPmtCrate::AdcValues

The list of ADCs values.

Definition at line 28 of file PerDaqPmtCrate.h.

typedef std::vector<const PerUintValue*> PerDaqPmtCrate::PreAdcValues

The list of pre-ADCs values.

Definition at line 33 of file PerDaqPmtCrate.h.

typedef std::vector<const PerUintValue*> PerDaqPmtCrate::GainValues

The list of High Gain values.

Definition at line 38 of file PerDaqPmtCrate.h.

typedef std::vector<const PerUintValue*> PerDaqPmtCrate::TdcValues

The list of TDCs values.

Definition at line 43 of file PerDaqPmtCrate.h.


Constructor & Destructor Documentation

PerDaqPmtCrate::PerDaqPmtCrate ( const DybDaq::EventReadout eventReadout  ) 

Constructor for read-only instance.

Definition at line 20 of file PerDaqPmtCrate.cc.

00020                                                                      :
00021   DayaBay::DaqPmtCrate(eventReadout),
00022   m_returnedPeaks(0),
00023   m_returnedAdcs(0),
00024   m_returnedPreAdcs(0),
00025   m_returnedGains(0),
00026   m_returnedTdcs(0) {
00027 }
  

PerDaqPmtCrate::PerDaqPmtCrate ( const PerDaqPmtCrate rhs  ) 

Creates an instance of this class.

Definition at line 29 of file PerDaqPmtCrate.cc.

00029                                                         :
00030   DayaBay::DaqPmtCrate(rhs),
00031   m_returnedPeaks(0),
00032   m_returnedAdcs(0),
00033   m_returnedPreAdcs(0),
00034   m_returnedGains(0),
00035   m_returnedTdcs(0) {
00036 }

PerDaqPmtCrate::~PerDaqPmtCrate (  )  [virtual]

Destroy this instance of the class.

Definition at line 38 of file PerDaqPmtCrate.cc.

00038                                 {
00039   if (0 != m_returnedTdcs) {
00040     const std::vector<const PerUintValue*>::const_iterator finished = m_returnedTdcs->end();
00041     for (std::vector<const PerUintValue*>::const_iterator iterator = m_returnedTdcs->begin();
00042          finished != iterator;
00043          ++iterator) {
00044       delete (PerUintValue*)(*iterator);
00045     }
00046     delete m_returnedTdcs;
00047   }
00048   if (0 != m_returnedGains) {
00049     const std::vector<const PerUintValue*>::const_iterator finished = m_returnedGains->end();
00050     for (std::vector<const PerUintValue*>::const_iterator iterator = m_returnedGains->begin();
00051          finished != iterator;
00052          ++iterator) {
00053       delete (PerUintValue*)(*iterator);
00054     }
00055     delete m_returnedGains;
00056   }
00057   if (0 != m_returnedAdcs) {
00058     const std::vector<const PerUintValue*>::const_iterator finished = m_returnedAdcs->end();
00059     for (std::vector<const PerUintValue*>::const_iterator iterator = m_returnedAdcs->begin();
00060          finished != iterator;
00061          ++iterator) {
00062       delete (PerUintValue*)(*iterator);
00063     }
00064     delete m_returnedAdcs;
00065   }
00066   if (0 != m_returnedPreAdcs) {
00067     const std::vector<const PerUintValue*>::const_iterator finished = m_returnedPreAdcs->end();
00068     for (std::vector<const PerUintValue*>::const_iterator iterator = m_returnedPreAdcs->begin();
00069          finished != iterator;
00070          ++iterator) {
00071       delete (PerUintValue*)(*iterator);
00072     }
00073     delete m_returnedPreAdcs;
00074   }
00075   if (0 != m_returnedPeaks) {
00076     const std::vector<const PerUintValue*>::const_iterator finished = m_returnedPeaks->end();
00077     for (std::vector<const PerUintValue*>::const_iterator iterator = m_returnedPeaks->begin();
00078          finished != iterator;
00079          ++iterator) {
00080       delete (PerUintValue*)(*iterator);
00081     }
00082     delete m_returnedPeaks;
00083   }
00084 }

PerDaqPmtCrate::PerDaqPmtCrate (  )  [private]

Suppress default.


Member Function Documentation

const DaqPmtChannel & PerDaqPmtCrate::channel ( const DayaBay::FeeChannelId channelId  )  const

Reimplemented from DayaBay::DaqPmtCrate.

Definition at line 86 of file PerDaqPmtCrate.cc.

00086                                                                                        {
00087   return DaqPmtCrate::channel(channelId);
00088 }

const DaqPmtCrate::PmtChannelPtrList & PerDaqPmtCrate::channel ( int  board,
int  chan 
) const

Definition at line 90 of file PerDaqPmtCrate.cc.

00090                                                                                      {
00091   m_channels->clear();
00092   m_channels->push_back(const_cast<DayaBay::DaqPmtChannel*>(&(channel(FeeChannelId(board, chan, (Site::Site_t)0, (DetectorId::DetectorId_t)0)))));
00093   return *m_channels;
00094 }

const PerDaqPmtCrate::AdcPeakValues & PerDaqPmtCrate::peaks ( int  board,
int  channel,
int  highGain = 1 
) const

Returns a vector containing 0 all the ADC values for the specified board, channel, and gain.

Definition at line 96 of file PerDaqPmtCrate.cc.

00096                                                                                                 {
00097   if (0 != m_returnedPeaks) {
00098     delete m_returnedPeaks;
00099   }
00100   m_returnedPeaks = new std::vector<const PerUintValue*>();
00101 
00102   const DaqPmtChannel& channelToUse = channel(FeeChannelId(board, chan, (Site::Site_t)0, (DetectorId::DetectorId_t)0));
00103   if (0 != &channelToUse) {
00104     const unsigned int finished = channelToUse.hitCount();
00105     for(unsigned int hit = 0; finished != hit; ++hit) {
00106       if (0 == highGain && !channelToUse.isHighGainAdc(hit)) {
00107         m_returnedPeaks->push_back(new PerUintValue(channelToUse.peakCycle(hit)));
00108       } else if (1 == highGain && channelToUse.isHighGainAdc(hit)) {
00109         m_returnedPeaks->push_back(new PerUintValue(channelToUse.peakCycle(hit)));
00110       }
00111     }
00112   }
00113   return *m_returnedPeaks;
00114 }

const PerDaqPmtCrate::AdcValues & PerDaqPmtCrate::adcs ( int  board,
int  channel,
int  highGain = 1 
) const

Returns a vector containing all the ADC values for the specified board, channel, and gain.

Definition at line 116 of file PerDaqPmtCrate.cc.

00116                                                                                            {
00117   if (0 != m_returnedAdcs) {
00118     delete m_returnedAdcs;
00119   }
00120   m_returnedAdcs = new std::vector<const PerUintValue*>();
00121 
00122   const DaqPmtChannel& channelToUse = channel(FeeChannelId(board, chan, (Site::Site_t)0, (DetectorId::DetectorId_t)0));
00123   if (0 != &channelToUse) {
00124     const unsigned int finished = channelToUse.hitCount();
00125     for(unsigned int hit = 0; finished != hit; ++hit) {
00126       if (0 == highGain && !channelToUse.isHighGainAdc(hit)) {
00127         m_returnedAdcs->push_back(new PerUintValue(channelToUse.adc(hit)));
00128       } else if (1 == highGain && channelToUse.isHighGainAdc(hit)) {
00129         m_returnedAdcs->push_back(new PerUintValue(channelToUse.adc(hit)));
00130       }
00131     }
00132   }
00133   return *m_returnedAdcs;
00134 }

const PerDaqPmtCrate::PreAdcValues & PerDaqPmtCrate::preAdcRaws ( int  board,
int  channel,
int  highGain = 1 
) const

Returns a vector containing all the raw pre-ADC values for the specified board, channel, and gain.

Definition at line 136 of file PerDaqPmtCrate.cc.

00136                                                                                                     {
00137   if (0 != m_returnedPreAdcs) {
00138     delete m_returnedPreAdcs;
00139   }
00140   m_returnedPreAdcs = new std::vector<const PerUintValue*>();
00141 
00142   const DaqPmtChannel& channelToUse = channel(FeeChannelId(board, chan, (Site::Site_t)0, (DetectorId::DetectorId_t)0));
00143   if (0 != &channelToUse) {
00144     const unsigned int finished = channelToUse.hitCount();
00145     for(unsigned int hit = 0; finished != hit; ++hit) {
00146       if (0 == highGain && !channelToUse.isHighGainAdc(hit)) {
00147         m_returnedPreAdcs->push_back(new PerUintValue(channelToUse.preAdcRaw(hit)));
00148       } else if (1 == highGain && channelToUse.isHighGainAdc(hit)) {
00149         m_returnedPreAdcs->push_back(new PerUintValue(channelToUse.preAdcRaw(hit)));
00150       }
00151     }
00152   }
00153   return *m_returnedPreAdcs;
00154 }

const PerDaqPmtCrate::GainValues & PerDaqPmtCrate::gains ( int  board,
int  channel 
) const

Returns a vector containing 0 all the ADC values for the specified board, channel, and gain.

Definition at line 156 of file PerDaqPmtCrate.cc.

00156                                                                                {
00157   if (0 != m_returnedGains) {
00158     delete m_returnedGains;
00159   }
00160   m_returnedGains = new std::vector<const PerUintValue*>();
00161 
00162   const DaqPmtChannel& channelToUse = channel(FeeChannelId(board, chan, (Site::Site_t)0, (DetectorId::DetectorId_t)0));
00163   if (0 != &channelToUse) {
00164     const unsigned int finished = channelToUse.hitCount();
00165     for(unsigned int hit = 0; finished != hit; ++hit) {
00166       if (!channelToUse.isHighGainAdc(hit)) {
00167         m_returnedGains->push_back(new PerUintValue(0));
00168       } else {
00169         m_returnedGains->push_back(new PerUintValue(1));
00170       }
00171     }
00172   }
00173   return *m_returnedGains;
00174 }

const PerDaqPmtCrate::TdcValues & PerDaqPmtCrate::tdcs ( int  board,
int  channel,
int  highGain = 1 
) const

Returns a vector containing 0 all the ADC values for the specified board, channel, and gain.

Definition at line 176 of file PerDaqPmtCrate.cc.

00176                                                                                            {
00177   if (0 != m_returnedTdcs) {
00178     delete m_returnedTdcs;
00179   }
00180   m_returnedTdcs = new std::vector<const PerUintValue*>();
00181 
00182   const DaqPmtChannel& channelToUse = channel(FeeChannelId(board, chan, (Site::Site_t)0, (DetectorId::DetectorId_t)0));
00183   if (0 != &channelToUse) {
00184     const unsigned int finished = channelToUse.hitCount();
00185     for(unsigned int hit = 0; finished != hit; ++hit) {
00186       if (0 == highGain && !channelToUse.isHighGainAdc(hit)) {
00187         m_returnedTdcs->push_back(new PerUintValue(channelToUse.tdc(hit)));
00188       } else if (1 == highGain && channelToUse.isHighGainAdc(hit)) {
00189         m_returnedTdcs->push_back(new PerUintValue(channelToUse.tdc(hit)));
00190       }
00191     }
00192   }
00193   return *m_returnedTdcs;
00194 }

PerDaqPmtCrate& PerDaqPmtCrate::operator= ( const PerDaqPmtCrate rhs  )  [private]

Suppress default.


Member Data Documentation

std::vector<const PerUintValue*>* PerDaqPmtCrate::m_returnedPeaks [mutable, private]

Temporary holding vector for results.

Definition at line 106 of file PerDaqPmtCrate.h.

std::vector<const PerUintValue*>* PerDaqPmtCrate::m_returnedAdcs [mutable, private]

Temporary holding vector for results.

Definition at line 111 of file PerDaqPmtCrate.h.

std::vector<const PerUintValue*>* PerDaqPmtCrate::m_returnedPreAdcs [mutable, private]

Temporary holding vector for results.

Definition at line 116 of file PerDaqPmtCrate.h.

std::vector<const PerUintValue*>* PerDaqPmtCrate::m_returnedGains [mutable, private]

Temporary holding vector for results.

Definition at line 121 of file PerDaqPmtCrate.h.

std::vector<const PerUintValue*>* PerDaqPmtCrate::m_returnedTdcs [mutable, private]

Temporary holding vector for results.

Definition at line 126 of file PerDaqPmtCrate.h.

DaqPmtCrate::PmtChannelPtrList * PerDaqPmtCrate::m_channels = new DaqPmtCrate::PmtChannelPtrList() [static, private]

The common list to return channels.

This is shared between all instances!

Definition at line 131 of file PerDaqPmtCrate.h.


The documentation for this class was generated from the following files:
| Classes | Job Modules | Data Objects | Services | Algorithms | Tools | Packages | Directories | Tracs |

Generated on Mon Apr 11 20:30:33 2011 for PerReadoutEvent by doxygen 1.4.7