ROOT logo
AliRoot » ITS » AliITSOnlineSPDfo

class AliITSOnlineSPDfo

Author: A. Mastroserio
This class is used within the detector algorithm framework
to write and read FO scan data.

Function Members (Methods)

public:
AliITSOnlineSPDfo()
AliITSOnlineSPDfo(const AliITSOnlineSPDfo& c)
AliITSOnlineSPDfo(TString inputfile, Int_t runNr, Int_t eqId)
virtual~AliITSOnlineSPDfo()
voidAddMeasurement(const TArrayS dac, Short_t* measure, Int_t hs, Int_t chipId)
Int_tCheckDACEntry(const TArrayS dac)
static TClass*Class()
TArraySCreateDACArray(const TArrayS dacs, const TArrayS dacId) const
TStringCreateDACEntry(const TArrayS dacs) const
voidCreateOutputFile()
TObjArray*GetDACArray() const
THashList*GetDACnameList() const
TArrayIGetDACscanParams() const
Int_t*GetDACvalues(TString s, const Int_t ndacs) const
Double_t*GetDACvaluesD(TString s, const Int_t ndacs) const
TFile*GetFile() const
AliITSOnlineSPDfoInfo*GetFOscanInfo() const
UInt_tGetNdacs() const
virtual TClass*IsA() const
voidSetDACArray(TObjArray* obj)
voidSetFile(TString inputfile)
voidSetFOscanParams(AliITSOnlineSPDfoInfo* info)
voidSetNdacs(UInt_t ndacs)
virtual voidShowMembers(TMemberInspector&)
virtual voidStreamer(TBuffer&)
voidStreamerNVirtual(TBuffer& ClassDef_StreamerNVirtual_b)
voidWriteToFile()

Data Members

public:
enum { kFOPOL
kCONVPOL
kCOMPREF
kCGPOL
kPreVTH
kIdFOPOL
kIdCONVPOL
kIdCOMPREF
kIdCGPOL
kIdPreVTH
};
protected:
TObjArray*fArrayarray of the 10 chips in the 6 HS per DAC set
Double_tfCheckIndexcheck array index (to speed up)
THashList*fDACnames
TFile*fFile
TStringfFileName
Int_tfIndex
AliITSOnlineSPDfoInfo*fInfo
TStringfInitialConfiguration
Int_tfNdacs
Int_tfRunNr

Class Charts

Inheritance Chart:
AliITSOnlineSPDfo

Function documentation

AliITSOnlineSPDfo()
 default constructor
AliITSOnlineSPDfo(TString inputfile, Int_t runNr, Int_t eqId)
 constructor

AliITSOnlineSPDfo(const AliITSOnlineSPDfo& c)
copy constructor

void SetFile(TString inputfile)
 open the file where the data are

void CreateOutputFile()
 Create the file (needed only in the DA ), will delete the previous one!

void AddMeasurement(const TArrayS dac, Short_t* measure, Int_t hs, Int_t chipId)
  // Here a single measurement is added to the chip container.
  // A single measurement corresponds to a specific pixel-configuration output
  // in the Fast-OR chip. If N configurations are considered, then
  // the data structure is the following:
  //
  //                                          -> HS0_CHIP0 -> measure0[4]
  //                                         /                measure1[4]
  //                                        /                   ...
  //  fArray->At(i) =  DAC1-DAC2-DAC3-DAC4                    measureN[4]
  //                                        \
  //                                         \
  //                                          -> HS0_CHIP1 -> measure0[4]
  //                                                          measure1[4]
  //                                                             ....
  //                                                          measureN[4]
  //

Int_t CheckDACEntry(const TArrayS dac)
 Check if the set of dacs has been already added to the array

void WriteToFile()
The array of DACS and all its content is written to file.
 Here the general info on the FO calibration scan are
 written in the same file
TString CreateDACEntry(const TArrayS dacs) const
 The string of DACs is build

TArrayI GetDACscanParams() const
 this method retrieves the DAC value range and its steps

Int_t* GetDACvalues(TString s, const Int_t ndacs) const
 Translates the string of DACS values into an array of integers

Double_t* GetDACvaluesD(TString s, const Int_t ndacs) const
 Translates the string of DACS values into an array of doubles
 (needed to fill the thnsparse)

TArrayS CreateDACArray(const TArrayS dacs, const TArrayS dacId) const
 method to order the data according to the DAC index

virtual ~AliITSOnlineSPDfo()
{ delete fArray; delete fDACnames;}
void SetNdacs(UInt_t ndacs)
 SETTER
{fNdacs=ndacs;}
void SetFOscanParams(AliITSOnlineSPDfoInfo* info)
{fInfo=info;}
void SetDACArray(TObjArray* obj)
{if(!fArray) fArray = obj; else printf("The fArray is alreay available, no need to set it again.\n");}
TFile* GetFile() const
 GETTER
{return fFile;}
UInt_t GetNdacs() const
{return fNdacs;}
TObjArray * GetDACArray() const
{return fArray;}
THashList * GetDACnameList() const
{return fDACnames;}
AliITSOnlineSPDfoInfo * GetFOscanInfo() const
{return fInfo;}
AliITSOnlineSPDfo& operator=(const AliITSOnlineSPDfo& c)