/
githubmirror
/
cmssw
Обзор
Документация
Войти
/
githubmirror
/
cmssw
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
FWCore/ParameterSet/src/defaultModuleLabel.cc
30 строк
1 KB
Matti Kortelainen
Generate only one cfi file for each Alpaka module
19 янв 2023, 04:35
19 янв 2023, 04:35
48ef682
Код
Авторство
О чём код?
#include "FWCore/ParameterSet/interface/defaultModuleLabel.h" #include <algorithm> namespace edm { std::string defaultModuleLabel(std::string label) { // remove all colons (module type may contain namespace) label.erase(std::remove(label.begin(), label.end(), ':'), label.end()); // remove everything after first '@' (used for module alternatives) label.erase(std::find(label.begin(), label.end(), '@'), label.end()); // the following code originates from HLTrigger/HLTcore/interface/defaultModuleLabel.h // if the label is all uppercase, change it to all lowercase // if the label starts with more than one uppercase letter, change n-1 to lowercase // otherwise, change the first letter to lowercase unsigned int ups = 0; for (char c : label) if (std::isupper(c)) ++ups; else break; if (ups > 1 and ups != label.size()) --ups; for (unsigned int i = 0; i < ups; ++i) label[i] = std::tolower(label[i]); return label; } } // namespace edm