diff --git a/FWCore/Integration/test/ProducerWithPSetDesc.cc b/FWCore/Integration/test/ProducerWithPSetDesc.cc index 510c63e6e365b..f9638e1cd6828 100644 --- a/FWCore/Integration/test/ProducerWithPSetDesc.cc +++ b/FWCore/Integration/test/ProducerWithPSetDesc.cc @@ -4,7 +4,6 @@ #include "FWCore/Framework/interface/MakerMacros.h" #include "FWCore/ParameterSet/interface/ConfigurationDescriptions.h" -#include "FWCore/ParameterSet/interface/getFixedSizeArray.h" #include "FWCore/ParameterSet/interface/ParameterSetDescription.h" #include "FWCore/ParameterSet/interface/ParameterDescriptionBase.h" #include "FWCore/ParameterSet/interface/ParameterDescription.h" @@ -80,10 +79,10 @@ namespace edmtest { vint = ps.getParameter>("vint3"); assert(vint[0] == 2147483647); assert(vint[1] == -2147483647); - std::array testArray = edm::getFixedSizeArray(ps, std::string("vint3")); + std::array testArray = ps.getParameter>(std::string("vint3")); assert(testArray[0] == 2147483647); assert(testArray[1] == -2147483647); - std::array testArray1 = edm::getFixedSizeArray(ps, "vint3"); + std::array testArray1 = ps.getParameter>("vint3"); assert(testArray1[0] == 2147483647); assert(testArray1[1] == -2147483647); vint = ps.getParameter>("vint4"); diff --git a/FWCore/ParameterSet/interface/ParameterSet.h b/FWCore/ParameterSet/interface/ParameterSet.h index fff95f284c685..bb4421ac615b8 100644 --- a/FWCore/ParameterSet/interface/ParameterSet.h +++ b/FWCore/ParameterSet/interface/ParameterSet.h @@ -22,6 +22,7 @@ #include #include #include +#include // ---------------------------------------------------------------------- // contents @@ -33,6 +34,16 @@ namespace edm { class ModuleDescription; typedef std::vector VParameterSet; + template + struct ParameterTypeTraits { + //When specializing the template, include the following in the struct: + // + // using GetType = ; + // + // //Function to convert the parameter type into the requested type + // static T convert(GetType, std::string const&); + }; + class ParameterSet { public: template @@ -288,8 +299,36 @@ namespace edm { ParameterSet const& getProcessParameterSetContainingModule(ModuleDescription const& moduleDescription); + template + inline T ParameterSet::getParameter(std::string const& name) const { + using GetType = typename ParameterTypeTraits::GetType; + return ParameterTypeTraits::convert(getParameter(name), name); + } + + template + inline T ParameterSet::getParameter(const char* name) const { + using GetType = typename ParameterTypeTraits::GetType; + return ParameterTypeTraits::convert(getParameter(name), name); + } // specializations // ---------------------------------------------------------------------- + namespace pset::exceptions { + void throwWrongNumberOfElements(std::string const& iParameterName, size_t iExpected, size_t iGot); + } + //Read an std::array from an std::vector + template + struct ParameterTypeTraits> { + using GetType = std::vector; + static std::array convert(std::vector iVec, std::string const& iName) { + if (iVec.size() != N) { + pset::exceptions::throwWrongNumberOfElements(iName, N, iVec.size()); + } + std::array a; + std::copy_n(std::make_move_iterator(iVec.begin()), N, a.begin()); + return a; + } + }; + // ---------------------------------------------------------------------- template <> bool ParameterSet::getParameter(std::string const& name) const; @@ -301,7 +340,7 @@ namespace edm { int ParameterSet::getParameter(std::string const& name) const; template <> - std::vector ParameterSet::getParameter >(std::string const& name) const; + std::vector ParameterSet::getParameter>(std::string const& name) const; // ---------------------------------------------------------------------- // Int64, vInt64 @@ -310,7 +349,7 @@ namespace edm { long long ParameterSet::getParameter(std::string const& name) const; template <> - std::vector ParameterSet::getParameter >(std::string const& name) const; + std::vector ParameterSet::getParameter>(std::string const& name) const; // ---------------------------------------------------------------------- // Uint32, vUint32 @@ -319,7 +358,7 @@ namespace edm { unsigned int ParameterSet::getParameter(std::string const& name) const; template <> - std::vector ParameterSet::getParameter >(std::string const& name) const; + std::vector ParameterSet::getParameter>(std::string const& name) const; // ---------------------------------------------------------------------- // Uint64, vUint64 @@ -328,7 +367,7 @@ namespace edm { unsigned long long ParameterSet::getParameter(std::string const& name) const; template <> - std::vector ParameterSet::getParameter >( + std::vector ParameterSet::getParameter>( std::string const& name) const; // ---------------------------------------------------------------------- @@ -338,7 +377,7 @@ namespace edm { double ParameterSet::getParameter(std::string const& name) const; template <> - std::vector ParameterSet::getParameter >(std::string const& name) const; + std::vector ParameterSet::getParameter>(std::string const& name) const; // ---------------------------------------------------------------------- // String, vString @@ -347,7 +386,7 @@ namespace edm { std::string ParameterSet::getParameter(std::string const& name) const; template <> - std::vector ParameterSet::getParameter >(std::string const& name) const; + std::vector ParameterSet::getParameter>(std::string const& name) const; // ---------------------------------------------------------------------- // FileInPath @@ -370,7 +409,7 @@ namespace edm { // VInputTag template <> - std::vector ParameterSet::getParameter >(std::string const& name) const; + std::vector ParameterSet::getParameter>(std::string const& name) const; // ---------------------------------------------------------------------- // ESInputTag @@ -382,7 +421,7 @@ namespace edm { // VESInputTag template <> - std::vector ParameterSet::getParameter >(std::string const& name) const; + std::vector ParameterSet::getParameter>(std::string const& name) const; // ---------------------------------------------------------------------- // EventID @@ -394,7 +433,7 @@ namespace edm { // VEventID template <> - std::vector ParameterSet::getParameter >(std::string const& name) const; + std::vector ParameterSet::getParameter>(std::string const& name) const; // ---------------------------------------------------------------------- // LuminosityBlockID @@ -406,7 +445,7 @@ namespace edm { // VLuminosityBlockID template <> - std::vector ParameterSet::getParameter >( + std::vector ParameterSet::getParameter>( std::string const& name) const; // ---------------------------------------------------------------------- @@ -419,7 +458,7 @@ namespace edm { // VEventRange template <> - std::vector ParameterSet::getParameter >(std::string const& name) const; + std::vector ParameterSet::getParameter>(std::string const& name) const; // ---------------------------------------------------------------------- // LuminosityBlockRange @@ -431,7 +470,7 @@ namespace edm { // VLuminosityBlockRange template <> - std::vector ParameterSet::getParameter >( + std::vector ParameterSet::getParameter>( std::string const& name) const; // ---------------------------------------------------------------------- @@ -488,11 +527,11 @@ namespace edm { int ParameterSet::getUntrackedParameter(std::string const& name) const; template <> - std::vector ParameterSet::getUntrackedParameter >(std::string const& name, - std::vector const& defaultValue) const; + std::vector ParameterSet::getUntrackedParameter>(std::string const& name, + std::vector const& defaultValue) const; template <> - std::vector ParameterSet::getUntrackedParameter >(std::string const& name) const; + std::vector ParameterSet::getUntrackedParameter>(std::string const& name) const; // ---------------------------------------------------------------------- // Uint32, vUint32 @@ -505,11 +544,11 @@ namespace edm { unsigned int ParameterSet::getUntrackedParameter(std::string const& name) const; template <> - std::vector ParameterSet::getUntrackedParameter >( + std::vector ParameterSet::getUntrackedParameter>( std::string const& name, std::vector const& defaultValue) const; template <> - std::vector ParameterSet::getUntrackedParameter >( + std::vector ParameterSet::getUntrackedParameter>( std::string const& name) const; // ---------------------------------------------------------------------- @@ -523,11 +562,11 @@ namespace edm { unsigned long long ParameterSet::getUntrackedParameter(std::string const& name) const; template <> - std::vector ParameterSet::getUntrackedParameter >( + std::vector ParameterSet::getUntrackedParameter>( std::string const& name, std::vector const& defaultValue) const; template <> - std::vector ParameterSet::getUntrackedParameter >( + std::vector ParameterSet::getUntrackedParameter>( std::string const& name) const; // ---------------------------------------------------------------------- @@ -541,11 +580,11 @@ namespace edm { long long ParameterSet::getUntrackedParameter(std::string const& name) const; template <> - std::vector ParameterSet::getUntrackedParameter >( + std::vector ParameterSet::getUntrackedParameter>( std::string const& name, std::vector const& defaultValue) const; template <> - std::vector ParameterSet::getUntrackedParameter >(std::string const& name) const; + std::vector ParameterSet::getUntrackedParameter>(std::string const& name) const; // ---------------------------------------------------------------------- // Double, vDouble @@ -557,11 +596,11 @@ namespace edm { double ParameterSet::getUntrackedParameter(std::string const& name) const; template <> - std::vector ParameterSet::getUntrackedParameter >( + std::vector ParameterSet::getUntrackedParameter>( std::string const& name, std::vector const& defaultValue) const; template <> - std::vector ParameterSet::getUntrackedParameter >(std::string const& name) const; + std::vector ParameterSet::getUntrackedParameter>(std::string const& name) const; // ---------------------------------------------------------------------- // String, vString @@ -574,11 +613,11 @@ namespace edm { std::string ParameterSet::getUntrackedParameter(std::string const& name) const; template <> - std::vector ParameterSet::getUntrackedParameter >( + std::vector ParameterSet::getUntrackedParameter>( std::string const& name, std::vector const& defaultValue) const; template <> - std::vector ParameterSet::getUntrackedParameter >(std::string const& name) const; + std::vector ParameterSet::getUntrackedParameter>(std::string const& name) const; // ---------------------------------------------------------------------- // FileInPath @@ -600,11 +639,11 @@ namespace edm { InputTag ParameterSet::getUntrackedParameter(std::string const& name) const; template <> - std::vector ParameterSet::getUntrackedParameter >( + std::vector ParameterSet::getUntrackedParameter>( std::string const& name, std::vector const& defaultValue) const; template <> - std::vector ParameterSet::getUntrackedParameter >(std::string const& name) const; + std::vector ParameterSet::getUntrackedParameter>(std::string const& name) const; // ---------------------------------------------------------------------- // EventID, VEventID @@ -616,10 +655,10 @@ namespace edm { EventID ParameterSet::getUntrackedParameter(std::string const& name) const; template <> - std::vector ParameterSet::getUntrackedParameter >( + std::vector ParameterSet::getUntrackedParameter>( std::string const& name, std::vector const& defaultValue) const; template <> - std::vector ParameterSet::getUntrackedParameter >(std::string const& name) const; + std::vector ParameterSet::getUntrackedParameter>(std::string const& name) const; // ---------------------------------------------------------------------- // LuminosityBlockID, VLuminosityBlockID @@ -632,10 +671,10 @@ namespace edm { LuminosityBlockID ParameterSet::getUntrackedParameter(std::string const& name) const; template <> - std::vector ParameterSet::getUntrackedParameter >( + std::vector ParameterSet::getUntrackedParameter>( std::string const& name, std::vector const& defaultValue) const; template <> - std::vector ParameterSet::getUntrackedParameter >( + std::vector ParameterSet::getUntrackedParameter>( std::string const& name) const; // ---------------------------------------------------------------------- @@ -649,10 +688,10 @@ namespace edm { EventRange ParameterSet::getUntrackedParameter(std::string const& name) const; template <> - std::vector ParameterSet::getUntrackedParameter >( + std::vector ParameterSet::getUntrackedParameter>( std::string const& name, std::vector const& defaultValue) const; template <> - std::vector ParameterSet::getUntrackedParameter >(std::string const& name) const; + std::vector ParameterSet::getUntrackedParameter>(std::string const& name) const; // ---------------------------------------------------------------------- // LuminosityBlockRange, VLuminosityBlockRange @@ -665,10 +704,10 @@ namespace edm { LuminosityBlockRange ParameterSet::getUntrackedParameter(std::string const& name) const; template <> - std::vector ParameterSet::getUntrackedParameter >( + std::vector ParameterSet::getUntrackedParameter>( std::string const& name, std::vector const& defaultValue) const; template <> - std::vector ParameterSet::getUntrackedParameter >( + std::vector ParameterSet::getUntrackedParameter>( std::string const& name) const; // specializations @@ -685,7 +724,7 @@ namespace edm { int ParameterSet::getParameter(char const* name) const; template <> - std::vector ParameterSet::getParameter >(char const* name) const; + std::vector ParameterSet::getParameter>(char const* name) const; // ---------------------------------------------------------------------- // Int64, vInt64 @@ -694,7 +733,7 @@ namespace edm { long long ParameterSet::getParameter(char const* name) const; template <> - std::vector ParameterSet::getParameter >(char const* name) const; + std::vector ParameterSet::getParameter>(char const* name) const; // ---------------------------------------------------------------------- // Uint32, vUint32 @@ -703,7 +742,7 @@ namespace edm { unsigned int ParameterSet::getParameter(char const* name) const; template <> - std::vector ParameterSet::getParameter >(char const* name) const; + std::vector ParameterSet::getParameter>(char const* name) const; // ---------------------------------------------------------------------- // Uint64, vUint64 @@ -712,7 +751,7 @@ namespace edm { unsigned long long ParameterSet::getParameter(char const* name) const; template <> - std::vector ParameterSet::getParameter >(char const* name) const; + std::vector ParameterSet::getParameter>(char const* name) const; // ---------------------------------------------------------------------- // Double, vDouble @@ -721,7 +760,7 @@ namespace edm { double ParameterSet::getParameter(char const* name) const; template <> - std::vector ParameterSet::getParameter >(char const* name) const; + std::vector ParameterSet::getParameter>(char const* name) const; // ---------------------------------------------------------------------- // String, vString @@ -730,7 +769,7 @@ namespace edm { std::string ParameterSet::getParameter(char const* name) const; template <> - std::vector ParameterSet::getParameter >(char const* name) const; + std::vector ParameterSet::getParameter>(char const* name) const; // ---------------------------------------------------------------------- // FileInPath @@ -748,7 +787,19 @@ namespace edm { // VInputTag template <> - std::vector ParameterSet::getParameter >(char const* name) const; + std::vector ParameterSet::getParameter>(char const* name) const; + + // ---------------------------------------------------------------------- + // ESInputTag + + template <> + ESInputTag ParameterSet::getParameter(char const* name) const; + + // ---------------------------------------------------------------------- + // VESInputTag + + template <> + std::vector ParameterSet::getParameter>(char const* name) const; // ---------------------------------------------------------------------- // EventID @@ -760,7 +811,7 @@ namespace edm { // VEventID template <> - std::vector ParameterSet::getParameter >(char const* name) const; + std::vector ParameterSet::getParameter>(char const* name) const; // ---------------------------------------------------------------------- // LuminosityBlockID @@ -772,7 +823,7 @@ namespace edm { // VLuminosityBlockID template <> - std::vector ParameterSet::getParameter >(char const* name) const; + std::vector ParameterSet::getParameter>(char const* name) const; // ---------------------------------------------------------------------- // EventRange @@ -784,7 +835,7 @@ namespace edm { // VEventRange template <> - std::vector ParameterSet::getParameter >(char const* name) const; + std::vector ParameterSet::getParameter>(char const* name) const; // ---------------------------------------------------------------------- // LuminosityBlockRange @@ -796,7 +847,7 @@ namespace edm { // VLuminosityBlockRange template <> - std::vector ParameterSet::getParameter >( + std::vector ParameterSet::getParameter>( char const* name) const; // ---------------------------------------------------------------------- @@ -829,11 +880,11 @@ namespace edm { int ParameterSet::getUntrackedParameter(char const* name) const; template <> - std::vector ParameterSet::getUntrackedParameter >(char const* name, - std::vector const& defaultValue) const; + std::vector ParameterSet::getUntrackedParameter>(char const* name, + std::vector const& defaultValue) const; template <> - std::vector ParameterSet::getUntrackedParameter >(char const* name) const; + std::vector ParameterSet::getUntrackedParameter>(char const* name) const; // ---------------------------------------------------------------------- // Uint32, vUint32 @@ -846,11 +897,11 @@ namespace edm { unsigned int ParameterSet::getUntrackedParameter(char const* name) const; template <> - std::vector ParameterSet::getUntrackedParameter >( + std::vector ParameterSet::getUntrackedParameter>( char const* name, std::vector const& defaultValue) const; template <> - std::vector ParameterSet::getUntrackedParameter >(char const* name) const; + std::vector ParameterSet::getUntrackedParameter>(char const* name) const; // ---------------------------------------------------------------------- // Uint64, vUint64 @@ -863,11 +914,11 @@ namespace edm { unsigned long long ParameterSet::getUntrackedParameter(char const* name) const; template <> - std::vector ParameterSet::getUntrackedParameter >( + std::vector ParameterSet::getUntrackedParameter>( char const* name, std::vector const& defaultValue) const; template <> - std::vector ParameterSet::getUntrackedParameter >( + std::vector ParameterSet::getUntrackedParameter>( char const* name) const; // ---------------------------------------------------------------------- @@ -880,11 +931,11 @@ namespace edm { long long ParameterSet::getUntrackedParameter(char const* name) const; template <> - std::vector ParameterSet::getUntrackedParameter >( + std::vector ParameterSet::getUntrackedParameter>( char const* name, std::vector const& defaultValue) const; template <> - std::vector ParameterSet::getUntrackedParameter >(char const* name) const; + std::vector ParameterSet::getUntrackedParameter>(char const* name) const; // ---------------------------------------------------------------------- // Double, vDouble @@ -896,11 +947,11 @@ namespace edm { double ParameterSet::getUntrackedParameter(char const* name) const; template <> - std::vector ParameterSet::getUntrackedParameter >( + std::vector ParameterSet::getUntrackedParameter>( char const* name, std::vector const& defaultValue) const; template <> - std::vector ParameterSet::getUntrackedParameter >(char const* name) const; + std::vector ParameterSet::getUntrackedParameter>(char const* name) const; // ---------------------------------------------------------------------- // String, vString @@ -912,11 +963,11 @@ namespace edm { std::string ParameterSet::getUntrackedParameter(char const* name) const; template <> - std::vector ParameterSet::getUntrackedParameter >( + std::vector ParameterSet::getUntrackedParameter>( char const* name, std::vector const& defaultValue) const; template <> - std::vector ParameterSet::getUntrackedParameter >(char const* name) const; + std::vector ParameterSet::getUntrackedParameter>(char const* name) const; // ---------------------------------------------------------------------- // FileInPath @@ -937,11 +988,11 @@ namespace edm { InputTag ParameterSet::getUntrackedParameter(char const* name) const; template <> - std::vector ParameterSet::getUntrackedParameter >( + std::vector ParameterSet::getUntrackedParameter>( char const* name, std::vector const& defaultValue) const; template <> - std::vector ParameterSet::getUntrackedParameter >(char const* name) const; + std::vector ParameterSet::getUntrackedParameter>(char const* name) const; // ---------------------------------------------------------------------- // EventID, VEventID @@ -953,10 +1004,10 @@ namespace edm { EventID ParameterSet::getUntrackedParameter(char const* name) const; template <> - std::vector ParameterSet::getUntrackedParameter >( + std::vector ParameterSet::getUntrackedParameter>( char const* name, std::vector const& defaultValue) const; template <> - std::vector ParameterSet::getUntrackedParameter >(char const* name) const; + std::vector ParameterSet::getUntrackedParameter>(char const* name) const; // ---------------------------------------------------------------------- // LuminosityBlockID, VLuminosityBlockID @@ -969,10 +1020,10 @@ namespace edm { LuminosityBlockID ParameterSet::getUntrackedParameter(char const* name) const; template <> - std::vector ParameterSet::getUntrackedParameter >( + std::vector ParameterSet::getUntrackedParameter>( char const* name, std::vector const& defaultValue) const; template <> - std::vector ParameterSet::getUntrackedParameter >( + std::vector ParameterSet::getUntrackedParameter>( char const* name) const; // ---------------------------------------------------------------------- @@ -985,10 +1036,10 @@ namespace edm { EventRange ParameterSet::getUntrackedParameter(char const* name) const; template <> - std::vector ParameterSet::getUntrackedParameter >( + std::vector ParameterSet::getUntrackedParameter>( char const* name, std::vector const& defaultValue) const; template <> - std::vector ParameterSet::getUntrackedParameter >(char const* name) const; + std::vector ParameterSet::getUntrackedParameter>(char const* name) const; // ---------------------------------------------------------------------- // LuminosityBlockRange, VLuminosityBlockRange @@ -1001,10 +1052,10 @@ namespace edm { LuminosityBlockRange ParameterSet::getUntrackedParameter(char const* name) const; template <> - std::vector ParameterSet::getUntrackedParameter >( + std::vector ParameterSet::getUntrackedParameter>( char const* name, std::vector const& defaultValue) const; template <> - std::vector ParameterSet::getUntrackedParameter >( + std::vector ParameterSet::getUntrackedParameter>( char const* name) const; // ---------------------------------------------------------------------- diff --git a/FWCore/ParameterSet/interface/getFixedSizeArray.h b/FWCore/ParameterSet/interface/getFixedSizeArray.h deleted file mode 100644 index aee4f7a92d81d..0000000000000 --- a/FWCore/ParameterSet/interface/getFixedSizeArray.h +++ /dev/null @@ -1,28 +0,0 @@ -#ifndef FWCore_ParameterSet_getFixedSizeArray_h -#define FWCore_ParameterSet_getFixedSizeArray_h - -#include "FWCore/ParameterSet/interface/ParameterSet.h" -#include "FWCore/Utilities/interface/EDMException.h" - -#include -#include -#include -#include -#include - -namespace edm { - - template - std::array getFixedSizeArray(ParameterSet const& pset, std::string const& name) { - std::vector vec = pset.getParameter>(name); - if (vec.size() != N) { - throw Exception(errors::Configuration) - << "The parameter '" << name << "' should have " << N << " elements, but has " << vec.size() - << " elements in the configuration.\n"; - } - std::array a{}; - std::copy_n(vec.begin(), N, a.begin()); - return a; - } -} // namespace edm -#endif diff --git a/FWCore/ParameterSet/src/ANDGroupDescription.cc b/FWCore/ParameterSet/src/ANDGroupDescription.cc index fb27d84d93518..a8f7c9ff313f2 100644 --- a/FWCore/ParameterSet/src/ANDGroupDescription.cc +++ b/FWCore/ParameterSet/src/ANDGroupDescription.cc @@ -1,5 +1,5 @@ -#include "FWCore/ParameterSet/interface/ANDGroupDescription.h" +#include "FWCore/ParameterSet/src/ANDGroupDescription.h" #include "FWCore/Utilities/interface/EDMException.h" #include "FWCore/ParameterSet/interface/DocFormatHelper.h" diff --git a/FWCore/ParameterSet/interface/ANDGroupDescription.h b/FWCore/ParameterSet/src/ANDGroupDescription.h similarity index 100% rename from FWCore/ParameterSet/interface/ANDGroupDescription.h rename to FWCore/ParameterSet/src/ANDGroupDescription.h diff --git a/FWCore/ParameterSet/src/FillDescriptionFromPSet.cc b/FWCore/ParameterSet/src/FillDescriptionFromPSet.cc index e359aef0893a8..f31c34e56632a 100644 --- a/FWCore/ParameterSet/src/FillDescriptionFromPSet.cc +++ b/FWCore/ParameterSet/src/FillDescriptionFromPSet.cc @@ -1,5 +1,5 @@ -#include "FWCore/ParameterSet/interface/FillDescriptionFromPSet.h" +#include "FWCore/ParameterSet/src/FillDescriptionFromPSet.h" #include "FWCore/ParameterSet/interface/ParameterDescriptionNode.h" #include "FWCore/ParameterSet/interface/ParameterSetDescription.h" #include "FWCore/ParameterSet/interface/ParameterSet.h" diff --git a/FWCore/ParameterSet/interface/FillDescriptionFromPSet.h b/FWCore/ParameterSet/src/FillDescriptionFromPSet.h similarity index 100% rename from FWCore/ParameterSet/interface/FillDescriptionFromPSet.h rename to FWCore/ParameterSet/src/FillDescriptionFromPSet.h diff --git a/FWCore/ParameterSet/src/ORGroupDescription.cc b/FWCore/ParameterSet/src/ORGroupDescription.cc index f394780600d10..64f5d8e4f3cf8 100644 --- a/FWCore/ParameterSet/src/ORGroupDescription.cc +++ b/FWCore/ParameterSet/src/ORGroupDescription.cc @@ -1,5 +1,5 @@ -#include "FWCore/ParameterSet/interface/ORGroupDescription.h" +#include "FWCore/ParameterSet/src/ORGroupDescription.h" #include "FWCore/Utilities/interface/EDMException.h" #include "FWCore/ParameterSet/interface/DocFormatHelper.h" diff --git a/FWCore/ParameterSet/interface/ORGroupDescription.h b/FWCore/ParameterSet/src/ORGroupDescription.h similarity index 100% rename from FWCore/ParameterSet/interface/ORGroupDescription.h rename to FWCore/ParameterSet/src/ORGroupDescription.h diff --git a/FWCore/ParameterSet/src/ParameterDescription.cc b/FWCore/ParameterSet/src/ParameterDescription.cc index 7bda236813c23..efdca7d9aa044 100644 --- a/FWCore/ParameterSet/src/ParameterDescription.cc +++ b/FWCore/ParameterSet/src/ParameterDescription.cc @@ -7,7 +7,7 @@ #include "DataFormats/Provenance/interface/LuminosityBlockRange.h" #include "FWCore/ParameterSet/interface/DocFormatHelper.h" #include "FWCore/ParameterSet/interface/FileInPath.h" -#include "FWCore/ParameterSet/interface/FillDescriptionFromPSet.h" +#include "FWCore/ParameterSet/src/FillDescriptionFromPSet.h" #include "FWCore/ParameterSet/interface/ParameterSetDescription.h" #include "FWCore/ParameterSet/interface/VParameterSetEntry.h" #include "FWCore/Utilities/interface/Algorithms.h" diff --git a/FWCore/ParameterSet/src/ParameterDescriptionNode.cc b/FWCore/ParameterSet/src/ParameterDescriptionNode.cc index 1fa1a6bf2edf1..06821aa0a25c8 100644 --- a/FWCore/ParameterSet/src/ParameterDescriptionNode.cc +++ b/FWCore/ParameterSet/src/ParameterDescriptionNode.cc @@ -1,9 +1,9 @@ #include "FWCore/ParameterSet/interface/ParameterDescriptionNode.h" #include "FWCore/ParameterSet/interface/ParameterDescriptionCases.h" -#include "FWCore/ParameterSet/interface/ANDGroupDescription.h" -#include "FWCore/ParameterSet/interface/ORGroupDescription.h" -#include "FWCore/ParameterSet/interface/XORGroupDescription.h" +#include "FWCore/ParameterSet/src/ANDGroupDescription.h" +#include "FWCore/ParameterSet/src/ORGroupDescription.h" +#include "FWCore/ParameterSet/src/XORGroupDescription.h" #include "FWCore/ParameterSet/interface/DocFormatHelper.h" #include diff --git a/FWCore/ParameterSet/src/ParameterSet.cc b/FWCore/ParameterSet/src/ParameterSet.cc index 7bf4828858c49..d22f363866c40 100644 --- a/FWCore/ParameterSet/src/ParameterSet.cc +++ b/FWCore/ParameterSet/src/ParameterSet.cc @@ -11,7 +11,7 @@ #include "FWCore/MessageLogger/interface/MessageLogger.h" #include "FWCore/ParameterSet/interface/Registry.h" -#include "FWCore/ParameterSet/interface/split.h" +#include "FWCore/ParameterSet/src/split.h" #include "FWCore/Utilities/interface/Algorithms.h" #include "FWCore/Utilities/interface/Digest.h" #include "FWCore/Utilities/interface/EDMException.h" @@ -29,6 +29,13 @@ namespace edm { + namespace pset::exceptions { + void throwWrongNumberOfElements(std::string const& iName, size_t iExpected, size_t iGot) { + throw Exception(errors::Configuration) << "The parameter '" << iName << "' should have " << iExpected + << " elements, but has " << iGot << " elements in the configuration.\n"; + } + } // namespace pset::exceptions + void ParameterSet::invalidateRegistration(std::string const& nameOfTracked) { // We have added a new parameter. Invalidate the ID. if (isRegistered()) { diff --git a/FWCore/ParameterSet/src/ParameterSetConverter.cc b/FWCore/ParameterSet/src/ParameterSetConverter.cc index 5b23740ab53da..be0ed675ac1d1 100644 --- a/FWCore/ParameterSet/src/ParameterSetConverter.cc +++ b/FWCore/ParameterSet/src/ParameterSetConverter.cc @@ -10,7 +10,7 @@ ParameterSetConverter.cc #include "FWCore/ParameterSet/interface/ParameterSetConverter.h" #include #include "FWCore/ParameterSet/interface/Registry.h" -#include "FWCore/ParameterSet/interface/split.h" +#include "FWCore/ParameterSet/src/split.h" #include "FWCore/Utilities/interface/Algorithms.h" namespace edm { diff --git a/FWCore/ParameterSet/src/VParameterSetEntry.cc b/FWCore/ParameterSet/src/VParameterSetEntry.cc index cb9fff8537642..79fdc007cbcaf 100644 --- a/FWCore/ParameterSet/src/VParameterSetEntry.cc +++ b/FWCore/ParameterSet/src/VParameterSetEntry.cc @@ -1,6 +1,6 @@ #include "FWCore/ParameterSet/interface/VParameterSetEntry.h" #include "FWCore/ParameterSet/interface/ParameterSet.h" -#include "FWCore/ParameterSet/interface/split.h" +#include "FWCore/ParameterSet/src/split.h" #include "FWCore/Utilities/interface/Digest.h" #include diff --git a/FWCore/ParameterSet/src/XORGroupDescription.cc b/FWCore/ParameterSet/src/XORGroupDescription.cc index 9e278e3f49329..76b915c0e12b6 100644 --- a/FWCore/ParameterSet/src/XORGroupDescription.cc +++ b/FWCore/ParameterSet/src/XORGroupDescription.cc @@ -1,5 +1,5 @@ -#include "FWCore/ParameterSet/interface/XORGroupDescription.h" +#include "FWCore/ParameterSet/src/XORGroupDescription.h" #include "FWCore/Utilities/interface/EDMException.h" #include "FWCore/ParameterSet/interface/DocFormatHelper.h" diff --git a/FWCore/ParameterSet/interface/XORGroupDescription.h b/FWCore/ParameterSet/src/XORGroupDescription.h similarity index 100% rename from FWCore/ParameterSet/interface/XORGroupDescription.h rename to FWCore/ParameterSet/src/XORGroupDescription.h diff --git a/FWCore/ParameterSet/interface/split.h b/FWCore/ParameterSet/src/split.h similarity index 100% rename from FWCore/ParameterSet/interface/split.h rename to FWCore/ParameterSet/src/split.h diff --git a/FWCore/ParameterSet/src/types.cc b/FWCore/ParameterSet/src/types.cc index 57121cda9ad32..d5b81cf890cec 100644 --- a/FWCore/ParameterSet/src/types.cc +++ b/FWCore/ParameterSet/src/types.cc @@ -9,7 +9,7 @@ #include "FWCore/ParameterSet/interface/types.h" #include "boost/lexical_cast.hpp" -#include "FWCore/ParameterSet/interface/split.h" +#include "FWCore/ParameterSet/src/split.h" #include "FWCore/Utilities/interface/Parse.h" #include #include