Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2026-11-13 10:01:52

0001 // This file is part of the ACTS project.
0002 //
0003 // Copyright (C) 2016 CERN for the benefit of the ACTS project
0004 //
0005 // This Source Code Form is subject to the terms of the Mozilla Public
0006 // License, v. 2.0. If a copy of the MPL was not distributed with this
0007 // file, You can obtain one at https://mozilla.org/MPL/2.0/.
0008 
0009 #pragma once
0010 
0011 #include <cstdint>
0012 
0013 namespace Acts::Experimental {
0014 
0015 /// Where a GBTS layer sits, which fixes its coordinate convention.
0016 enum class GbtsLayerType : std::uint8_t { Barrel = 0, Endcap = 1 };
0017 
0018 /// Sensor technology of a GBTS layer, independent of GbtsLayerType.
0019 enum class GbtsLayerTechnology : std::uint8_t { Pixel = 0, Strip = 1 };
0020 
0021 /// Lightweight layer description for GBTS geometry.
0022 struct GbtsLayerDescription final {
0023   /// Combined subdetector ID.
0024   std::int32_t id{};
0025   /// Layer type (barrel or endcap).
0026   GbtsLayerType type{};
0027   /// Sensor technology of the layer.
0028   GbtsLayerTechnology technology{GbtsLayerTechnology::Pixel};
0029   /// Reference coordinate (r for barrel, z for endcap).
0030   float refCoord{};
0031   /// Minimum boundary coordinate.
0032   float minBound{};
0033   /// Maximum boundary coordinate.
0034   float maxBound{};
0035 };
0036 
0037 }  // namespace Acts::Experimental