CMS 3D CMS Logo

List of all members | Public Member Functions | Protected Attributes
DCCDataBlockPrototype Class Reference

#include <DCCDataBlockPrototype.h>

Inheritance diagram for DCCDataBlockPrototype:
DCCFEBlock DCCMemBlock DCCSRPBlock DCCTCCBlock DCCSCBlock DCCTowerBlock DCCEBSRPBlock DCCEESRPBlock DCCEBTCCBlock DCCEETCCBlock

Public Member Functions

 DCCDataBlockPrototype (DCCDataUnpacker *unpacker, EcalElectronicsMapper *mapper, DCCEventBlock *event, bool unpack=true)
 
virtual void display (std::ostream &o)
 
void enableSyncChecks ()
 
virtual unsigned int getLength ()
 
virtual int unpack (const uint64_t **data, unsigned int *dwToEnd)
 
virtual void updateCollectors ()
 
virtual void updateEventPointers ()
 
virtual ~DCCDataBlockPrototype ()
 

Protected Attributes

unsigned int blockLength_
 
const uint64_t * data_
 
const uint64_t ** datap_
 
unsigned int * dwToEnd_
 
bool error_
 
DCCEventBlockevent_
 
EcalElectronicsMappermapper_
 
bool sync_
 
DCCDataUnpackerunpacker_
 
bool unpackInternalData_
 

Detailed Description

Definition at line 29 of file DCCDataBlockPrototype.h.

Constructor & Destructor Documentation

DCCDataBlockPrototype::DCCDataBlockPrototype ( DCCDataUnpacker unpacker,
EcalElectronicsMapper mapper,
DCCEventBlock event,
bool  unpack = true 
)

Class constructor

Definition at line 4 of file DCCDataBlockPrototype.cc.

5 : unpacker_(unp), error_(false), mapper_(mapper), event_(event), unpackInternalData_(unpackInternalData), sync_(false)
6 {}
DCCDataUnpacker * unpacker_
EcalElectronicsMapper * mapper_
virtual DCCDataBlockPrototype::~DCCDataBlockPrototype ( )
inlinevirtual

Definition at line 37 of file DCCDataBlockPrototype.h.

37 {};

Member Function Documentation

virtual void DCCDataBlockPrototype::display ( std::ostream &  o)
inlinevirtual

Reimplemented in DCCTCCBlock, DCCMemBlock, DCCSRPBlock, and DCCFEBlock.

Definition at line 43 of file DCCDataBlockPrototype.h.

43 {}
void DCCDataBlockPrototype::enableSyncChecks ( )
inline

Definition at line 45 of file DCCDataBlockPrototype.h.

References sync_.

Referenced by DCCEventBlock::enableSyncChecks().

virtual unsigned int DCCDataBlockPrototype::getLength ( )
inlinevirtual

Reimplemented in DCCEETCCBlock, and DCCFEBlock.

Definition at line 65 of file DCCDataBlockPrototype.h.

References blockLength_.

Referenced by DCCTCCBlock::unpack().

65 { return blockLength_; }
virtual int DCCDataBlockPrototype::unpack ( const uint64_t **  data,
unsigned int *  dwToEnd 
)
inlinevirtual
virtual void DCCDataBlockPrototype::updateCollectors ( )
inlinevirtual
virtual void DCCDataBlockPrototype::updateEventPointers ( )
inlinevirtual

Updates data pointer and dw to end of event

Definition at line 50 of file DCCDataBlockPrototype.h.

References blockLength_, datap_, and dwToEnd_.

Referenced by DCCFEBlock::unpack(), DCCSRPBlock::unpack(), DCCMemBlock::unpack(), and DCCTCCBlock::unpack().

50  {
51 
52  //cout<<"\n block Length "<<blockLength_;
53  //cout<<"\n dwToEne... "<<*dwToEnd_;
54 
55  *datap_ += blockLength_;
56 
57  // preventing pointers from navigating wildly outside of fedBlock
58  if((*dwToEnd_)>=blockLength_)
60  else
61  *dwToEnd_ = 0;
62 
63  }

Member Data Documentation

unsigned int DCCDataBlockPrototype::blockLength_
protected
const uint64_t* DCCDataBlockPrototype::data_
protected
const uint64_t** DCCDataBlockPrototype::datap_
protected
unsigned int* DCCDataBlockPrototype::dwToEnd_
protected
bool DCCDataBlockPrototype::error_
protected
DCCEventBlock* DCCDataBlockPrototype::event_
protected
EcalElectronicsMapper* DCCDataBlockPrototype::mapper_
protected
bool DCCDataBlockPrototype::sync_
protected
DCCDataUnpacker* DCCDataBlockPrototype::unpacker_
protected
bool DCCDataBlockPrototype::unpackInternalData_
protected