//*************************************************************************
//
//  HGeantWall
//
//  GEANT Forward Wall hit data
//
//  last modified on 08/12/2004 by R.Holzmann  (GSI)
//*************************************************************************
#ifndef HGEANTWALL_H
#define HGEANTWALL_H

#include "hlinkeddataobject.h"

class HGeantWall : public HLinkedDataObject
{
private:
  Int_t trackNumber;      // GEANT track number
  Float_t trackLength;    // track length  (in mm)
  Float_t eHit;           // energy deposited  (in MeV)
  Float_t xHit;           // x of hit in scintillator  (in mm)
  Float_t yHit;           // y of hit in scintillator  (in mm)
  Float_t tofHit;         // time of flight of hit  (in ns)
  Float_t momHit;         // momentum of particle at hit  (in MeV/c)
  Char_t module;          // module number (1...3) identifies size: 1=small,2=medium,3=big
  Int_t cell;             // cell number (1...384)
public:
  HGeantWall(void);
  HGeantWall(HGeantWall &aWall);
  ~HGeantWall(void);
  inline void setTrack(Int_t aTrack) {trackNumber = aTrack;}
  void setHit(Float_t ae, Float_t ax, Float_t ay, Float_t atof,
              Float_t amom, Float_t alen);
  inline void setAddress (Char_t m, Int_t c);
  virtual Int_t getTrack(void) {return trackNumber;}
  void getHit(Float_t& ae, Float_t& ax, Float_t& ay, Float_t& atof,
              Float_t& amom, Float_t& alen);
  inline Char_t getModule(void) {return module;}
  inline Int_t getCell(void) {return cell;}
  inline Int_t getNLocationIndex(void) {return 3;}
  inline Int_t getLocationIndex(Int_t i); 

  ClassDef(HGeantWall,1) // Geant Forward Wall event data class
};

inline void HGeantWall::setAddress(Char_t m, Int_t c) {
  module = m;
  cell = c;
}

inline Int_t HGeantWall::getLocationIndex(Int_t i) {
  switch (i) {
    case 0 : return module;
    case 1 : return cell;
  }
  return -1;
}


#endif  /*! HGEANTWALL_H */












Last change: Sat May 22 12:56:08 2010
Last generated: 2010-05-22 12:56

This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to ROOT support, or contact the developers with any questions or problems regarding ROOT.