#include "hmdcraw.h"

HMdcRaw


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

class HMdcRaw : public TObject

Inheritance Chart:
TObject
<-
HMdcRaw

    public:
HMdcRaw() HMdcRaw(const HMdcRaw&) ~HMdcRaw() static TClass* Class() void clear() void getAddress(Int_t& s, Int_t& m, Int_t& mb, Int_t& t) Int_t getMbo() const Int_t getModule() const Int_t getNHits() const Int_t getNTrialsToFillHits() const Int_t getSector() const Int_t getTdc() const Int_t getTime(const Int_t n) const virtual TClass* IsA() const HMdcRaw& operator=(const HMdcRaw&) void setAddress(const Int_t s, const Int_t m, const Int_t mb, const Int_t t) void setMbo(const Int_t n) void setModule(const Int_t n) void setSector(const Int_t n) void setTdc(const Int_t n) Bool_t setTime(const Int_t, const Int_t mode = 0, const Bool_t noComment = kFALSE) Bool_t setTimeNew(const Int_t time, const Int_t nrtime) virtual void ShowMembers(TMemberInspector& insp, char* parent) virtual void Streamer(TBuffer& b) void StreamerNVirtual(TBuffer& b)

Data Members


    protected:
Int_t nHits number of hits / Tdc mode Int_t time1 time of 1st hit [binnumber] Int_t time2 time of 2nd hit [binnumber] Int_t time3 time of 3rd hit [binnumber] Int_t time4 time of 4th hit [binnumber] Int_t time5 time of 5th hit [binnumber] Int_t time6 time of 6th hit [binnumber] Int_t sector sector number [0-5] Int_t module module number [0-3] Int_t mbo motherboard number [0-15] Int_t tdc tdc number * 8 + tdc channel number [0-95] Int_t nTrialsToFillHits number of trials to fill a time value to this cell / corresponding to nHist public:
static const Int_t kDefaultValueTime ! default value of time static const Int_t kDefaultValueSector ! default value of sector static const Int_t kDefaultValueModule ! default value of module static const Int_t kDefaultValueMbo ! default value of motherboard number static const Int_t kDefaultValueTdc ! default value of tdc number

Class Description

 HMdcRaw

 Unpacked raw data of the MDC

 In measurement mode the TDC accepts two hits per channel. The TDC can hereby
 trigger either on two leading edges (hit multiplicity nHits: -1 or -2) or
 on a leading and the trailing edge of a single pulse (nHits: +1 or +2).
 The TDC is able to generate internal calibration events. In this case a
 single channel sends 6 time informations (nHits: +6).

 The addresses of the cell can be accessed via the inline functions
     void setSector(const Int_t n)
     void setModule(const Int_t n)
     void setMbo(const Int_t n)
     void setTdc(const Int_t n)
     void setAddress(const Int_t sector,const Int_t module,const Int_t mbo,
                     const Int_t tdc)
     Int_t getSector(void) const
     Int_t getModule(void) const
     Int_t getMbo(void) const
     Int_t getTdc(void) const
     void getAddress(Int_t& sector,Int_t& module,Int_t& mbo,Int_t& tdc)
 and the number of hits with the inline function
     Int_t getNHits(void) const

 The inline function clear() sets the data data members to the following
 values:
          nHits=0;
          sector=module=mbo=tdc=-1;
          time1=time2=time3=time4=time5=time6=-999;



Bool_t setTime(const Int_t time,const Int_t mode, const Bool_t noComment)
 Stores the given time in the next data element time* and sets the
 multiplicity.
 The TDC can be operated in 2 different modes:
 mode 0 (default) : trigger on leading and trailing edge
                    The multiplicity nHits is incremented by 1.
 mode 1           : trigger on 2 leading edges:
                    The multiplicity nHits is decremented by 1.

 at maximum one element can only hold 6 times
 If you try to fill a 7th time kFALSE is returned
 If gHades exists,
    then in addition it is checked in the case of REAL events
    whether the number of hits exceeds 2. Also in this case kFALSE is returned
    and the time information is not filled,
    but the number of hits are increased, so that nHits represents the trials to fill in a time

Int_t getTime(const Int_t n) const
 Returns the time of nth hit (1<=n<=6)

Bool_t setTimeNew(const Int_t time, const Int_t nrtime)
 sets new time value: setTimeNew(timevalue, timeindex)
 only possible if abs(nHits)>=nrtime
 return kTRUE if everything is fine, else kFALSE if the number of times is not ok

void Streamer(TBuffer &R__b)
 Stream an object of class HMdcRaw.



Inline Functions


               void ~HMdcRaw()
            HMdcRaw HMdcRaw()
               void clear()
               void setSector(const Int_t n)
               void setModule(const Int_t n)
               void setMbo(const Int_t n)
               void setTdc(const Int_t n)
               void setAddress(const Int_t s, const Int_t m, const Int_t mb, const Int_t t)
              Int_t getSector() const
              Int_t getModule() const
              Int_t getMbo() const
              Int_t getTdc() const
               void getAddress(Int_t& s, Int_t& m, Int_t& mb, Int_t& t)
              Int_t getNHits() const
              Int_t getNTrialsToFillHits() const
            TClass* Class()
            TClass* IsA() const
               void ShowMembers(TMemberInspector& insp, char* parent)
               void StreamerNVirtual(TBuffer& b)
            HMdcRaw HMdcRaw(const HMdcRaw&)
           HMdcRaw& operator=(const HMdcRaw&)


Author: Ilse Koenig
Last update: Fri Jan 26 12:13:47 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.