132 for (std::vector<jobEntryType*>::iterator job =
jobs_.begin(); job !=
jobs_.end(); ++job) {
133 std::map<std::string, const GBRForest*> gbrForests;
134 for (std::vector<categoryEntryType*>::iterator
category = (*job)->categories_.begin();
135 category != (*job)->categories_.end();
141 TFile*
inputFile =
new TFile((*category)->inputFileName_.data());
144 gbrForest = (
GBRForest*)inputFile->Get((*category)->gbrForestName_.data());
148 throw cms::Exception(
"GBRForestWriter") <<
" Failed to load GBRForest = " << (*category)->gbrForestName_.data()
149 <<
" from file = " << (*category)->inputFileName_ <<
" !!\n";
150 gbrForests[(*category)->gbrForestName_] = gbrForest;
153 TFile*
outputFile =
new TFile((*job)->outputFileName_.data(),
"RECREATE");
155 for (std::map<std::string, const GBRForest*>::iterator gbrForest = gbrForests.begin();
156 gbrForest != gbrForests.end();
158 outputFile->WriteObject(gbrForest->second, gbrForest->first.data());
164 throw cms::Exception(
"GBRForestWriter") <<
" Failed to access PoolDBOutputService !!\n";
166 for (std::map<std::string, const GBRForest*>::iterator gbrForest = gbrForests.begin();
167 gbrForest != gbrForests.end();
170 if (gbrForests.size() > 1)
171 outputRecord.append(
"_").append(gbrForest->first);
177 for (std::map<std::string, const GBRForest*>::iterator gbrForest = gbrForests.begin();
178 gbrForest != gbrForests.end();
180 delete gbrForest->second;
cond::Time_t beginOfTime() const
void writeOne(T *payload, Time_t time, const std::string &recordName, bool withlogging=false)
std::vector< jobEntryType * > jobs_