CMS 3D CMS Logo

DQMStore.cc File Reference

#include "DQMServices/Core/interface/DQMStore.h"
#include "DQMServices/Core/interface/QReport.h"
#include "DQMServices/Core/interface/QTest.h"
#include "FWCore/Utilities/interface/GetReleaseVersion.h"
#include "FWCore/ParameterSet/interface/ParameterSet.h"
#include "FWCore/ServiceRegistry/interface/Service.h"
#include "FWCore/MessageLogger/interface/JobReport.h"
#include "classlib/utils/RegexpMatch.h"
#include "classlib/utils/Regexp.h"
#include "classlib/utils/StringOps.h"
#include "TFile.h"
#include "TROOT.h"
#include "TKey.h"
#include "TClass.h"
#include <iterator>

Go to the source code of this file.

Functions

static void cleanTrailingSlashes (const std::string &path, std::string &clean, const std::string *&cleaned)
template<class T>
void initQCriterion (std::map< std::string, QCriterion *(*)(const std::string &)> &m)
static bool isSubdirectory (const std::string &ofdir, const std::string &path)
 Check whether path is a subdirectory of ofdir.
template<class T>
QCriterionmakeQCriterion (const std::string &qtname)
static const lat::Regexp s_rxmeval ("^<(.*)>(i|f|s|qr)=(.*)</\\1>$")

Variables

static std::string ROOT_PATHNAME = "."
 pathname for root folder
static std::string s_collateDirName = "Collate"
static std::string s_dqmPatchVersion = "0"
static DQMStores_instance = 0
static std::string s_monitorDirName = "DQMData"
 name of global monitoring folder (containing all sources subdirectories)
static std::string s_referenceDirName = "Reference"
static const lat::Regexp s_rxmeqr ("^st\\.(\\d+)\\.(.*)$")
static std::string s_safe = "/ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-+=_()# "


Function Documentation

static void cleanTrailingSlashes ( const std::string &  path,
std::string &  clean,
const std::string *&  cleaned 
) [static]

Definition at line 80 of file DQMStore.cc.

References len.

Referenced by DQMStore::cd(), DQMStore::getAllContents(), DQMStore::getContents(), DQMStore::getStatus(), DQMStore::rmdir(), DQMStore::setCurrentFolder(), DQMStore::tagAllContents(), and DQMStore::useQTest().

00081 {
00082   clean.clear();
00083   cleaned = &path;
00084 
00085   size_t len = path.size();
00086   for ( ; len > 0 && path[len-1] == '/'; --len)
00087     ;
00088 
00089   if (len != path.size())
00090   {
00091     clean = path.substr(0, len);
00092     cleaned = &clean;
00093   }
00094 }

template<class T>
void initQCriterion ( std::map< std::string, QCriterion *(*)(const std::string &)> &  m  )  [inline]

Definition at line 103 of file DQMStore.cc.

References m.

00104 { m[T::getAlgoName()] = &makeQCriterion<T>; }

static bool isSubdirectory ( const std::string &  ofdir,
const std::string &  path 
) [static]

Check whether path is a subdirectory of ofdir.

Returns true also if ofdir == path.

Definition at line 70 of file DQMStore.cc.

Referenced by DQMStore::extract(), DQMStore::getAllContents(), DQMStore::getAllTags(), DQMStore::getContents(), DQMStore::getMEs(), DQMStore::getStatus(), DQMStore::getSubdirs(), DQMStore::isCollateME(), DQMStore::isReferenceME(), DQMStore::readDirectory(), DQMStore::removeContents(), DQMStore::rmdir(), DQMStore::save(), and DQMStore::tagAllContents().

00071 {
00072   return (ofdir.empty()
00073           || (path.size() >= ofdir.size()
00074               && path.compare(0, ofdir.size(), ofdir) == 0
00075               && (path.size() == ofdir.size()
00076                   || path[ofdir.size()] == '/')));
00077 }

template<class T>
QCriterion* makeQCriterion ( const std::string &  qtname  )  [inline]

Definition at line 98 of file DQMStore.cc.

00099 { return new T(qtname); }

static const lat::Regexp s_rxmeval (  )  [static]


Variable Documentation

std::string ROOT_PATHNAME = "." [static]

pathname for root folder

Definition at line 53 of file DQMStore.cc.

std::string s_collateDirName = "Collate" [static]

Definition at line 58 of file DQMStore.cc.

Referenced by DQMStore::isCollateME(), and DQMStore::readDirectory().

std::string s_dqmPatchVersion = "0" [static]

Definition at line 59 of file DQMStore.cc.

Referenced by DQMStore::getDQMPatchVersion().

DQMStore* s_instance = 0 [static]

Definition at line 61 of file DQMStore.cc.

Referenced by edmplugin::PluginCapabilities::get(), edmplugin::PluginFactoryManager::get(), and edm::eventsetup::EventSetupRecordProviderFactoryManager::instance().

std::string s_monitorDirName = "DQMData" [static]

name of global monitoring folder (containing all sources subdirectories)

Definition at line 56 of file DQMStore.cc.

Referenced by DQMStore::readDirectory(), and DQMStore::save().

std::string s_referenceDirName = "Reference" [static]

Definition at line 57 of file DQMStore.cc.

Referenced by DQMStore::DQMStore(), DQMStore::extract(), DQMStore::getReferenceME(), DQMStore::initialise(), DQMStore::isReferenceME(), DQMStore::makeReferenceME(), DQMStore::readDirectory(), DQMStore::runQTests(), and DQMStore::save().

const lat::Regexp s_rxmeqr("^st\\.(\\d+)\\.(.*)$") [static]

std::string s_safe = "/ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-+=_()# " [static]

Definition at line 60 of file DQMStore.cc.

Referenced by DQMStore::findObject(), and DQMStore::useQTest().


Generated on Tue Jun 9 17:52:46 2009 for CMSSW by  doxygen 1.5.4