Skip to content
Snippets Groups Projects
Select Git revision
  • 712d0b65991c07fb5211cf540c6e4bec9236f22f
  • master default protected
  • nightly_master
  • online_much_readconf_cleanup protected
  • online_mvd_readconf_cleanup protected
  • jul25_patches
  • cleanup_rich_v25a
  • jul24_patches
  • nov23_patches
  • DC_2404
  • nighly_master
  • DC_Jan24
  • DC_Nov23
  • DC_Oct23
  • feb23_patches
  • L1Algo-dev9
  • dec21_patches protected
  • apr21_patches protected
  • dev_2025_45
  • dev_2025_44
  • dev_2025_43
  • dev_2025_42
  • dev_2025_41
  • dev_2025_40
  • dev_2025_39
  • dev_2025_38
  • dev_2025_37
  • dev_2025_36
  • dev_2025_35
  • dev_2025_34
  • dev_2025_33
  • dev_2025_32
  • dev_2025_31
  • dev_2025_30
  • RC_jul25
  • dev_2025_29
  • dev_2025_28
  • dev_2025_27
38 results

TrackingInterface.h

Blame
  • TrackingInterface.h 1.38 KiB
    /* Copyright (C) 2024 GSI Helmholtzzentrum fuer Schwerionenforschung, Darmstadt
       SPDX-License-Identifier: GPL-3.0-only
       Authors: Sergei Zharko [committer] */
    
    /// \file   TrackingInterface.h
    /// \date   19.04.2024
    /// \brief  A TOF-parameter and geometry interface used for tracking input data initialization (header)
    /// \author Sergei Zharko <s.zharko@gsi.de>
    
    #pragma once
    
    #include "SubChain.h"
    
    namespace cbm::algo::tof
    {
      class TrackingInterface : public SubChain {
       public:
        /// \brief Default constructor
        TrackingInterface() = default;
    
        /// \brief Copy constructor
        TrackingInterface(const TrackingInterface&) = delete;
    
        /// \brief Move constructor
        TrackingInterface(TrackingInterface&&) = delete;
    
        /// \brief Destructor
        ~TrackingInterface() = default;
    
        /// \brief Initializer function
        void Init();
    
        /// \brief   Returns tracking station index by the TOF address
        /// \param   address  Unique address of a TOF element
        /// \return  Local index of tracking station
        int GetTrackingStation(uint32_t address) const;
    
       private:
        std::vector<int> fvNofRpc;                          ///< Number of RPCs [NbSmt]
        std::vector<int> fvNofSm;                           ///< Number of super modules [NbSmt]
        std::vector<std::vector<int>> fvTrackingStationId;  ///< Index of tracking station [NbSmt][NbSm * NbRpc]
      };
    }  // namespace cbm::algo::tof