GamR  0.0.0
GammaROOT
Loading...
Searching...
No Matches
OakRidge.hh
Go to the documentation of this file.
1/* header file for OakRidge.cc
2 author Tim Gray - timothy.gray@anu.edu.au
3*/
4
5#ifndef GAMR_OAKRIDGE_HH
6#define GAMR_OAKRIDGE_HH
7
8#include <string.h>
9#include <vector>
10
11#include <TCutG.h>
12#include <TFile.h>
13#include <TH1.h>
14#include <TH2.h>
15#include <TROOT.h>
16
17namespace GamR {
22
25namespace ORNL {
26class BananaGate : public TCutG {
27 /* ROOT implimentation of an ORNL style Banana Gate
28 For details of parameters see upak/Ddoc/banco.doc
29 Many of the attributes will be completely useless,
30 however they are necessary for writing out to a
31 *.ban file.
32 */
33private:
34 int iIH, iIB, iDG, iNP;
35 int iIPX, iIPY, iLXD, iLXG, iLYD, iLYG, iNUPM, iIAUX, iJAUX;
36 std::string fileName;
37
38public:
39 BananaGate();
40 BananaGate(const char *name, int n = 0);
41 BananaGate(const TCutG &cutg, TH2 &hist, int iBID, int iHID, const char *fileName);
43
44 void SetFileName(const char *fileName);
45 void SetIH(int iIH) { this->iIH = iIH; };
46 void SetIB(int iIB) { this->iIB = iIB; };
47 void SetDG(int iDG) { this->iDG = iDG; };
48 void SetNP(int iNP) { this->iNP = iNP; };
49 void SetIPX(int iIPX) { this->iIPX = iIPX; };
50 void SetIPY(int iIPY) { this->iIPY = iIPY; };
51 void SetLXD(int iLXD) { this->iLXD = iLXD; };
52 void SetLXG(int iLXG) { this->iLXG = iLXG; };
53 void SetLYD(int iLYD) { this->iLYD = iLYD; };
54 void SetLYG(int iLYG) { this->iLYG = iLYG; };
55 void SetNUPM(int iNUPM) { this->iNUPM = iNUPM; };
56 void SetIAUX(int iIAUX) { this->iIAUX = iIAUX; };
57 void SetJAUX(int iJAUX) { this->iJAUX = iJAUX; };
58 void SetFileName(std::string fileName) { this->fileName = fileName; };
59 int GetIH() { return this->iIH; };
60 int GetIB() { return this->iIB; };
61 int GetDG() { return this->iDG; };
62 int GetNP() { return this->iNP; };
63 int GetIPX() { return this->iIPX; };
64 int GetIPY() { return this->iIPY; };
65 int GetLXD() { return this->iLXD; };
66 int GetLXG() { return this->iLXG; };
67 int GetLYD() { return this->iLYD; };
68 int GetLYG() { return this->iLYG; };
69 int GetNUPM() { return this->iNUPM; };
70 int GetIAUX() { return this->iIAUX; };
71 int GetJAUX() { return this->iJAUX; };
72 TCutG GetTCutG() { return TCutG(this->GetName(), this->GetN(), this->GetX(), this->GetY()); };
73 std::string GetFileName() { return this->fileName; };
74
75 std::string WriteBan();
76
78 ClassDef(BananaGate, 1);
80};
81
82// int his2root(const char *cHisFileName);
83
84BananaGate *readBanana(const char *cBanFileName, int iID);
85void readAllBananas(const char *cBanFileName);
86
87void writeBananas(const char *cBanFileName, std::vector<BananaGate> vBananas);
88void writeAllBananas(const char *cBanFileName);
89
90} // namespace ORNL
91/* @} */
92} // namespace GamR
93
94#endif // OAKRIDGE_HH
void SetIPY(int iIPY)
Definition OakRidge.hh:50
void SetIB(int iIB)
Definition OakRidge.hh:46
void SetDG(int iDG)
Definition OakRidge.hh:47
void SetLYD(int iLYD)
Definition OakRidge.hh:53
void SetLXD(int iLXD)
Definition OakRidge.hh:51
void SetNP(int iNP)
Definition OakRidge.hh:48
void SetFileName(std::string fileName)
Definition OakRidge.hh:58
void SetJAUX(int iJAUX)
Definition OakRidge.hh:57
void writeBananas(const char *cBanFileName, std::vector< BananaGate > vBananas)
Definition OakRidge.cc:462
void SetIH(int iIH)
Definition OakRidge.hh:45
void SetLYG(int iLYG)
Definition OakRidge.hh:54
void SetIAUX(int iIAUX)
Definition OakRidge.hh:56
void readAllBananas(const char *cBanFileName)
Definition OakRidge.cc:430
std::string GetFileName()
Definition OakRidge.hh:73
void SetIPX(int iIPX)
Definition OakRidge.hh:49
std::string WriteBan()
Definition OakRidge.cc:104
void SetFileName(const char *fileName)
Definition OakRidge.cc:99
void writeAllBananas(const char *cBanFileName)
Definition OakRidge.cc:499
BananaGate * readBanana(const char *cBanFileName, int iID)
Definition OakRidge.cc:293
void SetNUPM(int iNUPM)
Definition OakRidge.hh:55
void SetLXG(int iLXG)
Definition OakRidge.hh:52
Definition Gain.cc:19