ROOT logo
#ifndef ALIEVETOFSTRIP_H
#define ALIEVETOFSTRIP_H

/**************************************************************************
 * Copyright(c) 1998-2008, ALICE Experiment at CERN, all rights reserved. *
 * See http://aliceinfo.cern.ch/Offline/AliRoot/License.html for          *
 * full copyright notice.                                                 *
 **************************************************************************/

// $Id$
// Main authors: Matevz Tadel & Alja Mrak-Tadel: 2006, 2007

//
// Class to visualize the TOF digit information
// in TOF strip frame
//

#include <TEveQuadSet.h>

class TClonesArray;

class AliTOFGeometry;

class AliEveTOFStrip : public TEveQuadSet
{
public:

  virtual void InitModule();
  virtual void SetTrans();

  AliEveTOFStrip(const Text_t* n="AliEveTOFStrip", const Text_t* t=0);
  AliEveTOFStrip(TGeoManager *localGeoManager,
		 Int_t nSector, Int_t nPlate, Int_t nStrip);

  AliEveTOFStrip(TGeoManager *localGeoManager,
		 Int_t nSector, Int_t nPlate, Int_t nStrip,
		 TClonesArray *tofArray);
  virtual ~AliEveTOFStrip();

  void SetThreshold(Short_t t);
  void SetMaxVal(Int_t mv);
  Short_t GetThreshold() const { return fThreshold; }
  Int_t   GetMaxVal()    const { return fMaxVal; }
  virtual void DigitSelected(Int_t idx);

protected:
  static Bool_t    fgStaticInitDone; // Has initialization of static variables been done.
  static void      InitStatics();    // Initialize static variables.

  static TEveFrameBox    *fgTOFstripFrameBox; // Shared box-frame for all strips.
  static TEveRGBAPalette *fgTOFstripPalette;  // Shared palette.

private:
  void LoadQuads();

  AliEveTOFStrip(const AliEveTOFStrip&);            // Not implemented
  AliEveTOFStrip& operator=(const AliEveTOFStrip&); // Not implemented


  AliTOFGeometry *fTOFgeometry; // pointer to TOF geometry

  TClonesArray   *fTOFarray;    // pointer to TOF digits array

  Short_t fThreshold; // threshold to cut on visualization
  Int_t   fMaxVal;    // max value to cut on visualization
  Int_t   fSector;    // TOF sector index
  Int_t   fPlate;     // TOF module index
  Int_t   fStrip;     // TOF strip index

  Float_t fDx;    // x position of TOF digit (in TOF strip RF)
  Float_t fDz;    // z position of TOF digit (in TOF strip RF)

  TGeoManager *fGeoManager; // pointer to the ALICE geometry

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