![]() |
|
|||
File indexing completed on 2023-03-17 11:03:19
0001 #ifndef FWCore_ParameterSet_allowedValues_h 0002 #define FWCore_ParameterSet_allowedValues_h 0003 // -*- C++ -*- 0004 // 0005 // Package: ParameterSet 0006 // Function: allowedValues 0007 // 0008 /**\function allowedValues allowedValues.h FWCore/ParameterSet/interface/allowedValues.h 0009 0010 Description: Used to describe the allowed values in a ParameterSet 0011 0012 Usage: 0013 The function is used in conjunction with ParameterSetDescription::ifValue to just constrain the allowed values 0014 and not add additional dependent ParameterSet nodes (which is allowed by ifValue). 0015 \code 0016 edm::ParameterSetDescription psetDesc; 0017 psetDesc.ifValue(edm::ParameterDescription<std::string>("sswitch", "a", true), 0018 edm::allowedValues<std::string>("a", "h", "z") ); 0019 \endcode 0020 0021 Implementation Details: 0022 The node associated with each allowed value is the EmptyGroupDescription which is just a dummy place holder. 0023 0024 */ 0025 // 0026 // Original Author: Chris Jones 0027 // Created: Tue Jul 28 15:18:40 EDT 2020 0028 // 0029 0030 #include "FWCore/ParameterSet/interface/ParameterDescriptionCases.h" 0031 #include "FWCore/ParameterSet/interface/EmptyGroupDescription.h" 0032 0033 #include <memory> 0034 0035 namespace edm { 0036 0037 template <typename T, typename... ARGS> 0038 std::unique_ptr<edm::ParameterDescriptionCases<T>> allowedValues(ARGS&&... args) { 0039 return (... || (std::forward<ARGS>(args) >> edm::EmptyGroupDescription())); 0040 } 0041 0042 } // namespace edm 0043 0044 #endif
[ Source navigation ] | [ Diff markup ] | [ Identifier search ] | [ general search ] |
This page was automatically generated by the 2.2.1 LXR engine. The LXR team |
![]() ![]() |