Go to the documentation of this file.00001 #include "FWCore/PythonParameterSet/interface/PythonParameterSet.h"
00002 #include "FWCore/ParameterSet/interface/FileInPath.h"
00003
00004 PythonParameterSet::PythonParameterSet()
00005 : theParameterSet()
00006 {
00007 }
00008
00009
00010 void PythonParameterSet::addVPSet(bool tracked, std::string const& name,
00011 boost::python::list value)
00012 {
00013 std::vector<PythonParameterSet> v
00014 = edm::toVector<PythonParameterSet>(value);
00015 std::vector<edm::ParameterSet> v2;
00016 v2.reserve(v.size());
00017 for(std::vector<PythonParameterSet>::iterator ppsetItr = v.begin(), ppsetItrEnd = v.end();
00018 ppsetItr != ppsetItrEnd; ++ppsetItr)
00019 {
00020 v2.push_back(ppsetItr->theParameterSet);
00021 }
00022 addParameter(tracked, name, v2);
00023 }
00024
00025
00026 boost::python::list PythonParameterSet::getVPSet(bool tracked, std::string const& name)
00027 {
00028 std::vector<edm::ParameterSet> const& v =
00029 (tracked ? theParameterSet.getParameterSetVector(name) : theParameterSet.getUntrackedParameterSetVector(name));
00030
00031
00032 boost::python::list l;
00033 for(std::vector<edm::ParameterSet>::const_iterator psetItr = v.begin(), psetItrEnd = v.end();
00034 psetItr != psetItrEnd; ++psetItr)
00035 {
00036 l.append(PythonParameterSet(*psetItr));
00037 }
00038
00039 return l;
00040 }
00041
00042
00043 void PythonParameterSet::addNewFileInPath(bool tracked, std::string const & name, std::string const & value)
00044 {
00045 addParameter(tracked, name, edm::FileInPath(value));
00046 }