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

In This Package:

DybDaq::FeeFoot Class Reference

#include <FeeFoot.h>

Inheritance diagram for DybDaq::FeeFoot:

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

Public Types

typedef std::pair< const char *,
unsigned int > 
OutputBuffer
typedef std::vector< OutputBufferOutputBufferList
typedef std::vector< ByteInspector * > Bytes
typedef std::vector< BitsInspector * > Bits

Public Member Functions

virtual ~FeeFoot ()
 Destroy this instance of the class.
unsigned int triggerNumber () const
 Returns the module address from this readout.
unsigned int dataLength () const
 Returns the data transfer length, in bytes, contained in this readout.
virtual unsigned int bufferSize () const
 Returns the size, in 4-bytes, of this ojbect's contents in the buffer.
const FeeTraitsfeeTraits () const
 Returns the FeeTraits instance used to parse this object's buffer.
bool hasDaqTraits () const
virtual const DaqTraitsdaqTraits () const
virtual unsigned int gather (OutputBufferList &outputBuffers) const
virtual unsigned int inspect (DaqBuffer::Bytes &inspectors) const

Static Public Attributes

static const unsigned int kBytesInInt
static const unsigned int kUndefinedFormatComponent

Protected Member Functions

 FeeFoot (const FeeHead &head)
 Create an instance of this class.
 FeeFoot (const ByteBuffer &byteBuffer, const FeeTraits &traits)
 Create an instance of this class.
virtual unsigned int formatComponent () const
 Returns the component with the format of this buffer.
const char * buffer () const
char * buffer ()
bool hasByteBuffer () const
const ByteBufferbyteBuffer () const
unsigned int fillInspectors (DaqBuffer::Bytes &inspectors, unsigned int component, unsigned int cursor) const
virtual bool readBool (const unsigned int field) const
virtual int readInt (const unsigned int field) const
virtual unsigned char readUnsignedChar (const unsigned int field) const
virtual unsigned int readUnsignedInt (const unsigned int field) const
virtual void writeField (const bool value, const unsigned int field)
virtual void writeField (const int value, const unsigned int field)
virtual void writeField (const unsigned int value, const unsigned int field)

Private Member Functions

 FeeFoot ()
 Suppress default.
 FeeFoot (FeeFoot &rhs)
 Suppress default.
FeeFootoperator= (FeeFoot &rhs)
 Suppress default.
void setTriggerNumber (const unsigned int triggerNumber)
 Sets the trigger number for this readout.
void setDataLength (const unsigned int dataLength)
 Sets the data transfer length, in bytes, contained in this readout.

Friends

class FeeReadout

Detailed Description

Definition at line 22 of file FeeFoot.h.


Constructor & Destructor Documentation

FeeFoot::~FeeFoot (  )  [virtual]

Destroy this instance of the class.

Definition at line 36 of file FeeFoot.cc.

00036                   {
00037 }

FeeFoot::FeeFoot ( const FeeHead head  )  [protected]

Create an instance of this class.

Definition at line 20 of file FeeFoot.cc.

00020                                     :
00021 FeeBuffer(new char[head.feeTraits().footSize() * kBytesInInt],
00022           head.feeTraits()) {
00023     const FeeTraits& traits = feeTraits();
00024     traits.initializeFoot(buffer());
00025     setTriggerNumber(head.triggerNumber());
00026     setDataLength((traits.headSize() + traits.footSize()) * kBytesInInt);
00027 }

FeeFoot::FeeFoot ( const ByteBuffer byteBuffer,
const FeeTraits traits 
) [protected]

Create an instance of this class.

Definition at line 29 of file FeeFoot.cc.

00030                                           :
00031 FeeBuffer(byteBuffer,
00032           traits) {
00033         byteBuffer.position(byteBuffer.position() + kBytesInInt);
00034 }

DybDaq::FeeFoot::FeeFoot (  )  [private]

Suppress default.

DybDaq::FeeFoot::FeeFoot ( FeeFoot rhs  )  [private]

Suppress default.


Member Function Documentation

unsigned int FeeFoot::triggerNumber (  )  const

Returns the module address from this readout.

Definition at line 43 of file FeeFoot.cc.

00043                                           {
00044         return readUnsignedInt(FeeTraits::kFootTriggerNumber);
00045 }

unsigned int FeeFoot::dataLength (  )  const

Returns the data transfer length, in bytes, contained in this readout.

Definition at line 47 of file FeeFoot.cc.

00047                                        {
00048         return readUnsignedInt(FeeTraits::kFootDataLength);
00049 }

unsigned int FeeFoot::bufferSize (  )  const [virtual]

Returns the size, in 4-bytes, of this ojbect's contents in the buffer.

Implements DybDaq::DaqBuffer.

Definition at line 51 of file FeeFoot.cc.

00051                                        {
00052     return feeTraits().footSize();
00053 }

unsigned int FeeFoot::formatComponent (  )  const [protected, virtual]

Returns the component with the format of this buffer.

Reimplemented from DybDaq::DaqBuffer.

Definition at line 39 of file FeeFoot.cc.

00039                                             {
00040     return FeeTraits::kFoot;
00041 }

FeeFoot& DybDaq::FeeFoot::operator= ( FeeFoot rhs  )  [private]

Suppress default.

void FeeFoot::setTriggerNumber ( const unsigned int  triggerNumber  )  [private]

Sets the trigger number for this readout.

Definition at line 55 of file FeeFoot.cc.

void FeeFoot::setDataLength ( const unsigned int  dataLength  )  [private]

Sets the data transfer length, in bytes, contained in this readout.

Definition at line 60 of file FeeFoot.cc.

00060                                                          {
00061     writeField(dataLength,
00062                FeeTraits::kFootDataLength);
00063 }

const FeeTraits & FeeBuffer::feeTraits (  )  const [inherited]

Returns the FeeTraits instance used to parse this object's buffer.

Definition at line 34 of file FeeBuffer.cc.

00034                                             {
00035         return dynamic_cast<const FeeTraits&>(daqTraits());
00036 }


Friends And Related Function Documentation

friend class FeeReadout [friend]

Definition at line 26 of file FeeFoot.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:08:03 2011 for FeeReadoutFormat by doxygen 1.4.7