#include "hmdcdataword.h"

HMdcDataWord


class description - source file - inheritance tree (.pdf)

class HMdcDataWord : public TObject

Inheritance Chart:
TObject
<-
HMdcDataWord

    public:
HMdcDataWord() HMdcDataWord(const HMdcDataWord&) ~HMdcDataWord() Bool_t checkConsistency(UInt_t version = 0, UInt_t data = 0) Bool_t checkConsistencyRocHeader(UInt_t version = 0) static TClass* Class() void clear() void clearAddress() void clearAll() void clearHeader() Bool_t decode(const UInt_t data, UInt_t version, Bool_t consisCheck = kFALSE) Bool_t decode(const UInt_t data, Bool_t consisCheck = kFALSE) void dump(UInt_t version = 1) Int_t getBus() Int_t getChan() UInt_t getCodedDataWord(UInt_t version = 1) Int_t getErrorFlag() Int_t getEvNb() Int_t getHit() Int_t getMbo() Int_t getMboNb() Bool_t getQuietMode() Int_t getRoc() Int_t getRocNb() Int_t getRocP() Int_t getSam() Int_t getSamP() Int_t getSizeStatus() Int_t getSubEvtSize() Int_t getTdc() Int_t getTdcNb() Int_t getTime() Int_t getTrigType() Int_t getVirtualSamNr() virtual TClass* IsA() const HMdcDataWord& operator=(const HMdcDataWord&) void print(UInt_t version) void print() void setAddress(Int_t s, Int_t m, Int_t mb, Int_t t, Int_t e) void setAdress(Int_t s, Int_t m, Int_t mb, Int_t t, Int_t e) void setBus(Int_t i) void setChan(Int_t i) void setErrorFlag(Int_t i) void setEvNb(Int_t i) void setHit(Int_t i) void setMbo(Int_t i) void setMboNb(Int_t i) void setQuietMode(Bool_t b = kTRUE) void setRoc(Int_t i) void setRocNb(Int_t i) void setRocP(Int_t i) void setSam(Int_t i) void setSamP(Int_t i) void setSizeStatus(Int_t i) void setSubEvtSize(Int_t i) void setTdc(Int_t i) void setTdcNb(Int_t i) void setTime(Int_t i) void setTrigType(Int_t i) virtual void ShowMembers(TMemberInspector& insp, char* parent) virtual void Streamer(TBuffer& b) void StreamerNVirtual(TBuffer& b) Bool_t subHeader(const UInt_t* data, UInt_t version, Bool_t consisCheck = kFALSE) Bool_t subHeader(const UInt_t* data, Bool_t consisCheck = kFALSE)

Data Members

    private:
Int_t evNb event number Int_t rocNb roc number Int_t trigType trigger type Int_t errorFlag error flag Int_t subevtSize subevent size Int_t sam sam number Int_t samP sam position (x/y) Int_t roc roc number Int_t rocP roc position (LVL1 port 0/1) Int_t mboNb mbo position Int_t tdcNb tdc number Int_t chan channel number Int_t hit hit number (modulo 2) Int_t time time Int_t sector MdcRaw container coordinate: sector Int_t module MdcRaw container coordinate: module Int_t mbo MdcRaw container coordinate: mbo Int_t tdc MdcRaw container coordinate: tdc (tdc*8 + channel) Int_t entry Number of entry static Bool_t noComment ! switch all prints of; public:
static const enum HMdcDataWord:: m1 static const enum HMdcDataWord:: m2 static const enum HMdcDataWord:: m3 static const enum HMdcDataWord:: m4 static const enum HMdcDataWord:: m5 static const enum HMdcDataWord:: m11 static const enum HMdcDataWord:: m16 static const enum HMdcDataWord:: m31

Class Description


 HMdcDataWord

 Raw Data object of MDC. Decoding of the data word is done here
 by masking out the single informations from the 32bit data word.
 This class is used by HMdcUnpacker to decode the streamed
 input data from hld to HMdcRaw object data level. A consistency check
 of the range of the single variables is performed here.

 File: $RCSfile: hmdcdataword.cc,v $

 Former Author: Walter Karig <W.Karig@gsi.de>
 Meanwhile Peter Zumbruch <P.Zumbruch@gsi.de>

 Version: $Revision: 1.21 $
 Modified by $Author: halo $ on $Date: 2006/08/12 12:13:25 $

