ROOT logo
#ifndef ALIITSONLINESPDFOINFO_H
#define ALIITSONLINESPDFOINFO_H
/* Copyright(c) 2008-2010, ALICE Experiment at CERN, All rights reserved. *
 * See cxx source for full Copyright notice                               */

/* $Id$ */

////////////////////////////////////////////////////////////////
// Author: A. Mastroserio                                     // 
// This class is used within the detector algorithm framework //
// to collect information on how the scan was arranged.       //
////////////////////////////////////////////////////////////////


#include <TObject.h>
#include <TArrayS.h>
#include <TBits.h>

class AliITSOnlineSPDfoInfo :  public TObject {

 public:
  AliITSOnlineSPDfoInfo();
  virtual ~AliITSOnlineSPDfoInfo();

  virtual void   ClearThis();
  virtual void   AddDACindex(Short_t index);

  // SETTERS
  virtual void SetRunNumber(UInt_t val)  {fRunNumber=val;}
  virtual void SetRouter(UShort_t val)   {fRouter=val;}
  virtual void SetNumTriggers(UInt_t val){fNumTriggers=val;}
  virtual void SetDBversion(Int_t val)   {fDBversion=val;}
  void SetActiveChipsAndHS(UInt_t hs, UInt_t chip) {fActiveChipsAndHS.SetBitNumber(10*hs+chip);}

  // GETTERS
  UInt_t   GetRunNumber() const     {return fRunNumber;}
  UShort_t GetRouter() const        {return fRouter;}
  UInt_t   GetNumTriggers() const   {return fNumTriggers;}
  Int_t    GetDBversion() const     {return fDBversion;}

  UShort_t GetNumDACindex() const   {return fNumDACindex;}
  Short_t  GetDACindex(UShort_t id) const; // returns -1 if ID not present

  TArrayS GetDACIndexArray() const  {return fDACindex;}

  Bool_t IsActiveHS(UInt_t hs) const ;
  Bool_t IsActiveChip(UInt_t hs, UInt_t chip) const;
  TBits  GetActiveChipsAndHS() const {return fActiveChipsAndHS;}

 protected:
  UInt_t   fRunNumber;   // run number
  UShort_t fRouter;      // router number (should be same as eq number)
  UInt_t   fNumTriggers; // number of triggers sent for each scan step
  Int_t    fDBversion;   // global configuration db version
			 
  UShort_t fNumDACindex; // number of DAC indices in TArrayI below
  TArrayS  fDACindex;    // list of DAC indices related to each DAC value
  TBits    fActiveChipsAndHS;

  ClassDef(AliITSOnlineSPDfoInfo,2)
};
    
#endif
 AliITSOnlineSPDfoInfo.h:1
 AliITSOnlineSPDfoInfo.h:2
 AliITSOnlineSPDfoInfo.h:3
 AliITSOnlineSPDfoInfo.h:4
 AliITSOnlineSPDfoInfo.h:5
 AliITSOnlineSPDfoInfo.h:6
 AliITSOnlineSPDfoInfo.h:7
 AliITSOnlineSPDfoInfo.h:8
 AliITSOnlineSPDfoInfo.h:9
 AliITSOnlineSPDfoInfo.h:10
 AliITSOnlineSPDfoInfo.h:11
 AliITSOnlineSPDfoInfo.h:12
 AliITSOnlineSPDfoInfo.h:13
 AliITSOnlineSPDfoInfo.h:14
 AliITSOnlineSPDfoInfo.h:15
 AliITSOnlineSPDfoInfo.h:16
 AliITSOnlineSPDfoInfo.h:17
 AliITSOnlineSPDfoInfo.h:18
 AliITSOnlineSPDfoInfo.h:19
 AliITSOnlineSPDfoInfo.h:20
 AliITSOnlineSPDfoInfo.h:21
 AliITSOnlineSPDfoInfo.h:22
 AliITSOnlineSPDfoInfo.h:23
 AliITSOnlineSPDfoInfo.h:24
 AliITSOnlineSPDfoInfo.h:25
 AliITSOnlineSPDfoInfo.h:26
 AliITSOnlineSPDfoInfo.h:27
 AliITSOnlineSPDfoInfo.h:28
 AliITSOnlineSPDfoInfo.h:29
 AliITSOnlineSPDfoInfo.h:30
 AliITSOnlineSPDfoInfo.h:31
 AliITSOnlineSPDfoInfo.h:32
 AliITSOnlineSPDfoInfo.h:33
 AliITSOnlineSPDfoInfo.h:34
 AliITSOnlineSPDfoInfo.h:35
 AliITSOnlineSPDfoInfo.h:36
 AliITSOnlineSPDfoInfo.h:37
 AliITSOnlineSPDfoInfo.h:38
 AliITSOnlineSPDfoInfo.h:39
 AliITSOnlineSPDfoInfo.h:40
 AliITSOnlineSPDfoInfo.h:41
 AliITSOnlineSPDfoInfo.h:42
 AliITSOnlineSPDfoInfo.h:43
 AliITSOnlineSPDfoInfo.h:44
 AliITSOnlineSPDfoInfo.h:45
 AliITSOnlineSPDfoInfo.h:46
 AliITSOnlineSPDfoInfo.h:47
 AliITSOnlineSPDfoInfo.h:48
 AliITSOnlineSPDfoInfo.h:49
 AliITSOnlineSPDfoInfo.h:50
 AliITSOnlineSPDfoInfo.h:51
 AliITSOnlineSPDfoInfo.h:52
 AliITSOnlineSPDfoInfo.h:53
 AliITSOnlineSPDfoInfo.h:54
 AliITSOnlineSPDfoInfo.h:55
 AliITSOnlineSPDfoInfo.h:56
 AliITSOnlineSPDfoInfo.h:57
 AliITSOnlineSPDfoInfo.h:58
 AliITSOnlineSPDfoInfo.h:59
 AliITSOnlineSPDfoInfo.h:60
 AliITSOnlineSPDfoInfo.h:61
 AliITSOnlineSPDfoInfo.h:62
 AliITSOnlineSPDfoInfo.h:63