ATLAS Offline Software
Loading...
Searching...
No Matches
BaseTRTPIDCalculator.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3*/
4
6// TRT_ElectronPidTool.h, (c) ATLAS Detector software
8
9#ifndef INDETTRT_BASETRTPIDCALCULATOR_H
10#define INDETTRT_BASETRTPIDCALCULATOR_H
11
13
14#include <vector>
15#include <string>
16
17namespace InDet
18{
20 public:
21 //Class to encode those aspects of the ToT and HT calculator that they have in common
23 const char * my_name;
25 unsigned char * Blob;
26
27 float & UpperLimit;
28 float & LowerLimit;
29
31
32 static const int SIZE_OF_HEADER = 12;
33
34 // |
35 // | The following are all the major offsets from the blob start:
36
37 //versioning check constants
39 static const int _Version = 0;
40 static const int _Day = 1;
41 static const int _Month = 2;
42 static const int _Year = 3;
43
44 static const int OFF_UpperLim = 4;
45 static const int OFF_LowerLim = 8;
46
47 BaseTRTPIDCalculator(AthAlgTool & p, int size, const char * name):parent(p),
48 my_name(name),
49 BLOB_SIZE(size),
50 Blob(new unsigned char[size]),
51 UpperLimit( * (reinterpret_cast<float*>( Blob + OFF_UpperLim) ) ),
52 LowerLimit( * (reinterpret_cast<float*>( Blob + OFF_LowerLim) ) ),
54 {
55 CurrentVersion = -1;
56 }
57
59 delete [] Blob;
60 }
61
64
65 // set constants to hard coded defaults
67
68 public:
70
71 // Fill the data blob from a given pointer
72 bool FillBlob(const unsigned char*);
73
74 // Limit the allowed PID value to lie between a lower and an upper limt
75 float Limit(float prob) const;
76
77 };
78}
79
80#endif
bool FillBlob(const unsigned char *)
BaseTRTPIDCalculator & operator=(const BaseTRTPIDCalculator &)=delete
virtual void setDefaultCalibrationConstants()=0
BaseTRTPIDCalculator(AthAlgTool &p, int size, const char *name)
BaseTRTPIDCalculator(const BaseTRTPIDCalculator &)=delete
Primary Vertex Finder.