CMS 3D CMS Logo

Public Member Functions | Static Public Member Functions | Private Attributes | Friends

cscdqm::HistoDef Class Reference

Abstract Base Histogram Definition. More...

#include <CSCDQM_HistoDef.h>

Inheritance diagram for cscdqm::HistoDef:
cscdqm::CSCHistoDef cscdqm::DDUHistoDef cscdqm::EMUHistoDef cscdqm::FEDHistoDef cscdqm::ParHistoDef

List of all members.

Public Member Functions

virtual const HwId getAddId () const
 Get CSC Additional ID (used to store Layer, CLCT, ALCT and other identifiers.
virtual const HwId getCrateId () const
 Get CSC Crate ID.
virtual const HwId getDDUId () const
 Get DDU ID.
virtual const HwId getDMBId () const
 Get CSC DMB ID.
virtual const HwId getFEDId () const
 Get FED ID.
const std::string getFullPath () const
 Get full path of the histogram. It is being constructed by appending path and histogam name.
const HistoNamegetHistoName () const
 Get raw histogram name.
const HistoId getId () const
 Get Histogram ID.
virtual const std::string getName () const
 Get processed histogram name. It can include additional parameter in formated name. This Name is being constructed from raw name and additional parameter.
virtual const std::string getPath () const
 Get path part of the histogram (used only for DDUs and CSCs)
 HistoDef (const HistoId p_id)
 Base constructor.
const bool operator< (const HistoDef &t) const
 Less (<) operator.
const HistoDefoperator= (const HistoDef &t)
 Assignment (=) operator.
const bool operator== (const HistoDef &t) const
 Comparison (==) operator.
virtual const std::string processTitle (const std::string &p_title) const
 Process Title by Adding appropriate ID.
virtual ~HistoDef ()
 Base virtual destructor.

Static Public Member Functions

static const bool getHistoIdByName (const std::string &p_name, HistoId &p_id)
 Get Histogram ID by name.
static const std::string getHistoKeyById (const HistoId &p_id)
 Get Histogram key name by id.
static const std::string processName (const HistoName &p_name, const HwId p_id)
 Process name by applying ID to d pattern (pattern is stored in REGEXP_ONDEMAND)

Private Attributes

HistoId id

Friends

std::ostream & operator<< (std::ostream &out, const HistoDef &t)
 Printing (<<) operator that prints hisotgram full path.

Detailed Description

Abstract Base Histogram Definition.

Definition at line 62 of file CSCDQM_HistoDef.h.


Constructor & Destructor Documentation

cscdqm::HistoDef::HistoDef ( const HistoId  p_id) [inline]

Base constructor.

Parameters:
p_hnameRaw histogram name by HistoName
Returns:

Definition at line 76 of file CSCDQM_HistoDef.h.

: id(p_id) { }
virtual cscdqm::HistoDef::~HistoDef ( ) [inline, virtual]

Base virtual destructor.

Definition at line 81 of file CSCDQM_HistoDef.h.

{ }

Member Function Documentation

virtual const HwId cscdqm::HistoDef::getAddId ( ) const [inline, virtual]

Get CSC Additional ID (used to store Layer, CLCT, ALCT and other identifiers.

Returns:
CSC Additional ID

Reimplemented in cscdqm::CSCHistoDef.

Definition at line 188 of file CSCDQM_HistoDef.h.

Referenced by cscdqm::Cache::get(), cscdqm::Dispatcher::getHisto(), operator<(), operator==(), and cscdqm::Cache::put().

{ return  0; }
virtual const HwId cscdqm::HistoDef::getCrateId ( ) const [inline, virtual]

Get CSC Crate ID.

Returns:
CSC Crate ID

Reimplemented in cscdqm::CSCHistoDef.

Definition at line 175 of file CSCDQM_HistoDef.h.

Referenced by cscdqm::Cache::get(), cscdqm::Dispatcher::getHisto(), operator<(), operator==(), and cscdqm::Cache::put().

{ return  0; }
virtual const HwId cscdqm::HistoDef::getDDUId ( ) const [inline, virtual]

Get DDU ID.

Returns:
DDU ID

Reimplemented in cscdqm::DDUHistoDef.

Definition at line 200 of file CSCDQM_HistoDef.h.

Referenced by cscdqm::Cache::get(), cscdqm::Dispatcher::getHisto(), operator<(), operator==(), and cscdqm::Cache::put().

{ return  0; }
virtual const HwId cscdqm::HistoDef::getDMBId ( ) const [inline, virtual]

Get CSC DMB ID.

Returns:
CSC DMB ID

Reimplemented in cscdqm::CSCHistoDef.

Definition at line 181 of file CSCDQM_HistoDef.h.

Referenced by cscdqm::Cache::get(), cscdqm::Dispatcher::getHisto(), operator<(), operator==(), and cscdqm::Cache::put().

{ return  0; }
virtual const HwId cscdqm::HistoDef::getFEDId ( ) const [inline, virtual]

Get FED ID.

Returns:
FED ID

Reimplemented in cscdqm::FEDHistoDef.

Definition at line 194 of file CSCDQM_HistoDef.h.

Referenced by cscdqm::Cache::get(), cscdqm::Dispatcher::getHisto(), operator<(), operator==(), and cscdqm::Cache::put().

{ return  0; }
const std::string cscdqm::HistoDef::getFullPath ( ) const [inline]

Get full path of the histogram. It is being constructed by appending path and histogam name.

Returns:
full path name of the histogram (processed)

Definition at line 108 of file CSCDQM_HistoDef.h.

References getName(), getPath(), and scaleCards::path.

Referenced by cscdqm::Collection::book().

                                          {
        std::string path(getPath());
        if (path.size() > 0) path.append("/");
        path.append(getName());
        return path;
      }
static const bool cscdqm::HistoDef::getHistoIdByName ( const std::string &  p_name,
HistoId p_id 
) [inline, static]

Get Histogram ID by name.

Parameters:
p_nameHistogram name
p_idId to be filled in (return value)
Returns:
true if ID was found, false - otherwise

Definition at line 217 of file CSCDQM_HistoDef.h.

References i, h::names, and h::namesSize.

Referenced by cscdqm::Collection::bookCSCHistos(), cscdqm::Collection::bookDDUHistos(), cscdqm::Collection::bookEMUHistos(), cscdqm::Collection::bookFEDHistos(), and CSCOfflineClient::endRun().

                                                                                 {
        for (HistoId i = 0; i < h::namesSize; i++) {
          if (p_name.compare(h::names[i]) == 0) {
            p_id = i;
            return true;
          }
        }
        return false;
      }
static const std::string cscdqm::HistoDef::getHistoKeyById ( const HistoId p_id) [inline, static]

Get Histogram key name by id.

Parameters:
p_idHistogram id
Returns:
Histogram key name

Definition at line 232 of file CSCDQM_HistoDef.h.

References h::keys.

                                                                  {
        return h::keys[p_id];
      }
const HistoName& cscdqm::HistoDef::getHistoName ( ) const [inline]

Get raw histogram name.

Returns:
Raw histogram name

Reimplemented in cscdqm::ParHistoDef.

Definition at line 93 of file CSCDQM_HistoDef.h.

References id, and h::names.

Referenced by cscdqm::Dispatcher::getHisto(), getName(), cscdqm::CSCHistoDef::getName(), and cscdqm::HistoBookRequest::HistoBookRequest().

{ return h::names[id]; }
const HistoId cscdqm::HistoDef::getId ( ) const [inline]

Get Histogram ID.

Returns:
Histogram ID

Definition at line 87 of file CSCDQM_HistoDef.h.

References id.

Referenced by cscdqm::Cache::get(), cscdqm::Dispatcher::getHisto(), operator<(), operator=(), operator==(), and cscdqm::Cache::put().

{ return id; }
virtual const std::string cscdqm::HistoDef::getName ( ) const [inline, virtual]

Get processed histogram name. It can include additional parameter in formated name. This Name is being constructed from raw name and additional parameter.

Returns:
processed full name of the histogram

Reimplemented in cscdqm::CSCHistoDef.

Definition at line 101 of file CSCDQM_HistoDef.h.

References getHistoName().

Referenced by cscdqm::Collection::book(), and getFullPath().

{ return getHistoName(); }
virtual const std::string cscdqm::HistoDef::getPath ( ) const [inline, virtual]

Get path part of the histogram (used only for DDUs and CSCs)

Returns:
path part of the histogram

Reimplemented in cscdqm::FEDHistoDef, cscdqm::DDUHistoDef, and cscdqm::CSCHistoDef.

Definition at line 169 of file CSCDQM_HistoDef.h.

Referenced by getFullPath(), and cscdqm::LookupKeyType::LookupKeyType().

{ return ""; }
const bool cscdqm::HistoDef::operator< ( const HistoDef t) const [inline]

Less (<) operator.

Parameters:
tHistogram to be compared to
Returns:
true if t is "more" than this

Definition at line 145 of file CSCDQM_HistoDef.h.

References getAddId(), getCrateId(), getDDUId(), getDMBId(), getFEDId(), and getId().

                                                     {
        if (getId()      < t.getId())       return true; 
        if (getFEDId()   < t.getFEDId())    return true;
        if (getDDUId()   < t.getDDUId())    return true;
        if (getCrateId() < t.getCrateId())  return true;
        if (getDMBId()   < t.getDMBId())    return true;
        if (getAddId()   < t.getAddId())    return true;
        return false;
      }
const HistoDef& cscdqm::HistoDef::operator= ( const HistoDef t) [inline]

Assignment (=) operator.

Parameters:
tHistogram to be taken data from
Returns:
resulting histogram (this)

Definition at line 135 of file CSCDQM_HistoDef.h.

References getId().

                                                    {
        id  = t.getId();
        return *this;
      }
const bool cscdqm::HistoDef::operator== ( const HistoDef t) const [inline]

Comparison (==) operator.

Parameters:
tHistogram to be compared to
Returns:
true if HistoDefs match, false - otherwise

Definition at line 120 of file CSCDQM_HistoDef.h.

References getAddId(), getCrateId(), getDDUId(), getDMBId(), getFEDId(), and getId().

                                                      {
        if (getId()      != t.getId())      return false;
        if (getFEDId()   != t.getFEDId())   return false;
        if (getDDUId()   != t.getDDUId())   return false;
        if (getCrateId() != t.getCrateId()) return false;
        if (getDMBId()   != t.getDMBId())   return false;
        if (getAddId()   != t.getAddId())   return false;
        return true;
      }
static const std::string cscdqm::HistoDef::processName ( const HistoName p_name,
const HwId  p_id 
) [inline, static]

Process name by applying ID to d pattern (pattern is stored in REGEXP_ONDEMAND)

Parameters:
p_nameString value to process
p_idID to include
Returns:
processed value

Definition at line 242 of file CSCDQM_HistoDef.h.

References cscdqm::Utility::regexMatch(), and cscdqm::REGEXP_ONDEMAND().

Referenced by cscdqm::CSCHistoDef::getName(), cscdqm::FEDHistoDef::processTitle(), cscdqm::CSCHistoDef::processTitle(), and cscdqm::DDUHistoDef::processTitle().

                                                                                   {
        if (Utility::regexMatch(REGEXP_ONDEMAND, p_name)) {
          return Form(p_name.c_str(), p_id);
        }
        return p_name;
      }
virtual const std::string cscdqm::HistoDef::processTitle ( const std::string &  p_title) const [inline, virtual]

Process Title by Adding appropriate ID.

Parameters:
p_titleTitle to process
Returns:
processed title

Reimplemented in cscdqm::FEDHistoDef, cscdqm::DDUHistoDef, and cscdqm::CSCHistoDef.

Definition at line 207 of file CSCDQM_HistoDef.h.

Referenced by cscdqm::Collection::book().

                                                                           {
        return p_title;
      }

Friends And Related Function Documentation

std::ostream& operator<< ( std::ostream &  out,
const HistoDef t 
) [friend]

Printing (<<) operator that prints hisotgram full path.

Parameters:
outoutput stream
tHistogram type to be printed
Returns:
output stream

Definition at line 161 of file CSCDQM_HistoDef.h.

                                                                        {
        return out << t.getFullPath();
      }

Member Data Documentation

Histogram Id

Definition at line 67 of file CSCDQM_HistoDef.h.

Referenced by getHistoName(), and getId().