Project
Loading...
Searching...
No Matches
GeometryTGeo.h
Go to the documentation of this file.
1// Copyright 2019-2020 CERN and copyright holders of ALICE O2.
2// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders.
3// All rights not expressly granted are reserved.
4//
5// This software is distributed under the terms of the GNU General Public
6// License v3 (GPL Version 3), copied verbatim in the file "COPYING".
7//
8// In applying this license CERN does not waive the privileges and immunities
9// granted to it by virtue of its status as an Intergovernmental Organization
10// or submit itself to any jurisdiction.
11
12#ifndef ALICEO2_TRK_GEOMETRYTGEO_H
13#define ALICEO2_TRK_GEOMETRYTGEO_H
14
15#include <memory>
17
18namespace o2
19{
20namespace trk
21{
23{
24 public:
25 GeometryTGeo(bool build = false, int loadTrans = 0);
26 void Build(int loadTrans);
27 void fillMatrixCache(int mask);
28 static GeometryTGeo* Instance();
29
30 static const char* getTRKVolPattern() { return sVolumeName.c_str(); }
31 static const char* getTRKLayerPattern() { return sLayerName.c_str(); }
32 static const char* getTRKStavePattern() { return sStaveName.c_str(); }
33 static const char* getTRKChipPattern() { return sChipName.c_str(); }
34 static const char* getTRKSensorPattern() { return sSensorName.c_str(); }
35
36 static const char* composeSymNameTRK(int d)
37 {
38 return Form("%s_%d", o2::detectors::DetID(o2::detectors::DetID::TRK).getName(), d);
39 }
40 static const char* composeSymNameLayer(int d, int layer);
41 static const char* composeSymNameStave(int d, int layer);
42 static const char* composeSymNameChip(int d, int lr);
43 static const char* composeSymNameSensor(int d, int layer);
44
45 protected:
46 static std::string sVolumeName;
47 static std::string sLayerName;
48 static std::string sStaveName;
49 static std::string sChipName;
50 static std::string sSensorName;
51
52 private:
53 static std::unique_ptr<o2::trk::GeometryTGeo> sInstance;
54};
55
56} // namespace trk
57} // namespace o2
58#endif
Static class with identifiers, bitmasks and names for ALICE detectors.
Definition DetID.h:58
const char * getName() const
static const char * composeSymNameLayer(int d, int layer)
static const char * getTRKStavePattern()
static const char * getTRKChipPattern()
static std::string sVolumeName
static const char * getTRKSensorPattern()
static std::string sStaveName
static GeometryTGeo * Instance()
static const char * composeSymNameChip(int d, int lr)
static const char * getTRKLayerPattern()
static std::string sChipName
static std::string sSensorName
void fillMatrixCache(int mask)
static std::string sLayerName
static const char * composeSymNameSensor(int d, int layer)
static const char * getTRKVolPattern()
static const char * composeSymNameStave(int d, int layer)
static const char * composeSymNameTRK(int d)
void Build(int loadTrans)
GLenum GLuint GLint GLint layer
Definition glcorearb.h:1310
GLint GLuint mask
Definition glcorearb.h:291
a couple of static helper functions to create timestamp values for CCDB queries or override obsolete ...