ROOT logo
AliRoot » ITS » AliITSOnlineSPDscan

class AliITSOnlineSPDscan

Author: Henrik Tydesjo
Interface class to the containers of an online scan.
Directly connected to a TFile with all containers.
Handles reading and writing of this TFile.
Hitmaps and information on nr of events with hits
is stored in this file (AliITSOnlineSPDHitArray and
AliITSOnlineSPDHitEvent). Also some general
information is stored (AliITSOnlineSPDscanInfo).
When switching between different steps of the scan,
the previous step is automatically stored on the file.
With this scheme there is no risk of running out of
memory.

Function Members (Methods)

public:
AliITSOnlineSPDscan()
AliITSOnlineSPDscan(const AliITSOnlineSPDscan& scan)
AliITSOnlineSPDscan(const Char_t* fileName, Bool_t readFromGridFile = kFALSE)
virtual~AliITSOnlineSPDscan()
virtual UInt_tAddScanStep()
virtual voidClearThis()
Float_tGetAverageMultiplicity(UInt_t nsi, UInt_t hs, UInt_t chipi)
Float_tGetAverageMultiplicityTot(UInt_t nsi, UInt_t hs)
Bool_tGetChipPresent(UInt_t hs, UInt_t chipi) const
UInt_tGetDacEnd() const
UInt_tGetDacStart() const
UInt_tGetDacStep() const
UInt_tGetDataFormat() const
UInt_tGetDCSVersion() const
Bool_tGetHalfStaveScanned(UInt_t val) const
UInt_tGetHitEvents(UInt_t nsi, UInt_t hs, UInt_t chipi)
Float_tGetHitEventsEfficiency(UInt_t nsi, UInt_t hs, UInt_t chipi)
Float_tGetHitEventsEfficiencyError(UInt_t nsi, UInt_t hs, UInt_t chipi)
UInt_tGetHitEventsTot(UInt_t nsi, UInt_t hs)
Float_tGetHitEventsTotEfficiency(UInt_t nsi, UInt_t hs)
Float_tGetHitEventsTotEfficiencyError(UInt_t nsi, UInt_t hs)
UInt_tGetHits(UInt_t nsi, UInt_t hs, UInt_t chipi, UInt_t coli, UInt_t rowi)
Float_tGetHitsEfficiency(UInt_t nsi, UInt_t hs, UInt_t chipi, UInt_t coli, UInt_t rowi)
Float_tGetHitsEfficiencyError(UInt_t nsi, UInt_t hs, UInt_t chipi, UInt_t coli, UInt_t rowi)
UInt_tGetNSteps() const
UInt_tGetRouterNr() const
UInt_tGetRowEnd() const
UInt_tGetRowStart() const
UInt_tGetRunNr() const
UInt_tGetTriggers(UInt_t nsi) const
UInt_tGetType() const
voidIncrementHitEvents(UInt_t nsi, UInt_t hs, UInt_t chipi)
voidIncrementHitEventsTot(UInt_t nsi, UInt_t hs)
voidIncrementHits(UInt_t nsi, UInt_t hs, UInt_t chipi, UInt_t coli, UInt_t rowi)
voidIncrementTriggers(UInt_t nsi)
AliITSOnlineSPDscan&operator=(const AliITSOnlineSPDscan& scan)
voidSetChipPresent(UInt_t hs, UInt_t chipi, Bool_t val)
voidSetDacEnd(UInt_t val)
voidSetDacStart(UInt_t val)
voidSetDacStep(UInt_t val)
voidSetDataFormat(UInt_t val)
voidSetDCSVersion(UInt_t val)
voidSetHalfStaveScanned(UInt_t val, Bool_t b)
voidSetHitEvents(UInt_t nsi, UInt_t hs, UInt_t chipi, Int_t val)
voidSetHitEventsTot(UInt_t nsi, UInt_t hs, Int_t val)
voidSetHits(UInt_t nsi, UInt_t hs, UInt_t chipi, UInt_t coli, UInt_t rowi, UInt_t val)
voidSetRouterNr(UInt_t val)
voidSetRowEnd(UInt_t val)
voidSetRowStart(UInt_t val)
voidSetRunNr(UInt_t val)
voidSetTriggers(UInt_t nsi, UInt_t val)
voidSetType(UInt_t val)
protected:
voidCreateNewStep()
voidFillGap(UInt_t nsi)
voidInit()
voidReadCurrentStep()
voidSaveCurrentStep()
voidSwitchToStep(UInt_t nsi)

Data Members

protected:
AliITSOnlineSPDHitArray*fCurrentHitArray[6]hit array, one for each halfstave
AliITSOnlineSPDHitEvent*fCurrentHitEvent[6]hit events, one for each halfstave
Int_tfCurrentStepindex of current step (kept in memory)
TFile*fFilefile to read and write from
TStringfFileNamefilename of file to read write
Bool_tfInfoModifiedis the overall scan information modified (needs saving)?
Bool_tfModifiedis the current step modified (needs saving)?
AliITSOnlineSPDscanInfo*fScanInfooverall scan information
Bool_tfWriteis file opened for writing?

Class Charts

