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

// Author: Markus Fasel

#include "AliLog.h"

class AliEmcalTriggerBitConfig  : public TObject {
public:
  AliEmcalTriggerBitConfig();
  AliEmcalTriggerBitConfig(Int_t l0bit, Int_t j1bit, Int_t j2bit, Int_t g1bit, Int_t g2bit, Int_t mcoffset);
  virtual ~AliEmcalTriggerBitConfig() {}

  void Initialise(const AliEmcalTriggerBitConfig &ref);

  Int_t GetLevel0Bit() const { if(fL0Bit < 0) AliFatal("Invalid trigger configuration: Level0 bit < 0"); return fL0Bit; }
  Int_t GetJetHighBit() const { if(fJHighBit < 0) AliFatal("Invalid trigger configuration: Jet high bit < 0"); return fJHighBit; }
  Int_t GetJetLowBit() const { if(fJLowBit < 0) AliFatal("Invalid trigger configuration: Jet low bit < 0"); return fJLowBit; }
  Int_t GetGammaHighBit() const { if(fGHighBit < 0) AliFatal("Invalid trigger configuration: Gamma high bit < 0"); return fGHighBit; }
  Int_t GetGammaLowBit() const { if(fGLowBit < 0) AliFatal("Invalid trigger configuration: Gamma low bit < 0"); return fGLowBit; }
  Int_t GetTriggerTypesEnd() const {if(fTriggerTypesEnd < 0) AliFatal("Invalid trigger configuration: MC Offset bit < 0"); return fTriggerTypesEnd; }

protected:
 Int_t fL0Bit;      // Level0 bit
 Int_t fJHighBit;   // Jet High bit
 Int_t fJLowBit;    // Jet Low bit
 Int_t fGHighBit;   // Gamma High bit
 Int_t fGLowBit;    // Gamma Low bit
 Int_t fTriggerTypesEnd;   // Monte-Carlo offset

 ClassDef(AliEmcalTriggerBitConfig, 1);
};

class AliEmcalTriggerBitConfigOld : public AliEmcalTriggerBitConfig{
public:
  AliEmcalTriggerBitConfigOld();
  virtual ~AliEmcalTriggerBitConfigOld() {}

  ClassDef(AliEmcalTriggerBitConfigOld, 1);
};

class AliEmcalTriggerBitConfigNew : public AliEmcalTriggerBitConfig{
public:
  AliEmcalTriggerBitConfigNew();
  virtual ~AliEmcalTriggerBitConfigNew() {}

  ClassDef(AliEmcalTriggerBitConfigNew, 1);
};

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