11#include <framework/gearbox/GearDir.h>
12#include <arich/dbobjects/ARICHGeoHAPD.h>
13#include <arich/dbobjects/ARICHGeoMerger.h>
14#include <arich/dbobjects/ARICHGeoCablesEnvelope.h>
15#include <arich/dbobjects/ARICHGeoCooling.h>
16#include <arich/dbobjects/ARICHGeoFEBCooling.h>
17#include <arich/dbobjects/ARICHGeoDetectorPlane.h>
18#include <arich/dbobjects/ARICHGeoAerogelPlane.h>
19#include <arich/dbobjects/ARICHGeoMirrors.h>
20#include <arich/dbobjects/ARICHGeoMasterVolume.h>
21#include <arich/dbobjects/ARICHGeoSupport.h>
22#include <arich/dbobjects/ARICHGeoGlobalDisplacement.h>
23#include <arich/dbobjects/ARICHGeoMirrorDisplacement.h>
25#include <Math/Vector2D.h>
27#define MAX_N_ALAYERS 5
55 void print(
const std::string& title =
"ARICH geometry parameters")
const;
85 ROOT::Math::XYVector
getChannelPosition(
unsigned moduleID,
unsigned xChn,
unsigned yChn)
const;
Geometry parameters of HAPD.
Base class for geometry parameters.
static double s_unit
conversion unit for length
static std::string s_unitName
conversion unit name
Geometry parameters of cable envelope.
Geometry parameters of cooling system.
Geometry parameters of ARICH photon detector plane.
ROOT::Math::XYZVector getPosition() const
Get center point.
Geometry parameters of Cooling System - version2 (v2).
Global displacement parameters for ARICH.
Geometry parameters of HAPD.
double getModuleSizeZ() const
Returns module size in z (HAPD + FEB height)
Geometry parameters of ARICH Master volume (envelope)
Geometry parameters of Merger PCB.
Mirror displacement parameters for ARICH.
Geometry parameters of HAPD.
Geometry parameters of ARICH support structures and neutron shield.
The Class for ARICH Geometry Parameters.
const ARICHGeoAerogelPlane & getAerogelPlane() const
Get geometry configuration of aerogel plane.
ARICHGeoSupport m_supportStructure
support structure geometry configuration
void setMirrorDisplacement(const ARICHGeoMirrorDisplacement &displ)
Set mirror displacement parameters.
ClassDef(ARICHGeometryConfig, 5)
ClassDef, must be the last term before the closing {}.
bool m_displaceGlobal
use global displacement parameters
const ARICHGeoMerger & getMergerGeometry() const
Get Merger PCB geometry parameters.
ARICHGeoMasterVolume m_masterVolume
master volume geometry configuration
void setUseGlobalDisplacement(bool use)
Set whether global displacement should be used.
ARICHGeoGlobalDisplacement m_globalDispl
global displacement parameters
void setUseMirrorDisplacement(bool use)
Set whether mirror displacement should be used.
static void useGeantUnits()
Use Geant4 units when returning geometry parameters.
const ARICHGeoGlobalDisplacement & getGlobalDisplacement() const
Get global displacement parameters.
ARICHGeoMirrors m_mirrors
mirrors geometry configuration
void setAerogelPlane(const ARICHGeoAerogelPlane &aerogelPlane)
Set geometry configuration of aerogel plane.
bool m_displaceMirrors
use mirror displacement parameters
const ARICHGeoFEBCooling & getFEBCoolingGeometry() const
Get ARICH FEB cooling system (v2) geometry parameters.
ARICHGeoFEBCooling m_coolingv2
ARICH cooling system (v2) geometry configuration.
bool useMirrorDisplacement() const
Get whether mirror displacement is used.
ARICHGeoCablesEnvelope m_cablesenvelope
ARICH cables envelop geometry configuration.
void setMasterVolume(const ARICHGeoMasterVolume &masterVolume)
Set master volume geometry configuration.
ARICHGeoAerogelPlane m_aerogelPlane
aerogel plane geometry configuration
const ARICHGeoMasterVolume & getMasterVolume() const
Get ARICH master volume geometry configuration.
void read(const GearDir &content)
gets geometry parameters from gearbox.
const ARICHGeoCooling & getCoolingGeometry() const
Get ARICH cooling system geometry parameters.
ROOT::Math::XYVector getChannelPosition(unsigned moduleID, unsigned xChn, unsigned yChn) const
Get position of HAPD (x,y) channel in local ARICH coordinates.
const ARICHGeoMirrors & getMirrors() const
Get mirrors geometry configuration.
const ARICHGeoCablesEnvelope & getCablesEnvelope() const
Get ARICH cables envelop geometry parameters.
ARICHGeoDetectorPlane m_detectorPlane
detector plane geometry configuration
ARICHGeometryConfig()
Default constructor.
ARICHGeoCooling m_cooling
ARICH cooling system geometry configuration.
static void useBasf2Units()
Use basf2 units when returning geometry parameters.
ARICHGeoMerger m_merger
Merger PCB geometry configuration.
void setDetectorPlane(const ARICHGeoDetectorPlane &detectorPlane)
Set geometry configuration of HAPD plane.
const ARICHGeoHAPD & getHAPDGeometry() const
Get HAPD geometry parameters.
ARICHGeoHAPD m_hapd
HAPD geometry configuration.
void setGlobalDisplacement(const ARICHGeoGlobalDisplacement &displ)
Set global displacement parameters.
int m_bbstudy
is beam background study
void print(const std::string &title="ARICH geometry parameters") const
Print some debug information.
ARICHGeoMirrorDisplacement m_mirrorDispl
mirror displacement parameters
bool useGlobalDisplacement() const
Get whether global displacement is used.
const ARICHGeoDetectorPlane & getDetectorPlane() const
Get geometry configuration of HAPD plane.
void setMirrors(const ARICHGeoMirrors &mirrors)
Set mirrors geometry configuration.
const ARICHGeoMirrorDisplacement & getMirrorDisplacement() const
Get mirror displacement parameters.
void modulesPosition(const GearDir &content)
initializes the positions of HAPD modules, with the parameters from xml.
const ARICHGeoSupport & getSupportStructure() const
Get ARICH support structure geometry configuration.
void setSupportStructure(const ARICHGeoSupport &supportStructure)
Set support structure geometry configuration.
GearDir is the basic class used for accessing the parameter store.
static const double mm
[millimeters]
static const double cm
Standard units with the value = 1.
double getDetectorZPosition() const
get z position of detector plane (starting z of HAPDs)
int doBeamBackgroundStudy() const
returns 1 if beam background study (to add additional sensitive modules, detect neutrons,...
Abstract base class for different kinds of events.