#ifndef __S800ROOTGLOBALS_H
#define __S800ROOTGLOBALS_H 1
#endif
#ifndef __TS800_H
#define __TS800_H
#ifndef __S800PACKETS_H
#include "S800Packets.h"
#define __S8000PACKETS_H
#endif
#ifndef __S800DEFINE_H
#include "S800define.h"
#define __S800DEFINE_H
#endif
#ifndef __ROOTDEFINE_H
#include "rootDefine.h"
#define __ROOTDEFINE_H
#endif
#include <TMath.h>
#include <TObject.h>
#include <TRandom3.h>
#include <TString.h>
#include <TTree.h>
#include "TS800Scintillator.h"
#include "TS800Trigger.h"
#include "TS800Crdc.h"
#include "TS800Tppac.h"
#include "TS800FpTrack.h"
#include "TS800ImTrack.h"
#include "TS800Map.h"
#include "TS800IonChamber.h"
#include "TS800TimeOfFlight.h"
using namespace TMath;
class TS800Scintillator;
class TS800Trigger;
class TS800Crdc;
class TS800Tppac;
class TS800FpTrack;
class TS800ImTrack;
class TS800Map;
class TS800IonChamber;
class TS800TimeOfFlight;
class TS800 : public TObject{
private:
TRandom3 fRandom;
protected:
TString fName;
TString fTitle;
Int_t fAnalysisState;
public:
Double_t fEulerPhi;
Double_t fEulerTheta;
Double_t fEulerPsi;
UShort_t fNwords;
public:
TString name;
Bool_t fAddRndm;
Double_t kBrhoA;
Double_t kBrho;
TS800Scintillator e1;
TS800Scintillator e2;
TS800Scintillator e3;
TS800Crdc crdc1;
TS800Crdc crdc2;
TS800FpTrack fpTrack;
TS800ImTrack imTrack;
TS800Map s800map;
TS800IonChamber ic;
TS800Crdc tcrdc1;
TS800Crdc tcrdc2;
TS800Tppac tppac1;
TS800Tppac tppac2;
TS800Trigger trigger;
TS800TimeOfFlight tof;
TH1F fHICShifts;
TH1F fHToFShifts[2];
TH1F fHYtaShifts;
Char_t *crdc1CalPath;
Char_t *crdc2CalPath;
TBranch *b_fNwords;
TBranch *b_e1;
TBranch *b_e2;
TBranch *b_e3;
TBranch *b_crdc1;
TBranch *b_crdc2;
TBranch *b_fpTrack;
TBranch *b_imTrack;
TBranch *b_s800map;
TBranch *b_ic;
TBranch *b_tcrdc1;
TBranch *b_tcrdc2;
TBranch *b_tppac1;
TBranch *b_tppac2;
TBranch *b_trigger;
TBranch *b_tof;
TTree *fChain;
Int_t fCurrent;
public:
TS800() {fRandom.SetSeed(0);}
virtual ~TS800() {}
TS800(const TS800 &);
const Char_t *GetName() const { return fName; }
const Char_t *GetTitle() const { return fTitle; }
void SetName(const Char_t *name);
void SetNameTitle(const Char_t *name,
const Char_t *title);
void SetTitle(const Char_t *title="");
Bool_t Calculate(Long64_t entry);
Int_t Calculate(Option_t *prefix="",Option_t *path="",
Option_t *treeName="",
Bool_t calcTracking=kTRUE,
Option_t *option="RECREATE");
Int_t Calibrate(Long64_t entry);
Int_t Calibrate(Option_t *prefix="",Option_t *path="",
Option_t *treeName="",
Option_t *option="RECREATE");
void Clear(Option_t *option="");
void Copy(TObject &s800) const;
Bool_t GenPrime(Option_t *output="",
Option_t *treeName="",
Option_t *option="RECREATE");
Bool_t LoadPIDShifts(const Char_t *fileName);
Bool_t LoadYtaShifts(const Char_t *fileName);
void SetPIDShifts(Int_t runNum);
void SetFpTrackShifts(Int_t runNum);
void GetEntry(Int_t i);
void InitClass();
void InitTree(TTree *tree);
Int_t Unpack(UShort_t *pEvent);
void SetCrdcCalFile(Char_t *crdc1Path,
Char_t *crdc1Path);
void SetEuler(Double_t phi,Double_t theta, Double_t psi){fEulerPhi =phi*DegToRad();
fEulerTheta=theta*DegToRad();
fEulerPsi =psi*DegToRad();}
ClassDef(TS800,6)
};
#endif
Last change: Sun Dec 21 12:38:53 2008
Last generated: 2008-12-21 12:38
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.