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

/* $Id$ */
// Revision of includes 07/05/2004

/// \ingroup calib
/// \class AliMUONTriggerLut
/// \brief MUON trigger look up table class 
///
//  Author: Philippe Crochet

#include <TNamed.h>

class TH3;
class TMap;

//----------------------------------------------
class AliMUONTriggerLut : public TNamed 
{
 public: 
  AliMUONTriggerLut();    // constructor
  virtual ~AliMUONTriggerLut();   // destructor

  Int_t Compare(const TObject* object) const;
  
  void GetLutOutput(Int_t circuit, Int_t xstrip, Int_t idev, Int_t ystrip, 
		    Int_t lutLpt[2], Int_t lutHpt[2]) const;

  void ReadFromFile(const char* filename);
  
  void SetContent(const char* hname, Int_t icirc, UChar_t istripX, 
                  UChar_t idev, Short_t value); 

  void SetLutCode(const UChar_t lutCode);

  void PrintLutCode();
  
 private:
  
    /// Not implemented copy constructor
  AliMUONTriggerLut (const AliMUONTriggerLut& AliMUONTriggerLut);
  /// Not implemented assignment operator
  AliMUONTriggerLut& operator=(const AliMUONTriggerLut& AliMUONTriggerLut); 

  void Add(TH3* h);

  Int_t Compare(TH3* h1, TH3* h2) const;
  
  Int_t GetMask(Int_t ystrip) const;

  void RegisterHistos();

private:
  TH3 *fLptPlus; ///< 3-d histogram with 234x32x31 bins Low pt Plus  
  TH3 *fLptMinu; ///< 3-d histogram with 234x32x31 bins Low pt Minus
  TH3 *fLptUnde; ///< 3-d histogram with 234x32x31 bins Low pt Undefined
  TH3 *fHptPlus; ///< 3-d histogram with 234x32x31 bins High pt Plus
  TH3 *fHptMinu; ///< 3-d histogram with 234x32x31 bins High pt Minus 
  TH3 *fHptUnde; ///< 3-d histogram with 234x32x31 bins High pt Undefined 
  TH3 *fAptPlus; ///< 3-d histogram with 234x32x31 bins All pt Plus  
  TH3 *fAptMinu; ///< 3-d histogram with 234x32x31 bins All pt Minus  
  TH3 *fAptUnde; ///< 3-d histogram with 234x32x31 bins All pt Undefined    

  TMap* fMap; //!< from name to histo
  
  ClassDef(AliMUONTriggerLut,2) // Trigger Look up Table class

};
#endif






 AliMUONTriggerLut.h:1
 AliMUONTriggerLut.h:2
 AliMUONTriggerLut.h:3
 AliMUONTriggerLut.h:4
 AliMUONTriggerLut.h:5
 AliMUONTriggerLut.h:6
 AliMUONTriggerLut.h:7
 AliMUONTriggerLut.h:8
 AliMUONTriggerLut.h:9
 AliMUONTriggerLut.h:10
 AliMUONTriggerLut.h:11
 AliMUONTriggerLut.h:12
 AliMUONTriggerLut.h:13
 AliMUONTriggerLut.h:14
 AliMUONTriggerLut.h:15
 AliMUONTriggerLut.h:16
 AliMUONTriggerLut.h:17
 AliMUONTriggerLut.h:18
 AliMUONTriggerLut.h:19
 AliMUONTriggerLut.h:20
 AliMUONTriggerLut.h:21
 AliMUONTriggerLut.h:22
 AliMUONTriggerLut.h:23
 AliMUONTriggerLut.h:24
 AliMUONTriggerLut.h:25
 AliMUONTriggerLut.h:26
 AliMUONTriggerLut.h:27
 AliMUONTriggerLut.h:28
 AliMUONTriggerLut.h:29
 AliMUONTriggerLut.h:30
 AliMUONTriggerLut.h:31
 AliMUONTriggerLut.h:32
 AliMUONTriggerLut.h:33
 AliMUONTriggerLut.h:34
 AliMUONTriggerLut.h:35
 AliMUONTriggerLut.h:36
 AliMUONTriggerLut.h:37
 AliMUONTriggerLut.h:38
 AliMUONTriggerLut.h:39
 AliMUONTriggerLut.h:40
 AliMUONTriggerLut.h:41
 AliMUONTriggerLut.h:42
 AliMUONTriggerLut.h:43
 AliMUONTriggerLut.h:44
 AliMUONTriggerLut.h:45
 AliMUONTriggerLut.h:46
 AliMUONTriggerLut.h:47
 AliMUONTriggerLut.h:48
 AliMUONTriggerLut.h:49
 AliMUONTriggerLut.h:50
 AliMUONTriggerLut.h:51
 AliMUONTriggerLut.h:52
 AliMUONTriggerLut.h:53
 AliMUONTriggerLut.h:54
 AliMUONTriggerLut.h:55
 AliMUONTriggerLut.h:56
 AliMUONTriggerLut.h:57
 AliMUONTriggerLut.h:58
 AliMUONTriggerLut.h:59
 AliMUONTriggerLut.h:60
 AliMUONTriggerLut.h:61
 AliMUONTriggerLut.h:62
 AliMUONTriggerLut.h:63
 AliMUONTriggerLut.h:64
 AliMUONTriggerLut.h:65
 AliMUONTriggerLut.h:66
 AliMUONTriggerLut.h:67
 AliMUONTriggerLut.h:68
 AliMUONTriggerLut.h:69
 AliMUONTriggerLut.h:70
 AliMUONTriggerLut.h:71
 AliMUONTriggerLut.h:72
 AliMUONTriggerLut.h:73
 AliMUONTriggerLut.h:74
 AliMUONTriggerLut.h:75
 AliMUONTriggerLut.h:76
 AliMUONTriggerLut.h:77
 AliMUONTriggerLut.h:78