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

In This Package:

DayaBay::ReadoutHeader Class Reference

Top level header for all detector Readout data. More...

#include <ReadoutHeader.h>

Inheritance diagram for DayaBay::ReadoutHeader:

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

Public Types

typedef std::vector< IHeader * > Vector
typedef std::vector< const
IHeader * > 
ConstVector

Public Member Functions

virtual const std::string & defLoc () const
 ReadoutHeader ()
 Default Constructor.
 ~ReadoutHeader ()
 destructor
virtual const CLIDclID () const
virtual std::ostream & fillStream (std::ostream &s) const
 Fill the ASCII output stream.
const DayaBay::DaqCratedaqCrate () const
 Returns the DaqCrate held by this object.
const DayaBay::Readoutreadout () const
 Retrieve const Readout Data associated with one trigger in one detector.
void setReadout (DayaBay::Readout *value)
 Update Readout Data associated with one trigger in one detector.
void setDaqCrate (const DayaBay::DaqCrate *value)
 Update Readout Data associated with one trigger in one detector.
virtual const std::string & defLoc ()
void setInputHeaders (const std::vector< const DayaBay::IHeader * > &iheaders)
void addInputHeader (const DayaBay::IHeader *iheader)
const TimeStamptimeStamp () const
void setTimeStamp (const TimeStamp &ts)
const std::vector< const DayaBay::IHeader * > findHeaders (const CLID &clid) const
const Contextcontext () const
void setContext (const Context &value)
int execNumber () const
void setExecNumber (int value)
const std::vector< unsigned
long > & 
randomState () const
void setRandomState (const std::vector< unsigned long > &value)
const std::vector< const DayaBay::IHeader * > & inputHeaders () const
const DayaBay::JobIdjobId () const
void setJobId (const DayaBay::JobId &value)
virtual void setOutputAddress (const GenericAddress *roa)
virtual void setInputAddress (const GenericAddress *ria)
virtual const TimeStampearliest () const
void setEarliest (const TimeStamp &value)
virtual const TimeStamplatest () const
void setLatest (const TimeStamp &value)
virtual const GenericAddressoutputAddress () const
virtual const GenericAddressinputAddress () const
void setRegistry (IRegistry *pRegistry)
IRegistryregistry () const
LinkManagerlinkMgr () const
unsigned char version () const
void setVersion (unsigned char vsn)
unsigned long refCount () const
virtual unsigned long addRef ()
virtual unsigned long release ()
const std::string & name () const
virtual StreamBufferserialize (StreamBuffer &s)
virtual StreamBufferserialize (StreamBuffer &s) const

Static Public Member Functions

static const std::string & defaultLocation ()
 Give access to default location from class scope.
static const CLIDclassID ()
static void * operator new (size_t size)
 operator new
