ROOT logo
HYDRA - THE HADES ANALYSIS PACKAGE » DATASOURCE » HTrb3TdcIterator

class HTrb3TdcIterator

Function Members (Methods)

Data Members

public:
enum { DummyEpoch
};
protected:
UInt_t*fBuf! pointer on raw data
UInt_tfBuflen! length of raw data
UInt_tfCurEpoch! current epoch
HTrb3TdcMessagefMsg! current message
Bool_tfSwapped! true if raw data are swapped

Class Charts

Inheritance Inherited Members Includes Libraries
Class Charts

Function documentation

HTrb3TdcIterator()
 base::LocalStampConverter  fConv;   //! use to covert time stamps in seconds
void assign(UInt_t* buf, UInt_t len, Bool_t swapped = true)
void setRefEpoch(UInt_t epoch)
      void assign(hadaq::RawSubevent* subev, UInt_t indx, UInt_t datalen)
      {
         if (subev!=0)
            assign(subev->GetDataPtr(indx), datalen, subev->IsSwapped());
      }
 One should call method to set current reference epoch 
Bool_t next()
uint64_t getMsgStamp() const
 Returns 39-bit value, which combines epoch and coarse counter.
 Time bin is 5 ns  
{ return (isCurEpoch() ? ((uint64_t) fCurEpoch) << 11 : 0) | (fMsg.isHitMsg() ? fMsg.getHitTmCoarse() : 0); }
Double_t getMsgTimeCoarse() const
{ return getMsgStamp() * HTrb3TdcMessage::coarseUnit(); /*fConv.ToSeconds(getMsgStamp()) */; }
Double_t getMsgTimeFine() const
HTrb3TdcMessage& msg()
{ return fMsg; }
Bool_t isCurEpoch() const
 Returns true, if current epoch was assigned 
{ return fCurEpoch != DummyEpoch; }
void clearCurEpoch()
 Clear current epoch value 
UInt_t getCurEpoch() const
 Return value of current epoch 
{ return fCurEpoch; }
void printmsg()