#include "hmdccalibrater1.h" |
HMdcCalibrater1
class description - source file - inheritance tree (.pdf)
protected:
void calcTimes(Float_t*, Float_t*, Float_t, Int_t, HMdcCalParTdc*)
void countWiresPerMod()
Bool_t doMultCut()
void fillCal1(Float_t, Float_t, Int_t)
Float_t getstarttime()
void initCounters()
void initCountersCal()
void initParameters()
void printWires()
void setParContainers()
Bool_t testTimeCuts(Float_t, Float_t)
Bool_t translateAddress(Int_t*, Int_t*)
public:
HMdcCalibrater1()
HMdcCalibrater1(Text_t* name, Text_t* title, Int_t vers = 1, Int_t cut = 1, Int_t domerge = 0)
~HMdcCalibrater1()
static TClass* Class()
virtual Int_t execute()
virtual Bool_t finalize()
virtual Bool_t init()
virtual TClass* IsA() const
void printStatus()
void setDoPrint(Bool_t dopr)
void setGlobalOffset(Float_t o0, Float_t o1, Float_t o2, Float_t o3)
void setGlobalSlope(Float_t s)
void setUseMultCut(Int_t thresh, Bool_t use = kTRUE)
virtual void ShowMembers(TMemberInspector& insp, char* parent)
virtual void Streamer(TBuffer& b)
void StreamerNVirtual(TBuffer& b)
void switchArguments(Int_t, Int_t, Int_t)
protected:
HCategory* rawCat ! pointer to the raw data
HCategory* calCat ! pointer to the cal data
HCategory* startHitCat ! pointer to the start cal data
HMdcRaw* raw ! pointer to raw data word
HMdcCal1* cal ! pointer to cal1 data word
Bool_t StartandCal switch between Cal&&Start,noCal&&Start,noCal&&noStart
Bool_t NoStartandNoCal switch between Cal&&Start,noCal&&Start,noCal&&noStart
Bool_t NoStartandCal switch between Cal&&Start,noCal&&Start,noCal&&noStart
Bool_t setTimeCut switch on/off cuts on time1, time2 and time2-time1
Bool_t hasPrinted flag is set if printStatus is called
Int_t embedding flag is set if real data should be embedded into simulation data
HLocation loc ! location for new object.
HIterator* iter ! iterator on raw data.
HIterator* iterstart ! iterator on start data.
HMdcCalParRaw* calparraw ! calibration parameters
HMdcLookupGeom* lookup ! lookup table for mapping
HMdcTimeCut* timecut ! container for cuts on time1,time2,time2-time1
HMdcCutStat* cutStat ! container for statistics on cuts
static Float_t globalOffset[4] ! global offset per plane
static Float_t globalSlope ! global tdc slope
static Int_t countNrWiresPerMod[6][4] ! counter array for wires /module/event
static Int_t countNrWiresPerModCal[6][4] ! counter array for wires /module/event on cal after cuts
Int_t cuts[4] ! counter array passed/not passed time and multiplicity cuts
Int_t cutthreshold ! max number of wires in Cal1
Bool_t useMultCut ! use/ don't use mult cut
Bool_t doprint ! print flag for mult cut option
HMdcCalibrater1
This transformation class calculates the drift time information in all fired
cells using parameters from the parameter containers MdcCalParRaw for the
calibration parameters and from MdcLookupGeom to map the layer number and
cell number on Cal1 level to the motherboard number and TDC channel number
on Raw level.
The drift times are randomized within one bin of TDC resolution.
The constructor gives different options how to fill HMdcCal1 level:
HMdcCalibrater1(name,title,option input, otption timecut, option embedding )
option input = 1 No Start and Cal (default)
2 Start and Cal
3 No Start and no Cal
option timecut = 1 time cuts switched on
0 time cuts switched off
option embedding = 0 no embedding
= 1 embedding
Start means that the startime from the Startdetector will be used to correct.
Cal means real calibration with parameters from HMdcCalParRaw
If no Cal (3)is selected no input from HMdcCalParRaw is needed
and the TDC slope parameter will be always 1.The offset is set to 2048
which means that the HMdcCal1 level will be a reversed copy of HMdcRaw.
HMdcCalibrater1(void)
Default constructor .
HMdcCalibrater1(Text_t* name,Text_t* title,Int_t vers,Int_t cut,Int_t merge)
: HReconstructor(name,title)
Constructor calls the constructor of class HReconstructor with the name
and the title as arguments.
~HMdcCalibrater1(void)
destructor deletes the iterator
void switchArguments(Int_t vers,Int_t cut,Int_t merge)
void initParameters()
void setParContainers()
creates the parameter containers MdcCalParRaw and MdcLookupGeom if they do not
exist and adds them to the list of parameter containers in the rumtime
database
Bool_t init(void)
creates the MdcRaw and MdcCal1 categories and adds them to the current
event
creates an iterator which loops over all fired cells
calls the function setParContainers()
void printStatus()
Float_t getstarttime()
Need some work for multiple hists in start detector
Better select multiplicity 1 in start.
Bool_t translateAddress(Int_t* mbo,Int_t* ch)
Bool_t testTimeCuts(Float_t testTime1,Float_t testTime2)
tests if the measured time will pass the time cuts
void countWiresPerMod()
counts the number of fired wires per mod
void fillCal1(Float_t testTime1,Float_t testTime2,Int_t nHits)
fill time1,time2 and nHits to Cal1
void calcTimes(Float_t* testTime1,Float_t* testTime2,Float_t starttime,Int_t nHits,HMdcCalParTdc* tdc)
calc testtime1,testtime2
Int_t execute(void)
void printWires()
Inline Functions
void initCounters()
void initCountersCal()
Bool_t doMultCut()
void setDoPrint(Bool_t dopr)
void setUseMultCut(Int_t thresh, Bool_t use = kTRUE)
void setGlobalOffset(Float_t o0, Float_t o1, Float_t o2, Float_t o3)
void setGlobalSlope(Float_t s)
Bool_t finalize()
TClass* Class()
TClass* IsA() const
void ShowMembers(TMemberInspector& insp, char* parent)
void Streamer(TBuffer& b)
void StreamerNVirtual(TBuffer& b)
Last update: 17/01/2002 by Ilse Koenig
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.