Skip to content
Snippets Groups Projects
Select Git revision
  • RC3_APR21
  • master_clean default
  • update_at_version
  • patch-3
  • patch-2
  • update_trdtype5_nasics
  • master
  • patch-1
  • add_clusterizer_googletests
  • apuntke-master-patch-66704
  • nightly_master
  • apr21_patches
  • dev_2021_47
  • dev_2021_46
  • dev_2021_45
  • dev_2021_44
  • dev_2021_43
  • dev_2021_42
  • dev_2021_41
  • dev_2021_40
  • dev_2021_39
  • dev_2021_38
  • dev_2021_37
  • dev_2021_36
  • dev_2021_35
  • dev_2021_34
  • dev_2021_33
  • dev_2021_32
  • dev_2021_31
  • dev_2021_30
  • dev_2021_29
  • dev_2021_28
32 results

autoinstall_framework.sh

Blame
  • Forked from Computing / cbmroot
    Source project has a limited visibility.
    CbmModuleList.cxx 2.93 KiB
    /* Copyright (C) 2013-2020 GSI Helmholtzzentrum fuer Schwerionenforschung, Darmstadt
       SPDX-License-Identifier: GPL-3.0-only
       Authors: Volker Friese [committer], Florian Uhlig */
    
    /** @file CbmModuleList.cxx
     ** @author Volker Friese <v.friese@gsi.de>
     ** @date 13.06.2013
     **/
    #include "CbmModuleList.h"
    
    #include "CbmDefs.h"  // for ECbmModuleId enumerator
    
    #include <Logger.h>  // for LOG macro
    
    #include <utility>  // for pair
    
    using std::map;
    
    // -----   Initialisation of the list of modules   -------------------------
    map<ECbmModuleId, TString> CbmModuleList::DefineModules()
    {
      map<ECbmModuleId, TString> data;
    
      data[ECbmModuleId::kRef]      = "ref";
      data[ECbmModuleId::kMvd]      = "mvd";
      data[ECbmModuleId::kSts]      = "sts";
      data[ECbmModuleId::kRich]     = "rich";
      data[ECbmModuleId::kMuch]     = "much";
      data[ECbmModuleId::kTrd]      = "trd";
      data[ECbmModuleId::kTof]      = "tof";
      data[ECbmModuleId::kEcal]     = "ecal";
      data[ECbmModuleId::kPsd]      = "psd";
      data[ECbmModuleId::kHodo]     = "hodo";
      data[ECbmModuleId::kDummyDet] = "dummy";
      data[ECbmModuleId::kT0]       = "t0";
      data[ECbmModuleId::kMagnet]   = "magnet";
      data[ECbmModuleId::kTarget]   = "target";
      data[ECbmModuleId::kPipe]     = "pipe";
      data[ECbmModuleId::kShield]   = "shield";
      data[ECbmModuleId::kPlatform] = "platform";
      data[ECbmModuleId::kCave]     = "cave";
    
      return data;
    }
    // -------------------------------------------------------------------------
    
    
    // -----   Initialise static map -------------------------- ----------------
    // This is done by using the copy constructor of std::map, calling the
    // method DefineModules, which actually fills the static map.
    map<ECbmModuleId, TString> CbmModuleList::fModules(CbmModuleList::DefineModules());
    // -------------------------------------------------------------------------
    
    
    // ------  Get module Id from module name  ---------------------------------
    ECbmModuleId CbmModuleList::GetModuleId(const char* moduleName)
    {
    
      map<ECbmModuleId, TString>::iterator it = fModules.begin();
      while (it != fModules.end()) {
        if (!(it->second).CompareTo(moduleName, TString::kIgnoreCase)) return it->first;
        it++;
      }
      return ECbmModuleId::kNotExist;
    }
    // -------------------------------------------------------------------------
    
    
    // ------   Get module name from module Id   --------------------------------
    TString CbmModuleList::GetModuleName(ECbmModuleId moduleId)
    {
      if (fModules.find(moduleId) == fModules.end()) {
        LOG(error) << "Module List: Illegal module Id " << moduleId;
        return "";
      }
      return fModules.find(moduleId)->second;
    }
    // -------------------------------------------------------------------------
    
    
    // ------   Get module name in capitals from module Id   -------------------
    TString CbmModuleList::GetModuleNameCaps(ECbmModuleId moduleId)
    {
      TString name = GetModuleName(moduleId);
      name.ToUpper();
      return name;
    }
    // -------------------------------------------------------------------------