3 #define Tk_Hit_Bank_h 1
19 void add_hit(
float,
float,
float,
float,
int,
int,
int,
int,
int,
float,
float);
22 void setX(
float X,
int hit){hit_bank[hit].x = X;};
23 void setY(
float Y,
int hit){hit_bank[hit].y = Y;};
24 void setZ(
float Z,
int hit){hit_bank[hit].z = Z;};
25 void setEnergy(
float E,
int hit){hit_bank[hit].energy = E;};
26 void setSubdetectorID(
int SubID,
int hit){hit_bank[hit].subdetector_ID = SubID;};
27 void setTrackID(
int TrkID,
int hit){hit_bank[hit].track_ID = TrkID;};
28 void setPntToFirstExclusion(
int NEx,
int hit){hit_bank[hit].pointer_to_first_exclusion = NEx;};
29 void setNExclusion(
int PntToEx,
int hit){hit_bank[hit].number_of_exclusions = PntToEx;};
30 void setResolutionCode(
int ResC,
int hit){hit_bank[hit].resolution_code = ResC;};
31 void setResolution1(
float Res1,
int hit){hit_bank[hit].resolution_1 = Res1;};
32 void setResolution2(
float Res2,
int hit){hit_bank[hit].resolution_2 = Res2;};
36 int size(){
return hit_bank.size();};
37 float getX(
int i){
return hit_bank[i].x;};
38 float getY(
int i){
return hit_bank[i].y;};
39 float getZ(
int i){
return hit_bank[i].z;};
40 float getEnergy(
int i){
return hit_bank[i].energy;};
41 int getSubdetectorID(
int i){
return hit_bank[i].subdetector_ID;};
42 int getTrackID(
int i){
return hit_bank[i].track_ID;};
43 int getPntToFirstExclusion(
int i){
return hit_bank[i].pointer_to_first_exclusion;};
44 int getNExclusion(
int i){
return hit_bank[i].number_of_exclusions;};
45 int getResolutionCode(
int i){
return hit_bank[i].resolution_code;};
46 float getResolution1(
int i){
return hit_bank[i].resolution_1;};
47 float getResolution2(
int i){
return hit_bank[i].resolution_2;};
54 void setFirstHitIndex(std::string subdet)
55 {
if(firstHitEntry.find(subdet) == firstHitEntry.end()) {firstHitEntry[subdet]=hit_bank.size();}
56 else {
throw std::runtime_error(
"setFirstHitIndex:subdetector does not exit") ;}};
58 unsigned int getFirstHitIndex(std::string subdet)
59 {
if(firstHitEntry.find(subdet) != firstHitEntry.end()) {
return firstHitEntry[subdet];}
60 else {
throw std::runtime_error(
"getFirstHitIndex:subdetector does not exit") ;}};
62 void setLastHitIndex(std::string subdet)
63 {
if(lastHitEntry.find(subdet) == lastHitEntry.end()) {lastHitEntry[subdet]=hit_bank.size()-1;}
64 else {
throw std::runtime_error(
"setLastHitIndex:subdetector does not exit") ;}};
66 unsigned int getLastHitIndex(std::string subdet)
67 {
if(lastHitEntry.find(subdet) != lastHitEntry.end()) {
return lastHitEntry[subdet];}
68 else {
throw std::runtime_error(
"getLastHitIndex:subdetector does not exit") ;}};
70 int getNumOfSubDetHits(std::string subdet)
71 {
if(firstHitEntry.find(subdet) == firstHitEntry.end()) {
return 0;}
72 else {
return 1 + lastHitEntry[subdet] - firstHitEntry[subdet];}};
85 int pointer_to_first_exclusion;
86 int number_of_exclusions;
93 std::vector <tk_hit> hit_bank;
96 std::map <const std::string , unsigned int> firstHitEntry;
98 std::map <const std::string , unsigned int> lastHitEntry;
Definition: tkhitbank.h:12