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

In This Package:

FecData.cc

Go to the documentation of this file.
00001 #include "FecReadoutFormat/FecData.h"
00002 #include "FecReadoutFormat/FecTraits.h"
00003 
00004 #include "DaqReadoutFormat/ByteBuffer.h"
00005 
00006 using DybDaq::FecData;
00007 
00008 FecData::FecData(const unsigned int rpcCFId,
00009                  const unsigned int rpcFecId,
00010                  const bool transErr1,
00011                  const bool transErr2,
00012                  const unsigned int trigType,
00013                  const bool fullFlag,
00014                  const bool validGPS,
00015                  const bool validCLK,
00016                  const bool usingUTC,
00017                  const unsigned int second,
00018                  const unsigned int nanoSecond,
00019                  const unsigned int hitMap,
00020                  const FecTraits& traits)
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 }
00037 
00038 FecData::FecData(const ByteBuffer& byteBuffer, const FecTraits& traits)
00039    : FecBuffer(byteBuffer, traits)
00040 {
00041    byteBuffer.position( byteBuffer.position() + fecTraits().fecSize() * kBytesInInt );
00042 }
00043 
00044 FecData::~FecData()
00045 {
00046 }
00047 
00048 unsigned int FecData::formatComponent() const {
00049     return FecTraits::kData;
00050 }
00051 
00052 unsigned int FecData::rpcCFId() const {
00053    return readUnsignedInt(FecTraits::kRpcCFId);
00054 }
00055 
00056 unsigned int FecData::rpcFecId() const {
00057    return readUnsignedInt(FecTraits::kRpcFecId);
00058 }
00059 
00060 bool FecData::transErr1() const {
00061    return readBool(FecTraits::kTransErr1);
00062 }
00063 
00064 bool FecData::transErr2() const {
00065    return readBool(FecTraits::kTransErr2);
00066 }
00067 
00068 unsigned int FecData::trigType() const {
00069    return readUnsignedInt(FecTraits::kTrigType);
00070 }
00071 
00072 bool FecData::fullFlag() const {
00073    return readBool(FecTraits::kFullFlag);
00074 }
00075 
00076 bool FecData::validGPS() const {
00077    return readBool(FecTraits::kValidGPS);
00078 }
00079 
00080 bool FecData::validCLK() const {
00081    return readBool(FecTraits::kValidCLK);
00082 }
00083 
00084 bool FecData::usingUTC() const {
00085    return readBool(FecTraits::kUsingUTC);
00086 }
00087 
00088 unsigned int FecData::second() const {
00089    return readUnsignedInt(FecTraits::kSecond);
00090 }
00091 
00092 unsigned int FecData::nanoSecond() const {
00093    return readUnsignedInt(FecTraits::kNanoSecond);
00094 }
00095 
00096 unsigned int FecData::hitMap() const {
00097    return readUnsignedInt(FecTraits::kFecHitMap);
00098 }
00099 
00100 unsigned int FecData::bufferSize() const {
00101    return fecTraits().fecSize();
00102 }
00103 
00104 void FecData::setRpcCFId(const unsigned int rpcCFId) {
00105    writeField( rpcCFId, FecTraits::kRpcCFId );
00106 }
00107 
00108 void FecData::setRpcFecId(const unsigned int rpcFecId) {
00109    writeField( rpcFecId, FecTraits::kRpcFecId );
00110 }
00111 
00112 void FecData::setTransErr1(const bool transErr1) {
00113    writeField( transErr1, FecTraits::kTransErr1);
00114 }
00115 
00116 void FecData::setTransErr2(const bool transErr2) {
00117    writeField( transErr2, FecTraits::kTransErr2);
00118 }
00119 
00120 void FecData::setTrigType(const unsigned int trigType) {
00121    writeField( trigType, FecTraits::kTrigType);
00122 }
00123 
00124 void FecData::setFullFlag(const bool fullFlag) {
00125    writeField( fullFlag, FecTraits::kFullFlag);
00126 }
00127 
00128 void FecData::setValidGPS(const bool validGPS) {
00129    writeField( validGPS, FecTraits::kValidGPS);
00130 }
00131 
00132 void FecData::setValidCLK(const bool validCLK) {
00133    writeField( validCLK, FecTraits::kValidCLK);
00134 }
00135 
00136 void FecData::setUsingUTC(const bool usingUTC) {
00137    writeField( usingUTC, FecTraits::kUsingUTC);
00138 }
00139 
00140 void FecData::setSecond(const unsigned int second) {
00141    writeField( second, FecTraits::kSecond);
00142 }
00143 
00144 void FecData::setNanoSecond(const unsigned int nanoSecond) {
00145    writeField( nanoSecond, FecTraits::kNanoSecond);
00146 }
00147 
00148 void FecData::setHitMap(const unsigned int hitMap) {
00149    writeField( hitMap, FecTraits::kFecHitMap);
00150 }
| 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