#ifndef HGEANTRICH_H
#define HGEANTRICH_H
using namespace std;
#include <iostream>
#include <iomanip>
#include "hlinkeddataobject.h"
class HGeantRichPhoton : public HLinkedDataObject {
public:
HGeantRichPhoton();
HGeantRichPhoton(const HGeantRichPhoton &source);
~HGeantRichPhoton();
void setTrack(Int_t aTrack) { parentTrack = aTrack; }
void setHit(Float_t ax, Float_t ay, Float_t ae);
void setAddress(Char_t s) { sector = s; }
virtual Int_t getTrack() { return parentTrack; }
void getHit(Float_t &ax, Float_t &ay, Float_t &ae);
Float_t getEnergy() { return eHit; }
Float_t getX() { return yHit; }
Float_t getY() { return xHit; }
Int_t getSector() { return sector; }
Int_t getNLocationIndex() { return 1; }
Int_t getLocationIndex(Int_t i);
private:
Int_t parentTrack;
Float_t xHit;
Float_t yHit;
Float_t eHit;
Char_t sector;
ClassDef(HGeantRichPhoton,2)
};
class HGeantRichDirect : public HLinkedDataObject {
public:
HGeantRichDirect();
HGeantRichDirect(const HGeantRichDirect &source);
~HGeantRichDirect();
void setTrack(Int_t aTrack, Int_t aID);
void setHit(Float_t ax, Float_t ay, Float_t az);
void setMomentum(Float_t aMom, Float_t aTheta, Float_t aPhi);
void setELoss(Float_t ae, Float_t alen);
void setAddress (Char_t s) { sector = s; };
void setNumPhot(Int_t num) {numPhot = num;};
void getTrack(Int_t &aTrack, Int_t &aID);
virtual Int_t getTrack() {return trackNumber;}
void getHit(Float_t &ax, Float_t &ay, Float_t &az);
void getMomentum(Float_t &aMom, Float_t &aTheta, Float_t &aPhi);
void getELoss(Float_t &ade, Float_t &alen);
Float_t getX() { return yHit; }
Float_t getY() { return xHit; }
Float_t getTheta() { return thetaHit; }
Float_t getPhi() { return phiHit; }
Float_t getEnergyLoss() { return eLoss; }
Float_t getTrackLengthInPhotDet() { return trackLength; }
Int_t getSector() {return sector;}
Int_t getNLocationIndex() { return 1; }
inline Int_t getLocationIndex(Int_t i);
Int_t getNumPhot(){return numPhot;};
private:
Int_t trackNumber;
Float_t xHit;
Float_t yHit;
Float_t zHit;
Int_t particleID;
Float_t momentum;
Float_t thetaHit;
Float_t phiHit;
Float_t eLoss;
Float_t trackLength;
Char_t sector;
Int_t numPhot;
ClassDef(HGeantRichDirect,2)
};
inline Int_t HGeantRichDirect::getLocationIndex(Int_t i) {
switch (i) {
case 0 : return sector;
}
return -1;
}
class HGeantRichMirror : public HLinkedDataObject {
public:
HGeantRichMirror();
HGeantRichMirror(const HGeantRichMirror &source);
~HGeantRichMirror();
void setTrack(Int_t aTrack, Int_t aID);
void setHit(Float_t ax, Float_t ay, Float_t az);
void setAddress (Char_t s) { sector = s; }
void setNumPhot(Int_t num) { numPhot = num; }
void setXRing(Float_t xCoor) {xRing = xCoor;}
void setYRing(Float_t yCoor) {yRing = yCoor;}
void setXYring(const Float_t ax, const Float_t ay);
void getTrack(Int_t &aTrack, Int_t &aID);
virtual Int_t getTrack() {return trackNumber;}
void getHit(Float_t &ax, Float_t &ay, Float_t &az);
Float_t getX() { return yLep; }
Float_t getY() { return xLep; }
Float_t getXRing(){return xRing;}
Float_t getYRing(){return yRing;}
Int_t getSector() {return sector;}
Int_t getNLocationIndex() { return 1; }
inline Int_t getLocationIndex(Int_t i);
Int_t getNumPhot(){return numPhot;};
private:
Int_t numPhot;
Int_t trackNumber;
Float_t xRing;
Float_t yRing;
Float_t xLep;
Float_t yLep;
Float_t zLep;
Int_t lepID;
Char_t sector;
ClassDef(HGeantRichMirror,2)
};
inline Int_t HGeantRichMirror::getLocationIndex(Int_t i) {
switch (i) {
case 0 : return sector;
}
return -1;
}
#endif // HGEANTRICH_H
Last change: Sat May 22 12:56:03 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.