9#include <framework/logging/Logger.h>
11#include <arich/dbobjects/ARICHAeroTilesInfo.h>
20 if (slot > 124 || slot < 1) { B2WARNING(
"ARICHAeroTilesInfo::getTransmissionLength: Slot number " << slot <<
" not valid!");
return 0.;}
21 if (layer > 1 || layer < 0) { B2WARNING(
"ARICHAeroTilesInfo::getTransmissionLength: Layer number " << layer <<
" not valid!");
return 0.;}
23 std::vector<int> slotID{slot, layer};
26 return opticalProperties[0];
32 if (slot > 124 || slot < 1) { B2WARNING(
"ARICHAeroTilesInfo::getTransmissionLength: Slot number " << slot <<
" not valid!");
return 0.;}
33 if (layer > 1 || layer < 0) { B2WARNING(
"ARICHAeroTilesInfo::getTransmissionLength: Layer number " << layer <<
" not valid!");
return 0.;}
35 std::vector<int> slotID{slot, layer};
38 return opticalProperties[1];
44 if (slot > 124 || slot < 1) { B2WARNING(
"ARICHAeroTilesInfo::getThickness: Slot number " << slot <<
" not valid!");
return 0.;}
45 if (layer > 1 || layer < 0) { B2WARNING(
"ARICHAeroTilesInfo::getThickness: Layer number " << layer <<
" not valid!");
return 0.;}
47 std::vector<int> slotID{slot, layer};
50 return opticalProperties[2];
56 if (slot > 124 || slot < 1) { B2WARNING(
"ARICHAeroTilesInfo::getTransmissionLength: Slot number " << slot <<
" not valid!"); }
57 if (layer > 1 || layer < 0) { B2WARNING(
"ARICHAeroTilesInfo::getTransmissionLength: Layer number " << layer <<
" not valid!"); }
59 std::vector<int> slotID{slot, layer};
60 std::vector<float> opticalProperties{refractiveIndex, transmissionLength, thickness};
61 m_aeroPos2optical.insert(std::pair<std::vector<int>, std::vector<float>>(slotID, opticalProperties));
66 B2INFO(
"AEROGEL SLOT MAPPING with optical properties of tiles");
67 for (
int tile = 1; tile < N_TILES + 1; tile++) {
68 B2INFO(
"Slot number: " << tile <<
"\n"
void addMapping(int slot, int layer, float refractiveIndex, float transmissionLength, float thickness)
Add mapping entry.
float getThickness(int slot, int layer) const
Get transmission length of aerogel tile from slot number.
float getRefractiveIndex(int slot, int layer) const
Get refractive index of aerogel tile from slot number.
std::map< std::vector< int >, std::vector< float > > m_aeroPos2optical
map of tile slot (1-124) to optical properties and thickness
void print() const
Pring mapping.
float getTransmissionLength(int slot, int layer) const
Get transmission length of aerogel tile from slot number.
Abstract base class for different kinds of events.