Inheritance Chart:
AliITSOnlineSPDscan
AliITSOnlineSPDscanMultiple
AliITSOnlineSPDscanMeanTh
AliITSOnlineSPDscanSingle

Function documentation

AliITSOnlineSPDscan(const Char_t* fileName, Bool_t readFromGridFile = kFALSE)
 constructor, open file for reading or writing
 look for a previously saved info object
 (if file not found create a new one and return, else read)
AliITSOnlineSPDscan(const AliITSOnlineSPDscan& scan)
~AliITSOnlineSPDscan()
 destructor
AliITSOnlineSPDscan& operator=(const AliITSOnlineSPDscan& scan)
 assignment operator (should not be used)
void ClearThis()
 clear this scan, close file and open new
void Init()
 init hit arrays and hit events
UInt_t AddScanStep()
 add a new scan step
void CreateNewStep()
 create a new step
 save current step to file (if modified)
void SwitchToStep(UInt_t nsi)
 switch to step nsi (save current step first if needed)
void FillGap(UInt_t nsi)
create new steps until nsi is reached
void ReadCurrentStep()
 read current step index into memory
void SaveCurrentStep()
 save current step to file
void SetHits(UInt_t nsi, UInt_t hs, UInt_t chipi, UInt_t coli, UInt_t rowi, UInt_t val)
 set nr of hits for pixel
void IncrementHits(UInt_t nsi, UInt_t hs, UInt_t chipi, UInt_t coli, UInt_t rowi)
 increment nr of hits for pixel
void SetHitEvents(UInt_t nsi, UInt_t hs, UInt_t chipi, Int_t val)
 set nr of hit events for a chip
void SetHitEventsTot(UInt_t nsi, UInt_t hs, Int_t val)
 set nr of hit events for 10 chips together
void IncrementHitEvents(UInt_t nsi, UInt_t hs, UInt_t chipi)
 increment nr of hit events for a chip
void IncrementHitEventsTot(UInt_t nsi, UInt_t hs)
 increment nr of hit events for 10 chips
UInt_t GetHits(UInt_t nsi, UInt_t hs, UInt_t chipi, UInt_t coli, UInt_t rowi)
 get nr of hits for pixel
Float_t GetHitsEfficiency(UInt_t nsi, UInt_t hs, UInt_t chipi, UInt_t coli, UInt_t rowi)
 get the hit efficiency for pixel
Float_t GetHitsEfficiencyError(UInt_t nsi, UInt_t hs, UInt_t chipi, UInt_t coli, UInt_t rowi)
 get error in hit efficiency for pixel
UInt_t GetHitEvents(UInt_t nsi, UInt_t hs, UInt_t chipi)
 get nr of hit events for a chip
UInt_t GetHitEventsTot(UInt_t nsi, UInt_t hs)
 get nr of hit events for 10 chips
Float_t GetHitEventsEfficiency(UInt_t nsi, UInt_t hs, UInt_t chipi)
 get the hit events efficiency for a chip
Float_t GetHitEventsTotEfficiency(UInt_t nsi, UInt_t hs)
 get the hit events efficiency for 10 chips
Float_t GetHitEventsEfficiencyError(UInt_t nsi, UInt_t hs, UInt_t chipi)
 get error in hit events efficiency for a chip
Float_t GetHitEventsTotEfficiencyError(UInt_t nsi, UInt_t hs)
 get error in hit events efficiency for 10 chips
Float_t GetAverageMultiplicity(UInt_t nsi, UInt_t hs, UInt_t chipi)
 get average multiplicity for a chip
Float_t GetAverageMultiplicityTot(UInt_t nsi, UInt_t hs)
 get average multiplicity for 10 chips
void SetType(UInt_t val)
 set type
void SetRunNr(UInt_t val)
 set run nr
void SetRouterNr(UInt_t val)
 set router nr
void SetHalfStaveScanned(UInt_t val, Bool_t b)
 set half stave scanned
void SetDataFormat(UInt_t val)
 set data format (0=normal 1=histogram)
void SetTriggers(UInt_t nsi, UInt_t val)
 set nr of triggers
void SetChipPresent(UInt_t hs, UInt_t chipi, Bool_t val)
 set chip present
void SetRowStart(UInt_t val)
 set row start
void SetRowEnd(UInt_t val)
 set row end
void SetDacStart(UInt_t val)
 set dac start
void SetDacEnd(UInt_t val)
 set dac end
void SetDacStep(UInt_t val)
 set dac step
void SetDCSVersion(UInt_t val)
 set dcs db version
void IncrementTriggers(UInt_t nsi)
 increment nr of triggers
UInt_t GetNSteps() const
UInt_t GetType() const
UInt_t GetRunNr() const
UInt_t GetRouterNr() const
Bool_t GetHalfStaveScanned(UInt_t val) const
UInt_t GetDataFormat() const
UInt_t GetTriggers(UInt_t nsi) const
Bool_t GetChipPresent(UInt_t hs, UInt_t chipi) const
UInt_t GetRowStart() const
UInt_t GetRowEnd() const
UInt_t GetDacStart() const
UInt_t GetDacEnd() const
UInt_t GetDacStep() const
UInt_t GetDCSVersion() const
AliITSOnlineSPDscan()