160 std::cout <<
"<DQMFileLoader::endJob>:" << std::endl;
164 edm::LogError (
"endJob") <<
" Error in Configuration ParameterSet"
165 <<
" --> histograms will NOT be loaded !!";
172 <<
" --> histograms will NOT be loaded !!";
183 for ( std::map<std::string, cfgEntryFileSet>::const_iterator
fileSet =
fileSets_.begin();
185 for ( vstring::const_iterator inputFileName =
fileSet->second.inputFileNames_.begin();
186 inputFileName !=
fileSet->second.inputFileNames_.end(); ++inputFileName ) {
190 edm::LogError (
"endJob") <<
" Failed to open inputFile = " << (*inputFileName)
191 <<
"--> histograms will NOT be loaded !!";
197 if ( TDirectory*
directory = dynamic_cast<TDirectory*>(obj) ) {
201 <<
"--> histograms will NOT be loaded !!";
221 for ( std::map<std::string, cfgEntryFileSet>::const_iterator
fileSet =
fileSets_.begin();
223 for ( vstring::const_iterator inputFileName =
fileSet->second.inputFileNames_.begin();
224 inputFileName !=
fileSet->second.inputFileNames_.end(); ++inputFileName ) {
225 if (
verbosity )
std::cout <<
" opening inputFile = " << (*inputFileName) << std::endl;
226 dqmStore.
open(*inputFileName,
true);
234 if (
fileSet->second.dqmDirectory_store_ !=
"" ) {
237 std::string outputDirectory =
dqmDirectoryName(std::string(inputDirectory)).append(
fileSet->second.dqmDirectory_store_);
241 std::vector<std::string> dirNames = dqmStore.
getSubdirs();
242 for ( std::vector<std::string>::const_iterator
dirName = dirNames.begin();
248 if ( subDirectories.find(subDirName) != subDirectories.end() ) {
249 std::string inputDirName_full =
dqmDirectoryName(inputDirectory).append(subDirName);
252 std::string outputDirName_full =
dqmDirectoryName(outputDirectory).append(subDirName);
259 int mode = ( inputFileName ==
fileSet->second.inputFileNames_.begin() ) ? 1 : 3;
std::vector< std::string > getSubdirs(void) const
std::map< std::string, sstring > subDirectoryMap_
std::string dqmDirectoryName(const std::string &dqmRootDirectory, const std::string &dqmSubDirectory)
const std::string dqmRootDirectory_inTFile
std::string dqmSubDirectoryName_merged(const std::string &directory, const std::string &subdirectory)
tuple obj
Example code starts here #.
void dqmCopyRecursively(DQMStore &dqmStore, const std::string &inputDirectory, const std::string &outputDirectory, double scaleFactor, int mode, bool rmInputDirectory)
bool open(const std::string &filename, bool overwrite=false, const std::string &path="", const std::string &prepend="", OpenRunDirs stripdirs=KeepRunDirs, bool fileMustExist=true)
const std::string dqmRootDirectory
void showDirStructure(void) const
void mapSubDirectoryStructure(TDirectory *directory, std::string directoryName, std::set< std::string > &subDirectories)
std::map< std::string, cfgEntryFileSet > fileSets_
std::set< std::string > sstring
void setCurrentFolder(const std::string &fullpath)