HMdcDataWord()

Bool_t decode( const UInt_t data, UInt_t version, Bool_t consistencyCheck)
 decoding of the 32 bit data word. version sets the
 different decode version. A consistency check of the data
 word is performed optionally (consistencyCheck=kTRUE).

UInt_t getCodedDataWord( UInt_t version )
 recoding of the 32 bit data word. version sets the
 different decode version.

void dump(UInt_t version)
 dumps the event sequence number to the screen.

Bool_t subHeader( const UInt_t* data, UInt_t version, Bool_t consistencyCheck)
 decodes the subheader information of the mdc data word
version sets the different decode version. A consistency check of the data
 word is performed optionally (consistencyCheck=kTRUE).

Bool_t checkConsistency(UInt_t version, UInt_t data)
 checks for the different decoding version whether the decoded value are consistent.
 I.e. that
             sam in [ 0,   31]
    sam position in [ 0,    1]
             roc in [ 1,    5]
    roc position in [ 0,    1]
           mboNb in [ 1,    3]
           tdcNb in [ 0,   11]
        channels in [ 0,    7]
 hits (module 2) in [ 0,    1]
            time in [ 0,0x7ff] (only here hex value!)

 NOTE: boundaries are the same for version 0 and 1, all other are not supported

 return values:
  kTRUE all checks passed
  kFALSE else

Bool_t checkConsistencyRocHeader(UInt_t version)
 boundary checks for the consistency of the roc header
 I.e. that
  event number in [ 0x0,0xffff]
 subevent size in [ 0x0,0xffff]
  trigger type in [ 0x1,0xf]
    roc number in [ 0x1,0x5]
     errorFlag in [ 0x0,0xf]

 NOTE: boundaries are the same for version 0 and 1, all other are not supported

 return values:
  kTRUE all checks passed
  kFALSE else

void print(UInt_t version)



Inline Functions


                 void ~HMdcDataWord()
                 void clear()
                 void clearAll()
                 void clearAddress()
                 void clearHeader()
               Bool_t decode(const UInt_t data, Bool_t consisCheck = kFALSE)
                Int_t getEvNb()
                Int_t getTrigType()
                Int_t getErrorFlag()
                Int_t getSizeStatus()
                Int_t getSubEvtSize()
                Int_t getRocNb()
                Int_t getSam()
                Int_t getSamP()
                Int_t getRoc()
                Int_t getRocP()
                Int_t getBus()
                Int_t getMbo()
                Int_t getMboNb()
                Int_t getTdc()
                Int_t getTdcNb()
                Int_t getChan()
                Int_t getHit()
                Int_t getTime()
                Int_t getVirtualSamNr()
               Bool_t getQuietMode()
                 void print()
                 void setAdress(Int_t s, Int_t m, Int_t mb, Int_t t, Int_t e)
                 void setAddress(Int_t s, Int_t m, Int_t mb, Int_t t, Int_t e)
                 void setEvNb(Int_t i)
                 void setTrigType(Int_t i)
                 void setErrorFlag(Int_t i)
                 void setSizeStatus(Int_t i)
                 void setSubEvtSize(Int_t i)
                 void setRocNb(Int_t i)
                 void setSam(Int_t i)
                 void setSamP(Int_t i)
                 void setRoc(Int_t i)
                 void setRocP(Int_t i)
                 void setBus(Int_t i)
                 void setMbo(Int_t i)
                 void setMboNb(Int_t i)
                 void setTdc(Int_t i)
                 void setTdcNb(Int_t i)
                 void setChan(Int_t i)
                 void setHit(Int_t i)
                 void setTime(Int_t i)
                 void setQuietMode(Bool_t b = kTRUE)
               Bool_t subHeader(const UInt_t* data, Bool_t consisCheck = kFALSE)
              TClass* Class()
              TClass* IsA() const
                 void ShowMembers(TMemberInspector& insp, char* parent)
                 void Streamer(TBuffer& b)
                 void StreamerNVirtual(TBuffer& b)
         HMdcDataWord HMdcDataWord(const HMdcDataWord&)
        HMdcDataWord& operator=(const HMdcDataWord&)


Last update: Fri Jan 26 12:05:23 2007


ROOT page - Class index - Class Hierarchy - Top of the page

This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to ROOT support, or contact the developers with any questions or problems regarding ROOT.