55 TypeRegexes iparticle_type_regexes {
59 {
"(pt|eta|phi|energy|deltaZ0|vertexWeight|ntracks_ga|photon_deltaZ|photon_deltaZ_wBeamSpot)"_r, ConstituentsEDMType::CUSTOM_GETTER}
62 if (
name.find(
"tracks_all_sd0sort") != std::string::npos){
63 config = get_iparticle_input_config(
64 name, input_variables,
65 iparticle_type_regexes);
67 config.link_name =
"trackParticleLinks";
68 config.output_name =
"track_features";
70 else if (
name.find(
"electrons") != std::string::npos){
71 config = get_iparticle_input_config(
72 name, input_variables,
73 iparticle_type_regexes);
74 config.type = ConstituentsType::ELECTRON;
75 config.link_name =
"electronLinks";
76 config.output_name =
"electron_features";
78 else if (
name.find(
"muons") != std::string::npos){
79 config = get_iparticle_input_config(
80 name, input_variables,
81 iparticle_type_regexes);
83 config.link_name =
"muonLinks";
84 config.output_name =
"muon_features";
86 else if (
name.find(
"jets") != std::string::npos){
87 config = get_iparticle_input_config(
88 name, input_variables,
89 iparticle_type_regexes);
91 config.link_name =
"jetLinks";
92 config.output_name =
"jet_features";
94 else if (
name.find(
"photons") != std::string::npos){
95 config = get_iparticle_input_config(
96 name, input_variables,
97 iparticle_type_regexes);
98 config.type = ConstituentsType::PHOTON;
99 config.link_name =
"photonLinks";
100 config.output_name =
"photon_features";
103 throw std::runtime_error(
104 "Unknown constituent type: " +
name