static void * operator new (size_t size, void *pObj)
 placement operator new it is needed by libstdc++ 3.2.3 (e.g.
static void operator delete (void *p)
 operator delete
static void operator delete (void *p, void *pObj)
 placement operator delete not sure if really needed, but it does not harm

Private Attributes

DayaBay::Readoutm_readout
 Readout Data associated with one trigger in one detector.
const DayaBay::DaqCratem_daqCrate
 Readout Data associated with one trigger in one detector.

Friends

friend friend std::ostream & operator<< (std::ostream &s, const DataObject &obj)

Detailed Description

Top level header for all detector Readout data.

Author:
dandwyer@caltech.edu created Mon Apr 11 03:45:45 2011

Definition at line 51 of file ReadoutHeader.h.


Constructor & Destructor Documentation

DayaBay::ReadoutHeader::ReadoutHeader (  )  [inline]

Default Constructor.

Definition at line 60 of file ReadoutHeader.h.

00060                     : m_readout(0),
00061                       m_daqCrate(0) {}

DayaBay::ReadoutHeader::~ReadoutHeader (  )  [inline]

destructor

Definition at line 145 of file ReadoutHeader.h.

00146 {
00147 
00148           delete m_daqCrate;
00149           delete m_readout;
00150         
00151 }


Member Function Documentation

static const std::string& DayaBay::ReadoutHeader::defaultLocation (  )  [inline, static]

Give access to default location from class scope.

Reimplemented from DayaBay::HeaderObject.

Definition at line 56 of file ReadoutHeader.h.

virtual const std::string& DayaBay::ReadoutHeader::defLoc (  )  const [inline, virtual]

Reimplemented from DayaBay::HeaderObject.

Definition at line 57 of file ReadoutHeader.h.

const CLID & DayaBay::ReadoutHeader::clID (  )  const [inline, virtual]

Reimplemented from DayaBay::HeaderObject.

Definition at line 153 of file ReadoutHeader.h.

00154 {
00155   return DayaBay::ReadoutHeader::classID();
00156 }

const CLID & DayaBay::ReadoutHeader::classID (  )  [inline, static]

Reimplemented from DayaBay::HeaderObject.

Definition at line 158 of file ReadoutHeader.h.

00159 {
00160   return CLID_ReadoutHeader;
00161 }

std::ostream & DayaBay::ReadoutHeader::fillStream ( std::ostream &  s  )  const [inline, virtual]

Fill the ASCII output stream.

Reimplemented from DayaBay::HeaderObject.

Definition at line 163 of file ReadoutHeader.h.

00164 {
00165   HeaderObject::fillStream(s);
00166   s << "{ " << "readout :       " << m_readout << std::endl
00167             << "daqCrate :      " << m_daqCrate << std::endl << " }";
00168   return s;
00169 }

const DayaBay::DaqCrate * DayaBay::ReadoutHeader::daqCrate (  )  const

Returns the DaqCrate held by this object.

Definition at line 28 of file ReadoutHeader.cc.

00028                                                             {
00029     if (0 == m_daqCrate) {
00030         // Create DAQ crate if necessary.
00031         IDaqReadoutSvc* daqReadoutSvc = getDaqReadoutSvc();
00032         if (0 != daqReadoutSvc) {
00033             if (daqReadoutSvc->isGenerating()) {
00034                 const DayaBay::Detector& detector = m_readout->detector();
00035                 ReadoutPmtCrate* pmtCrate;
00036                 if (0 != (pmtCrate = dynamic_cast<ReadoutPmtCrate*>(m_readout))) {
00037                     const DayaBay::DaqCrate** crate = const_cast<const DayaBay::DaqCrate**>(&m_daqCrate);
00038                     *(crate) = pmtCrate->daqCrate(daqReadoutSvc->runNumber(detector),
00039                                                   daqReadoutSvc->nextEventNumber(detector),
00040                                                   daqReadoutSvc->ltbSlot(detector));
00041                 }
00042             }
00043         }
00044     }
00045     return m_daqCrate;
00046 
00047 }

const DayaBay::Readout * DayaBay::ReadoutHeader::readout (  )  const [inline]

Retrieve const Readout Data associated with one trigger in one detector.

Definition at line 172 of file ReadoutHeader.h.

00173 {
00174   return m_readout;
00175 }

void DayaBay::ReadoutHeader::setReadout ( DayaBay::Readout value  )  [inline]

Update Readout Data associated with one trigger in one detector.

Definition at line 177 of file ReadoutHeader.h.

00178 {
00179   m_readout = value;
00180 }

void DayaBay::ReadoutHeader::setDaqCrate ( const DayaBay::DaqCrate value  )  [inline]

Update Readout Data associated with one trigger in one detector.

Definition at line 182 of file ReadoutHeader.h.

00183 {
00184   m_daqCrate = value;
00185 }

static void* DayaBay::ReadoutHeader::operator new ( size_t  size  )  [inline, static]

operator new

Reimplemented from DayaBay::HeaderObject.

Definition at line 91 of file ReadoutHeader.h.

00092     {
00093       return ( sizeof(ReadoutHeader) == size ? 
00094                boost::singleton_pool<ReadoutHeader, sizeof(ReadoutHeader)>::malloc() :
00095                ::operator new(size) );
00096     }

static void* DayaBay::ReadoutHeader::operator new ( size_t  size,
void *  pObj 
) [inline, static]

placement operator new it is needed by libstdc++ 3.2.3 (e.g.

in std::vector) it is not needed in libstdc++ >= 3.4

Reimplemented from DayaBay::HeaderObject.

Definition at line 101 of file ReadoutHeader.h.

00102     {
00103       return ::operator new (size,pObj);
00104     }

static void DayaBay::ReadoutHeader::operator delete ( void *  p  )  [inline, static]

operator delete

Reimplemented from DayaBay::HeaderObject.

Definition at line 107 of file ReadoutHeader.h.

00108     {
00109       boost::singleton_pool<ReadoutHeader, sizeof(ReadoutHeader)>::is_from(p) ?
00110       boost::singleton_pool<ReadoutHeader, sizeof(ReadoutHeader)>::free(p) :
00111       ::operator delete(p);
00112     }

static void DayaBay::ReadoutHeader::operator delete ( void *  p,
void *  pObj 
) [inline, static]

placement operator delete not sure if really needed, but it does not harm

Reimplemented from DayaBay::HeaderObject.

Definition at line 116 of file ReadoutHeader.h.

00117     {
00118       ::operator delete (p, pObj);
00119     }


Member Data Documentation

DayaBay::Readout* DayaBay::ReadoutHeader::m_readout [private]

Readout Data associated with one trigger in one detector.

Definition at line 125 of file ReadoutHeader.h.

const DayaBay::DaqCrate* DayaBay::ReadoutHeader::m_daqCrate [private]

Readout Data associated with one trigger in one detector.

Definition at line 126 of file ReadoutHeader.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:24:50 2011 for ReadoutEvent by doxygen 1.4.7