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

In This Package:

DybDaq::FecData Class Reference

#include <FecData.h>

Inheritance diagram for DybDaq::FecData:

[legend]
Collaboration diagram for DybDaq::FecData:
[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 ~FecData ()
unsigned int rpcCFId () const
unsigned int rpcFecId () const
bool transErr1 () const
bool transErr2 () const
unsigned int trigType () const
bool fullFlag () const
bool validGPS () const
bool validCLK () const
bool usingUTC () const
unsigned int second () const
unsigned int nanoSecond () const
unsigned int hitMap () const
virtual unsigned int bufferSize () const
const FecTraitsfecTraits () const
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

virtual unsigned int formatComponent () const
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

 FecData (const unsigned int rpcCFId, const unsigned int rpcFecId, const bool transErr1, const bool transErr2, const unsigned int trigType, const bool fullFlag, const bool validGPS, const bool validCLK, const bool usingUTC, const unsigned int second, const unsigned int nanoSecond, const unsigned int hitMap, const FecTraits &traits)
 FecData (const ByteBuffer &byteBuffer, const FecTraits &traits)
 FecData ()
 FecData (const FecData &)
FecDataoperator= (const FecData &)
void setRpcCFId (const unsigned int rpcCFId)
void setRpcFecId (const unsigned int rpcFecId)
void setTransErr1 (const bool transErr1)
void setTransErr2 (const bool transErr2)
void setTrigType (const unsigned int trigType)
void setFullFlag (const bool fullFlag)
void setValidGPS (const bool validGPS)
void setValidCLK (const bool validCLK)
void setUsingUTC (const bool usingUTC)
void setSecond (const unsigned int second)
void setNanoSecond (const unsigned int nanoSecond)
void setHitMap (const unsigned int hitMap)

Friends

class FecReadout

Detailed Description

Definition at line 14 of file FecData.h.


Constructor & Destructor Documentation

FecData::~FecData (  )  [virtual]

Definition at line 44 of file FecData.cc.

00045 {
00046 }

FecData::FecData ( const unsigned int  rpcCFId,
const unsigned int  rpcFecId,
const bool  transErr1,
const bool  transErr2,
const unsigned int  trigType,
const bool  fullFlag,
const bool  validGPS,
const bool  validCLK,
const bool  usingUTC,
const unsigned int  second,
const unsigned int  nanoSecond,
const unsigned int  hitMap,
const FecTraits traits 
) [private]

Definition at line 8 of file FecData.cc.

00021 : FecBuffer(new char[ traits.fecSize() * kBytesInInt ], traits)
00022 {
00023    traits.initializeFec( buffer() );
00024    setRpcCFId(rpcCFId);
00025    setRpcFecId(rpcFecId);
00026    setTransErr1(transErr1);
00027    setTransErr2(transErr2);
00028    setTrigType(trigType);
00029    setFullFlag(fullFlag);
00030    setValidGPS(validGPS);
00031    setValidCLK(validCLK);
00032    setUsingUTC(usingUTC);
00033    setSecond(second);
00034    setNanoSecond(nanoSecond);
00035    setHitMap(hitMap);
00036 }

FecData::FecData ( const ByteBuffer byteBuffer,
const FecTraits traits 
) [private]

Definition at line 38 of file FecData.cc.

00039    : FecBuffer(byteBuffer, traits)
00040 {
00041    byteBuffer.position( byteBuffer.position() + fecTraits().fecSize() * kBytesInInt );
00042 }

DybDaq::FecData::FecData (  )  [private]

DybDaq::FecData::FecData ( const FecData  )  [private]


Member Function Documentation

unsigned int FecData::rpcCFId (  )  const

Definition at line 52 of file FecData.cc.

00052                                     {
00053    return readUnsignedInt(FecTraits::kRpcCFId);
00054 }

unsigned int FecData::rpcFecId (  )  const

Definition at line 56 of file FecData.cc.

00056                                      {
00057    return readUnsignedInt(FecTraits::kRpcFecId);
00058 }

bool FecData::transErr1 (  )  const

Definition at line 60 of file FecData.cc.

00060                               {
00061    return readBool(FecTraits::kTransErr1);
00062 }

bool FecData::transErr2 (  )  const

Definition at line 64 of file FecData.cc.

00064                               {
00065    return readBool(FecTraits::kTransErr2);
00066 }

unsigned int FecData::trigType (  )  const

Definition at line 68 of file FecData.cc.

00068                                      {
00069    return readUnsignedInt(FecTraits::kTrigType);
00070 }

bool FecData::fullFlag (  )  const

Definition at line 72 of file FecData.cc.

00072                              {
00073    return readBool(FecTraits::kFullFlag);
00074 }

bool FecData::validGPS (  )  const

Definition at line 76 of file FecData.cc.

00076                              {
00077    return readBool(FecTraits::kValidGPS);
00078 }

bool FecData::validCLK (  )  const

Definition at line 80 of file FecData.cc.

00080                              {
00081    return readBool(FecTraits::kValidCLK);
00082 }

bool FecData::usingUTC (  )  const

Definition at line 84 of file FecData.cc.

00084                              {
00085    return readBool(FecTraits::kUsingUTC);
00086 }

unsigned int FecData::second (  )  const

Definition at line 88 of file FecData.cc.

00088                                    {
00089    return readUnsignedInt(FecTraits::kSecond);
00090 }

unsigned int FecData::nanoSecond (  )  const

Definition at line 92 of file FecData.cc.

00092                                        {
00093    return readUnsignedInt(FecTraits::kNanoSecond);
00094 }

unsigned int FecData::hitMap (  )  const

Definition at line 96 of file FecData.cc.

00096                                    {
00097    return readUnsignedInt(FecTraits::kFecHitMap);
00098 }

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

Implements DybDaq::DaqBuffer.

Definition at line 100 of file FecData.cc.

00100                                        {
00101    return fecTraits().fecSize();
00102 }

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

Reimplemented from DybDaq::DaqBuffer.

Definition at line 48 of file FecData.cc.

00048                                             {
00049     return FecTraits::kData;
00050 }

FecData& DybDaq::FecData::operator= ( const FecData  )  [private]

void FecData::setRpcCFId ( const unsigned int  rpcCFId  )  [private]

Definition at line 104 of file FecData.cc.

00104                                                    {
00105    writeField( rpcCFId, FecTraits::kRpcCFId );
00106 }

void FecData::setRpcFecId ( const unsigned int  rpcFecId  )  [private]

Definition at line 108 of file FecData.cc.

00108                                                      {
00109    writeField( rpcFecId, FecTraits::kRpcFecId );
00110 }

void FecData::setTransErr1 ( const bool  transErr1  )  [private]

Definition at line 112 of file FecData.cc.

00112                                                {
00113    writeField( transErr1, FecTraits::kTransErr1);
00114 }

void FecData::setTransErr2 ( const bool  transErr2  )  [private]

Definition at line 116 of file FecData.cc.

00116                                                {
00117    writeField( transErr2, FecTraits::kTransErr2);
00118 }

void FecData::setTrigType ( const unsigned int  trigType  )  [private]

Definition at line 120 of file FecData.cc.

00120                                                      {
00121    writeField( trigType, FecTraits::kTrigType);
00122 }

void FecData::setFullFlag ( const bool  fullFlag  )  [private]

Definition at line 124 of file FecData.cc.

00124                                              {
00125    writeField( fullFlag, FecTraits::kFullFlag);
00126 }

void FecData::setValidGPS ( const bool  validGPS  )  [private]

Definition at line 128 of file FecData.cc.

00128                                              {
00129    writeField( validGPS, FecTraits::kValidGPS);
00130 }

void FecData::setValidCLK ( const bool  validCLK  )  [private]

Definition at line 132 of file FecData.cc.

00132                                              {
00133    writeField( validCLK, FecTraits::kValidCLK);
00134 }

void FecData::setUsingUTC ( const bool  usingUTC  )  [private]

Definition at line 136 of file FecData.cc.

00136                                              {
00137    writeField( usingUTC, FecTraits::kUsingUTC);
00138 }

void FecData::setSecond ( const unsigned int  second  )  [private]

Definition at line 140 of file FecData.cc.

00140                                                  {
00141    writeField( second, FecTraits::kSecond);
00142 }

void FecData::setNanoSecond ( const unsigned int  nanoSecond  )  [private]

Definition at line 144 of file FecData.cc.

00144                                                          {
00145    writeField( nanoSecond, FecTraits::kNanoSecond);
00146 }

void FecData::setHitMap ( const unsigned int  hitMap  )  [private]

Definition at line 148 of file FecData.cc.

00148                                                  {
00149    writeField( hitMap, FecTraits::kFecHitMap);
00150 }

const FecTraits & FecBuffer::fecTraits (  )  const [inherited]

Definition at line 23 of file FecBuffer.cc.

00024 {
00025    return dynamic_cast<const FecTraits&>( daqTraits() );
00026 }


Friends And Related Function Documentation

friend class FecReadout [friend]

Definition at line 19 of file FecData.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:07:52 2011 for FecReadoutFormat by doxygen 1.4.7