ROOT logo
#ifndef ALITOFTRIGGERMASK_H
#define ALITOFTRIGGERMASK_H

/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
 * See cxx source for full Copyright notice                               */
/* $Id$ */

// *
// *
// *
// * this class defines the TOF object to be stored
// * in OCDB on a run-by-run basis in order to have the status
// * of TOF trigger inputs. it stores 32 bit masks for each crate
// * 
// *
// *
// *

#include "TObject.h"
#include "TMath.h"
#include "TH2F.h"

class AliTOFTriggerMask :
public TObject
{

 public:

  AliTOFTriggerMask(); // default constructor
  virtual ~AliTOFTriggerMask(); // default destructor
  AliTOFTriggerMask(const AliTOFTriggerMask &source); // copy constructor
  AliTOFTriggerMask &operator=(const AliTOFTriggerMask &source); // operator=

  UInt_t GetTriggerMask(UInt_t icrate) const {return icrate < 72 ? fTriggerMask[icrate] : 0;}; // get trigger mask
  UInt_t *GetTriggerMaskArray() {return fTriggerMask;}; // get trigger mask array

  void SetTriggerMaskArray(UInt_t *array); // set trigger mask array

  void ResetMask();
  void SetON(Int_t icrate,Int_t ich);
  Bool_t IsON(Int_t icrate,Int_t ich);

  Int_t GetNumberMaxiPadOn(); // return number of active MP
  TH2F *GetHistoMask(); // return active MP map

 private:
  static Int_t fPowerMask[24]; // 2-power mask table

  UInt_t fTriggerMask[72]; //[0,16777215,23] trigger mask array

  ClassDef(AliTOFTriggerMask, 2);
};

#endif /* ALITOFTRIGGERMASK_H */
 AliTOFTriggerMask.h:1
 AliTOFTriggerMask.h:2
 AliTOFTriggerMask.h:3
 AliTOFTriggerMask.h:4
 AliTOFTriggerMask.h:5
 AliTOFTriggerMask.h:6
 AliTOFTriggerMask.h:7
 AliTOFTriggerMask.h:8
 AliTOFTriggerMask.h:9
 AliTOFTriggerMask.h:10
 AliTOFTriggerMask.h:11
 AliTOFTriggerMask.h:12
 AliTOFTriggerMask.h:13
 AliTOFTriggerMask.h:14
 AliTOFTriggerMask.h:15
 AliTOFTriggerMask.h:16
 AliTOFTriggerMask.h:17
 AliTOFTriggerMask.h:18
 AliTOFTriggerMask.h:19
 AliTOFTriggerMask.h:20
 AliTOFTriggerMask.h:21
 AliTOFTriggerMask.h:22
 AliTOFTriggerMask.h:23
 AliTOFTriggerMask.h:24
 AliTOFTriggerMask.h:25
 AliTOFTriggerMask.h:26
 AliTOFTriggerMask.h:27
 AliTOFTriggerMask.h:28
 AliTOFTriggerMask.h:29
 AliTOFTriggerMask.h:30
 AliTOFTriggerMask.h:31
 AliTOFTriggerMask.h:32
 AliTOFTriggerMask.h:33
 AliTOFTriggerMask.h:34
 AliTOFTriggerMask.h:35
 AliTOFTriggerMask.h:36
 AliTOFTriggerMask.h:37
 AliTOFTriggerMask.h:38
 AliTOFTriggerMask.h:39
 AliTOFTriggerMask.h:40
 AliTOFTriggerMask.h:41
 AliTOFTriggerMask.h:42
 AliTOFTriggerMask.h:43
 AliTOFTriggerMask.h:44
 AliTOFTriggerMask.h:45
 AliTOFTriggerMask.h:46
 AliTOFTriggerMask.h:47
 AliTOFTriggerMask.h:48
 AliTOFTriggerMask.h:49
 AliTOFTriggerMask.h:50
 AliTOFTriggerMask.h:51
 AliTOFTriggerMask.h:52
 AliTOFTriggerMask.h:53
 AliTOFTriggerMask.h:54