CMS 3D CMS Logo

Public Types | Public Member Functions | Private Attributes

cond::PayLoadInspector< DataT > Class Template Reference

#include <PayLoadInspector.h>

List of all members.

Public Types

typedef DataT Class
typedef ValueExtractor< DataT > Extractor

Public Member Functions

std::string dump () const
template<>
std::string dump () const
template<>
std::string dump () const
template<>
std::string dump () const
template<>
std::string dump () const
template<>
std::string dump () const
template<>
std::string dump () const
template<>
std::string dump () const
template<>
std::string dump () const
template<>
std::string dump () const
template<>
std::string dump () const
template<>
std::string dump () const
template<>
std::string dump () const
template<>
std::string dump () const
template<>
std::string dump () const
template<>
std::string dump () const
template<>
std::string dump () const
template<>
std::string dump () const
template<>
std::string dump () const
template<>
std::string dump () const
template<>
std::string dump () const
template<>
std::string dump () const
template<>
std::string dump () const
template<>
std::string dump () const
template<>
std::string dump () const
template<>
std::string dump () const
template<>
std::string dump () const
template<>
std::string dump () const
template<>
std::string dump () const
template<>
std::string dump () const
template<>
std::string dump () const
template<>
std::string dump () const
template<>
std::string dump () const
template<>
std::string dump () const
template<>
std::string dump () const
template<>
std::string dump () const
template<>
std::string dump () const
template<>
std::string dump () const
template<>
std::string dump () const
template<>
std::string dump () const
template<>
std::string dump () const
template<>
std::string dump () const
template<>
std::string dump () const
template<>
std::string dump () const
template<>
std::string dump () const
template<>
std::string dump () const
template<>
string dump () const
template<>
std::string dump () const
template<>
std::string dump () const
template<>
std::string dump () const
template<>
std::string dump () const
std::string dumpFile (std::string const &, std::string const &, std::vector< int > const &, std::vector< float > const &, std::vector< std::string > const &) const
template<>
std::string dumpFile (std::string const &filename, std::string const &opt_string, std::vector< int > const &nts, std::vector< float > const &floats, std::vector< std::string > const &strings) const
std::string dumpXML (std::string filename) const
void extract (Extractor &extractor) const
bool load (cond::IOVElementProxy const &elem)
Class const & object () const
ora::Object const & ora_object () const
 PayLoadInspector ()
 PayLoadInspector (cond::CondDB const &conddb)
template<>
std::string plot (std::string const &filename, std::string const &, std::vector< int > const &, std::vector< float > const &) const
template<>
std::string plot (std::string const &filename, std::string const &, std::vector< int > const &, std::vector< float > const &) const
template<>
std::string plot (std::string const &filename, std::string const &, std::vector< int > const &, std::vector< float > const &) const
template<>
std::string plot (std::string const &filename, std::string const &, std::vector< int > const &, std::vector< float > const &) const
template<>
std::string plot (std::string const &filename, std::string const &, std::vector< int > const &, std::vector< float > const &) const
template<>
std::string plot (std::string const &filename, std::string const &, std::vector< int > const &, std::vector< float > const &) const
template<>
std::string plot (std::string const &filename, std::string const &, std::vector< int > const &, std::vector< float > const &) const
template<>
std::string plot (std::string const &filename, std::string const &, std::vector< int > const &, std::vector< float > const &) const
template<>
std::string plot (std::string const &filename, std::string const &, std::vector< int > const &, std::vector< float > const &) const
template<>
std::string plot (std::string const &filename, std::string const &, std::vector< int > const &, std::vector< float > const &) const
template<>
std::string plot (std::string const &filename, std::string const &, std::vector< int > const &, std::vector< float > const &) const
template<>
std::string plot (std::string const &filename, std::string const &, std::vector< int > const &, std::vector< float > const &) const
template<>
std::string plot (std::string const &filename, std::string const &, std::vector< int > const &, std::vector< float > const &) const
template<>
std::string plot (std::string const &filename, std::string const &, std::vector< int > const &, std::vector< float > const &) const
template<>
std::string plot (std::string const &filename, std::string const &, std::vector< int > const &, std::vector< float > const &) const
template<>
std::string plot (std::string const &filename, std::string const &, std::vector< int > const &, std::vector< float > const &) const
template<>
std::string plot (std::string const &filename, std::string const &, std::vector< int > const &, std::vector< float > const &) const
template<>
std::string plot (std::string const &filename, std::string const &, std::vector< int > const &, std::vector< float > const &) const
template<>
std::string plot (std::string const &filename, std::string const &, std::vector< int > const &, std::vector< float > const &) const
template<>
std::string plot (std::string const &filename, std::string const &str, std::vector< int > const &vInt, std::vector< float > const &vFlt) const
template<>
std::string plot (std::string const &filename, std::string const &, std::vector< int > const &, std::vector< float > const &) const
template<>
std::string plot (std::string const &filename, std::string const &, std::vector< int > const &, std::vector< float > const &) const
template<>
std::string plot (std::string const &filename, std::string const &str, std::vector< int > const &vInt, std::vector< float > const &vFlt) const
template<>
std::string plot (std::string const &filename, std::string const &, std::vector< int > const &, std::vector< float > const &) const
template<>
std::string plot (std::string const &filename, std::string const &, std::vector< int > const &, std::vector< float > const &) const
template<>
std::string plot (std::string const &filename, std::string const &, std::vector< int > const &, std::vector< float > const &) const
template<>
std::string plot (std::string const &filename, std::string const &, std::vector< int > const &, std::vector< float > const &) const
template<>
std::string plot (std::string const &filename, std::string const &str, std::vector< int > const &, std::vector< float > const &) const
template<>
std::string plot (std::string const &filename, std::string const &, std::vector< int > const &, std::vector< float > const &) const
template<>
std::string plot (std::string const &filename, std::string const &, std::vector< int > const &, std::vector< float > const &) const
template<>
std::string plot (std::string const &filename, std::string const &, std::vector< int > const &, std::vector< float > const &) const
template<>
std::string plot (std::string const &filename, std::string const &, std::vector< int > const &, std::vector< float > const &) const
template<>
std::string plot (std::string const &filename, std::string const &, std::vector< int > const &, std::vector< float > const &) const
template<>
std::string plot (std::string const &filename, std::string const &, std::vector< int > const &, std::vector< float > const &) const
template<>
std::string plot (std::string const &filename, std::string const &, std::vector< int > const &, std::vector< float > const &) const
template<>
std::string plot (std::string const &filename, std::string const &, std::vector< int > const &, std::vector< float > const &) const
template<>
std::string plot (std::string const &filename, std::string const &, std::vector< int > const &, std::vector< float > const &) const
template<>
std::string plot (std::string const &filename, std::string const &, std::vector< int > const &, std::vector< float > const &) const
template<>
std::string plot (std::string const &filename, std::string const &, std::vector< int > const &, std::vector< float > const &) const
template<>
std::string plot (std::string const &filename, std::string const &, std::vector< int > const &, std::vector< float > const &) const
template<>
std::string plot (std::string const &filename, std::string const &, std::vector< int > const &, std::vector< float > const &) const
template<>
std::string plot (std::string const &filename, std::string const &, std::vector< int > const &, std::vector< float > const &) const
template<>
std::string plot (std::string const &filename, std::string const &, std::vector< int > const &, std::vector< float > const &) const
template<>
std::string plot (std::string const &filename, std::string const &, std::vector< int > const &, std::vector< float > const &) const
template<>
std::string plot (std::string const &filename, std::string const &, std::vector< int > const &, std::vector< float > const &) const
template<>
std::string plot (std::string const &filename, std::string const &, std::vector< int > const &, std::vector< float > const &) const
template<>
std::string plot (std::string const &filename, std::string const &, std::vector< int > const &, std::vector< float > const &) const
template<>
std::string plot (std::string const &filename, std::string const &, std::vector< int > const &, std::vector< float > const &) const
template<>
std::string plot (std::string const &filename, std::string const &, std::vector< int > const &, std::vector< float > const &) const
template<>
std::string plot (std::string const &filename, std::string const &, std::vector< int > const &, std::vector< float > const &) const
template<>
std::string plot (std::string const &filename, std::string const &, std::vector< int > const &, std::vector< float > const &) const
template<>
std::string plot (std::string const &filename, std::string const &, std::vector< int > const &, std::vector< float > const &) const
template<>
std::string plot (std::string const &filename, std::string const &, std::vector< int > const &, std::vector< float > const &) const
template<>
std::string plot (std::string const &filename, std::string const &, std::vector< int > const &, std::vector< float > const &) const
template<>
std::string plot (std::string const &filename, std::string const &, std::vector< int > const &, std::vector< float > const &) const
template<>
std::string plot (std::string const &filename, std::string const &, std::vector< int > const &, std::vector< float > const &) const
template<>
std::string plot (std::string const &filename, std::string const &, std::vector< int > const &, std::vector< float > const &) const
template<>
std::string plot (std::string const &filename, std::string const &, std::vector< int > const &, std::vector< float > const &) const
template<>
std::string plot (std::string const &filename, std::string const &, std::vector< int > const &, std::vector< float > const &) const
template<>
std::string plot (std::string const &filename, std::string const &, std::vector< int > const &, std::vector< float > const &) const
template<>
std::string plot (std::string const &filename, std::string const &, std::vector< int > const &, std::vector< float > const &) const
template<>
std::string plot (std::string const &filename, std::string const &, std::vector< int > const &, std::vector< float > const &) const
template<>
std::string plot (std::string const &filename, std::string const &, std::vector< int > const &, std::vector< float > const &) const
template<>
std::string plot (std::string const &filename, std::string const &, std::vector< int > const &, std::vector< float > const &) const
template<>
std::string plot (std::string const &filename, std::string const &, std::vector< int > const &, std::vector< float > const &) const
template<>
std::string plot (std::string const &filename, std::string const &, std::vector< int > const &, std::vector< float > const &) const
template<>
std::string plot (std::string const &filename, std::string const &, std::vector< int > const &, std::vector< float > const &) const
std::string plot (std::string const &, std::string const &, std::vector< int > const &, std::vector< float > const &) const
template<>
string plot (string const &filename, string const &, vector< int > const &, vector< float > const &) const
template<>
std::string plot (std::string const &filename, std::string const &, std::vector< int > const &, std::vector< float > const &) const
template<>
std::string plot (std::string const &filename, std::string const &, std::vector< int > const &, std::vector< float > const &) const
template<>
std::string plot (std::string const &filename, std::string const &, std::vector< int > const &, std::vector< float > const &) const
template<>
std::string plot (std::string const &filename, std::string const &, std::vector< int > const &, std::vector< float > const &) const
template<>
std::string plot (std::string const &filename, std::string const &, std::vector< int > const &, std::vector< float > const &) const
template<>
std::string summary () const
template<>
std::string summary () const
template<>
std::string summary () const
template<>
std::string summary () const
template<>
std::string summary () const
template<>
std::string summary () const
template<>
std::string summary () const
template<>
std::string summary () const
template<>
std::string summary () const
template<>
std::string summary () const
template<>
std::string summary () const
template<>
std::string summary () const
template<>
std::string summary () const
template<>
std::string summary () const
template<>
std::string summary () const
template<>
std::string summary () const
template<>
std::string summary () const
template<>
std::string summary () const
template<>
std::string summary () const
template<>
std::string summary () const
template<>
std::string summary () const
template<>
std::string summary () const
template<>
std::string summary () const
template<>
std::string summary () const
template<>
std::string summary () const
template<>
std::string summary () const
template<>
std::string summary () const
template<>
std::string summary () const
template<>
std::string summary () const
template<>
std::string summary () const
template<>
std::string summary () const
template<>
std::string summary () const
template<>
std::string summary () const
template<>
std::string summary () const
template<>
std::string summary () const
template<>
std::string summary () const
template<>
std::string summary () const
template<>
std::string summary () const
template<>
std::string summary () const
template<>
std::string summary () const
template<>
std::string summary () const
template<>
std::string summary () const
template<>
std::string summary () const
template<>
std::string summary () const
template<>
std::string summary () const
template<>
std::string summary () const
template<>
std::string summary () const
template<>
std::string summary () const
template<>
std::string summary () const
template<>
std::string summary () const
template<>
std::string summary () const
template<>
std::string summary () const
template<>
std::string summary () const
template<>
std::string summary () const
template<>
std::string summary () const
template<>
std::string summary () const
template<>
std::string summary () const
template<>
std::string summary () const
template<>
string summary () const
template<>
std::string summary () const
template<>
std::string summary () const
template<>
std::string summary () const
template<>
std::string summary () const
template<>
std::string summary () const
std::string summary () const
template<>
std::string summary () const
template<>
std::string summary () const
template<>
std::string summary () const
template<>
std::string summary () const
template<>
std::string summary () const
template<>
std::string summary () const
template<>
std::string summary () const
template<>
std::string summary () const
template<>
std::string summary () const
template<>
std::string summary () const
template<>
std::string summary () const
template<>
std::string summary () const
template<>
std::string summary () const
template<>
std::string summary () const
template<>
std::string summary () const
std::string summary_adv (std::string const &, std::vector< int > const &, std::vector< float > const &, std::vector< std::string > const &) const
template<>
std::string summary_adv (std::string const &opt_str, std::vector< int > const &vInts, std::vector< float > const &vFloats, std::vector< std::string > const &vStrings) const
template<>
std::string trend_plot (std::string const &filename, std::string const &opt_string, std::vector< int > const &nts, std::vector< float > const &floats, std::vector< std::string > const &strings) const
template<>
std::string trend_plot (std::string const &filename, std::string const &opt_string, std::vector< int > const &nts, std::vector< float > const &floats, std::vector< std::string > const &strings) const
template<>
std::string trend_plot (std::string const &filename, std::string const &opt_string, std::vector< int > const &ints, std::vector< float > const &floats, std::vector< std::string > const &strings) const
template<>
std::string trend_plot (std::string const &filename, std::string const &opt_string, std::vector< int > const &nts, std::vector< float > const &floats, std::vector< std::string > const &strings) const
std::string trend_plot (std::string const &, std::string const &, std::vector< int > const &, std::vector< float > const &, std::vector< std::string > const &) const
template<>
std::string trend_plot (std::string const &filename, std::string const &opt_string, std::vector< int > const &nts, std::vector< float > const &floats, std::vector< std::string > const &strings) const
 ~PayLoadInspector ()

Private Attributes

ora::Object m_object
cond::DbSession m_session
cond::Time_t m_since
std::string m_token

Detailed Description

template<typename DataT>
class cond::PayLoadInspector< DataT >

Definition at line 66 of file PayLoadInspector.h.


Member Typedef Documentation

template<typename DataT >
typedef DataT cond::PayLoadInspector< DataT >::Class

Definition at line 68 of file PayLoadInspector.h.

template<typename DataT >
typedef ValueExtractor<DataT> cond::PayLoadInspector< DataT >::Extractor

Definition at line 69 of file PayLoadInspector.h.


Constructor & Destructor Documentation

template<typename DataT >
cond::PayLoadInspector< DataT >::PayLoadInspector ( ) [inline]

Definition at line 71 of file PayLoadInspector.h.

: m_since(0) {}
template<typename DataT >
cond::PayLoadInspector< DataT >::~PayLoadInspector ( ) [inline]
template<typename DataT >
cond::PayLoadInspector< DataT >::PayLoadInspector ( cond::CondDB const &  conddb) [inline]

Definition at line 77 of file PayLoadInspector.h.

                                               : m_session(conddb.session()), m_since(cond::invalidTime), m_token("") {
      ROOT::Cintex::Cintex::Enable();
    } 

Member Function Documentation

template<typename DataT >
std::string cond::PayLoadInspector< DataT >::dump ( void  ) const [inline]

Definition at line 93 of file PayLoadInspector.h.

References cond::PayLoadInspector< DataT >::dumpXML(), cond::PayLoadInspector< DataT >::m_since, cond::PayLoadInspector< DataT >::m_token, and cond::parseToken().

                           {
      std::ostringstream ss; 
      //token parser
      std::pair<std::string,int> oidData = parseToken( m_token );
      ss << m_since << "_"<< oidData.first << "_" << oidData.second;
      //std::string filename(ss.str()+".xml");
      return this->dumpXML(ss.str()+".xml");
    }
template<>
std::string cond::PayLoadInspector< DTCCBConfig >::dump ( void  ) const

Definition at line 34 of file DTCCBConfigPyWrapper.cc.

                                            {
    std::stringstream ss;
    return ss.str();
    
  }
template<>
std::string cond::PayLoadInspector< DTPerformance >::dump ( void  ) const

Definition at line 34 of file DTPerformancePyWrapper.cc.

                                              {
    std::stringstream ss;
    return ss.str();
    
  }
template<>
std::string cond::PayLoadInspector< DTRangeT0 >::dump ( void  ) const

Definition at line 34 of file DTRangeT0PyWrapper.cc.

                                          {
    std::stringstream ss;
    return ss.str();
    
  }
template<>
std::string cond::PayLoadInspector< EcalDCSTowerStatus >::dump ( void  ) const

Definition at line 124 of file EcalDCSTowerStatusPyWrapper.cc.

References EcalCondTools::dumpXML(), and h.

                                                             {
    std::stringstream ss;
    EcalCondHeader h;
    ss << EcalDCSTowerStatusXMLTranslator::dumpXML(h,object());
    return ss.str();
  }
template<>
std::string cond::PayLoadInspector< DTReadOutMapping >::dump ( void  ) const

Definition at line 34 of file DTReadOutMappingPyWrapper.cc.

                                                 {
    std::stringstream ss;
    return ss.str();
    
  }
template<>
std::string cond::PayLoadInspector< EcalFloatCondObjectContainer >::dump ( void  ) const

Definition at line 147 of file EcalFloatCondObjectContainerPyWrapper.cc.

References EcalCondTools::dumpXML().

                                                             {

    std::stringstream ss;
    EcalCondHeader header;
    ss<<EcalFloatCondObjectContainerXMLTranslator::dumpXML(header,object());
    return ss.str();

 //    Printer p;
//     std::for_each(object().barrelItems().begin(),object().barrelItems().end(),boost::bind(&Printer::doB,boost::ref(p),_1));
//     p.ss <<"\n";
//     p.reset();
//     std::for_each(object().endcapItems().begin(),object().endcapItems().end(),boost::bind(&Printer::doE,boost::ref(p),_1));
//     p.ss << std::endl;
//     return p.ss.str();
  }
template<>
std::string cond::PayLoadInspector< EcalFunParams >::dump ( void  ) const

Definition at line 31 of file EcalFunParamsPyWrapper.cc.

References gather_cfg::cout, EcalCondTools::dumpXML(), dbtoconf::object, and findQualityFiles::size.

                                                        {
    std::cout << "EcalFunParamsPyWrapper dump " << std::endl;
    //    std::cout << " token " << object().token() << "\n";
    //    PayLoadInspector::dump();
    std::cout << " Collection size " << object().params().size() << "\n";
    //    for ( EcalFunctionParameters::const_iterator it = object().params().begin(); it != object().params().end(); ++it ) {
    //      std::cout << " " << *it;
    //    }
    //    std::cout << "\n";
    std::stringstream ss;
    EcalCondHeader header;
    if(object().params().size() == 56)
      ss << EcalClusterEnergyCorrectionXMLTranslator::dumpXML(header,object());
    else if(object().params().size() == 20)
      ss << EcalClusterCrackCorrXMLTranslator::dumpXML(header,object());
    else if(object().params().size() == 11 || object().params().size() == 24)
      ss << EcalClusterLocalContCorrXMLTranslator::dumpXML(header,object());
    else if(object().params().size() == 208)
      ss << EcalClusterEnergyCorrectionObjectSpecificXMLTranslator::dumpXML(header,object());
    else
      ss << " EcalFunParamsPyWrapper dump : unknown tag. Please send a mail to jean.fay@cern.ch";
    return ss.str();
  }
template<>
std::string cond::PayLoadInspector< EcalGainRatios >::dump ( void  ) const

Definition at line 45 of file EcalGainRatiosPyWrapper.cc.

References EcalCondTools::dumpXML().

                                               {
    

    std::stringstream ss;    
    EcalCondHeader header;
    ss<<EcalGainRatiosXMLTranslator::dumpXML(header,object());
    return ss.str();

  }
template<>
std::string cond::PayLoadInspector< DTDeadFlag >::dump ( void  ) const

Definition at line 34 of file DTDeadFlagPyWrapper.cc.

                                           {
    std::stringstream ss;
    return ss.str();
    
  }
template<>
std::string cond::PayLoadInspector< DTStatusFlag >::dump ( void  ) const

Definition at line 34 of file DTStatusFlagPyWrapper.cc.

                                             {
    std::stringstream ss;
    return ss.str();
    
  }
template<>
std::string cond::PayLoadInspector< EcalLaserAPDPNRatios >::dump ( void  ) const

Definition at line 51 of file EcalLaserAPDPNRatiosPyWrapper.cc.

References EcalCondTools::dumpXML().

                                                     {

    std::stringstream ss;
    EcalCondHeader header;
    ss<<EcalLaserAPDPNRatiosXMLTranslator::dumpXML(header,object());
    return ss.str();   
 
  }
template<>
std::string cond::PayLoadInspector< L1TriggerScaler >::dump ( void  ) const

Definition at line 34 of file L1TriggerScalerPyWrapper.cc.

                                                {
    std::stringstream ss;
    return ss.str();
    
  }
template<>
std::string cond::PayLoadInspector< EcalLinearCorrections >::dump ( void  ) const

Definition at line 51 of file EcalLinearCorrectionsPyWrapper.cc.

References EcalCondTools::dumpXML().

                                                      {

    std::stringstream ss;
    EcalCondHeader header;
    ss<<EcalLinearCorrectionsXMLTranslator::dumpXML(header,object());
    return ss.str();   
 
  }
template<>
std::string cond::PayLoadInspector< RunInfo >::dump ( void  ) const

Definition at line 42 of file RunInfoPyWrapper.cc.

                                        {
    std::stringstream ss;
    return ss.str();
    
  }
template<>
std::string cond::PayLoadInspector< EcalMappingElectronics >::dump ( void  ) const

Definition at line 34 of file EcalMappingElectronicsPyWrapper.cc.

                                                       {
    std::stringstream ss;
    return ss.str();
    
  }
template<>
std::string cond::PayLoadInspector< RunNumber >::dump ( void  ) const

Definition at line 36 of file RunNumberPyWrapper.cc.

                                          {
    std::stringstream ss;
    return ss.str();
    
  }
template<>
std::string cond::PayLoadInspector< RunSummary >::dump ( void  ) const

Definition at line 34 of file RunSummaryPyWrapper.cc.

                                           {
    std::stringstream ss;
    return ss.str();
    
  }
template<>
std::string cond::PayLoadInspector< DTHVStatus >::dump ( void  ) const

Definition at line 34 of file DTHVStatusPyWrapper.cc.

                                           {
    std::stringstream ss;
    return ss.str();
    
  }
template<>
std::string cond::PayLoadInspector< DTT0 >::dump ( void  ) const

Definition at line 34 of file DTT0PyWrapper.cc.

                                     {
    std::stringstream ss;
    return ss.str();
    
  }
template<>
std::string cond::PayLoadInspector< AlCaRecoTriggerBits >::dump ( void  ) const

Definition at line 34 of file AlCaRecoTriggerBitsPyWrapper.cc.

                                                    {
    std::stringstream ss;
    return ss.str();
    
  }
template<>
std::string cond::PayLoadInspector< EcalPedestals >::dump ( void  ) const

Definition at line 128 of file EcalPedestalsPyWrapper.cc.

References EcalCondTools::dumpXML().

                                                            {
                        std::stringstream ss;
                        EcalCondHeader header;
                        ss<<EcalPedestalsXMLTranslator::dumpXML(header,object());
                        return ss.str();
        }  // dump
template<>
std::string cond::PayLoadInspector< SiStripApvGain >::dump ( void  ) const

Definition at line 34 of file SiStripApvGainPyWrapper.cc.

                                               {
    std::stringstream ss;
    return ss.str();
    
  }
template<>
std::string cond::PayLoadInspector< DTTPGParameters >::dump ( void  ) const

Definition at line 34 of file DTTPGParametersPyWrapper.cc.

                                                {
    std::stringstream ss;
    return ss.str();
    
  }
template<>
std::string cond::PayLoadInspector< EcalTBWeights >::dump ( void  ) const

Definition at line 34 of file EcalTBWeightsPyWrapper.cc.

References EcalCondTools::dumpXML(), and h.

                                              {

    std::stringstream ss; 
    EcalCondHeader h;
    ss<< EcalTBWeightsXMLTranslator::dumpXML(h,object());
    return ss.str();
   
    
  }
template<>
std::string cond::PayLoadInspector< SiStripBadStrip >::dump ( void  ) const

Definition at line 34 of file SiStripBadStripPyWrapper.cc.

References dbtoconf::object.

                                                {
    std::stringstream ss;
    object().printDebug(ss);
    return ss.str();    
  }
template<>
std::string cond::PayLoadInspector< SiStripBaseDelay >::dump ( void  ) const

Definition at line 33 of file SiStripBaseDelayPyWrapper.cc.

                                                 {
    std::stringstream ss;
    return ss.str();
    
  }
template<>
std::string cond::PayLoadInspector< Pedestals >::dump ( void  ) const

Definition at line 91 of file PedestalPyWrapper.cc.

References dbtoconf::object, and AlCaHLTBitMon_ParallelJobs::p.

                                          {
    Printer p;
    std::for_each(object().m_pedestals.begin(),
                  object().m_pedestals.end(),boost::bind(&Printer::doit,boost::ref(p),_1));
    p.ss << std::endl;
    return p.ss.str();
  }
template<>
std::string cond::PayLoadInspector< DTLVStatus >::dump ( void  ) const

Definition at line 34 of file DTLVStatusPyWrapper.cc.

                                           {
    std::stringstream ss;
    return ss.str();
    
  }
template<>
std::string cond::PayLoadInspector< DTTtrig >::dump ( void  ) const

Definition at line 34 of file DTTtrigPyWrapper.cc.

                                        {
    std::stringstream ss;
    return ss.str();
    
  }
template<>
std::string cond::PayLoadInspector< EcalTimeOffsetConstant >::dump ( void  ) const

Definition at line 19 of file EcalTimeOffsetConstantPyWrapper.cc.

References EcalCondTools::dumpXML().

                                                                 {
    std::stringstream ss;
    EcalCondHeader header;
    ss << EcalTimeOffsetXMLTranslator::dumpXML(header,object());
    return ss.str();
  }
template<>
std::string cond::PayLoadInspector< SiStripConfObject >::dump ( void  ) const

Definition at line 34 of file SiStripConfObjectPyWrapper.cc.

                                                  {
    std::stringstream ss;
    return ss.str();
    
  }
template<>
std::string cond::PayLoadInspector< SiStripDetVOff >::dump ( void  ) const

Definition at line 34 of file SiStripDetVOffPyWrapper.cc.

                                               {
    std::stringstream ss;
    return ss.str();
    
  }
template<>
std::string cond::PayLoadInspector< EcalTPGCrystalStatus >::dump ( void  ) const

Definition at line 124 of file EcalTPGCrystalStatusPyWrapper.cc.

References EcalCondTools::dumpXML(), and h.

                                                               {
    std::stringstream ss;
    EcalCondHeader h;
    ss << EcalTPGCrystalStatusXMLTranslator::dumpXML(h,object());
    return ss.str();
  }
template<>
std::string cond::PayLoadInspector< SiStripFedCabling >::dump ( void  ) const

Definition at line 34 of file SiStripFedCablingPyWrapper.cc.

                                                  {
    std::stringstream ss;
    return ss.str();
    
  }
template<>
std::string cond::PayLoadInspector< EcalTPGLinearizationConst >::dump ( void  ) const

Definition at line 43 of file EcalTPGLinearizationConstPyWrapper.cc.

References EcalCondTools::dumpXML().

                                                                    {

    std::stringstream ss;
    EcalCondHeader header;
    ss << EcalTPGLinearizationConstXMLTranslator::dumpXML(header,object());
    return ss.str();   
 
  }
template<>
std::string cond::PayLoadInspector< SiStripLatency >::dump ( void  ) const

Definition at line 34 of file SiStripLatencyPyWrapper.cc.

                                               {
    std::stringstream ss;
    return ss.str();
    
  }
template<>
std::string cond::PayLoadInspector< SiStripNoises >::dump ( void  ) const

Definition at line 34 of file SiStripNoisesPyWrapper.cc.

                                              {
    std::stringstream ss;
    return ss.str();
    
  }
template<>
std::string cond::PayLoadInspector< EcalADCToGeVConstant >::dump ( void  ) const

Definition at line 34 of file EcalADCToGeVConstantPyWrapper.cc.

References EcalCondTools::dumpXML(), and h.

                                                     {
    std::stringstream ss;
    EcalCondHeader h;
    ss<<EcalADCToGeVXMLTranslator::dumpXML(h,object());
    return ss.str();
    
  }
template<>
std::string cond::PayLoadInspector< SiStripPedestals >::dump ( void  ) const

Definition at line 34 of file SiStripPedestalsPyWrapper.cc.

                                                 {
    std::stringstream ss;
    return ss.str();
    
  }
template<>
std::string cond::PayLoadInspector< SiStripRunSummary >::dump ( void  ) const

Definition at line 34 of file SiStripRunSummaryPyWrapper.cc.

                                                  {
    std::stringstream ss;
    return ss.str();
    
  }
template<>
std::string cond::PayLoadInspector< SiStripSummary >::dump ( void  ) const

Definition at line 71 of file SiStripSummaryPyWrapper.cc.

References i, and dbtoconf::object.

                                               {
    std::stringstream ss;
    std::vector<std::string>  listWhat= object().getUserDBContent();
    for(size_t i=0;i<listWhat.size();++i)
      ss << listWhat[i] << "###";
    return ss.str();
    
  }
template<>
std::string cond::PayLoadInspector< EcalTPGStripStatus >::dump ( void  ) const

Definition at line 37 of file EcalTPGStripStatusPyWrapper.cc.

References EcalCondTools::dumpXML(), and h.

                                                             {
    std::stringstream ss;
    EcalCondHeader h;
    ss << EcalTPGStripStatusXMLTranslator::dumpXML(h,object());
    return ss.str();
  }
template<>
void DAClusterizerInZ::dump ( void  ) const

Definition at line 34 of file SiStripThresholdPyWrapper.cc.

                                                 {
    std::stringstream ss;
    return ss.str();
    
  }
template<>
std::string cond::PayLoadInspector< DTMtime >::dump ( void  ) const

Definition at line 34 of file DTMtimePyWrapper.cc.

                                        {
    std::stringstream ss;
    return ss.str();
    
  }
template<>
string cond::PayLoadInspector< Alignments >::dump ( void  ) const

Definition at line 40 of file EcalAlignmentPyWrapper.cc.

References EcalCondTools::dumpXML().

                                                  {
    
    stringstream ss;
    EcalCondHeader header;
    ss << EcalAlignmentXMLTranslator::dumpXML(header,object());
    return ss.str();
  }
template<>
std::string cond::PayLoadInspector< EcalTPGTowerStatus >::dump ( void  ) const

Definition at line 31 of file EcalTPGTowerStatusPyWrapper.cc.

References EcalCondTools::dumpXML(), and h.

                                                             {
    std::stringstream ss;
    EcalCondHeader h;
    ss << EcalTPGTowerStatusXMLTranslator::dumpXML(h,object());
    return ss.str();
  }
template<>
std::string cond::PayLoadInspector< EcalChannelStatus >::dump ( void  ) const

Definition at line 131 of file EcalChannelStatusPyWrapper.cc.

References EcalCondTools::dumpXML(), and h.

                                                                {
                        std::stringstream ss;
                        EcalCondHeader h;
                        ss << EcalChannelStatusXMLTranslator::dumpXML(h,object());
                        return ss.str();

        }
template<>
std::string cond::PayLoadInspector< EcalWeightXtalGroups >::dump ( void  ) const

Definition at line 34 of file EcalWeightXtalGroupsPyWrapper.cc.

References EcalCondTools::dumpXML(), and h.

                                                     {
    std::stringstream ss;
    EcalCondHeader h;
    ss<<EcalWeightGroupXMLTranslator::dumpXML(h,object());
    return ss.str();
    
  }
template<>
std::string cond::PayLoadInspector< EcalDAQTowerStatus >::dump ( void  ) const

Definition at line 123 of file EcalDAQTowerStatusPyWrapper.cc.

References EcalCondTools::dumpXML(), and h.

                                                             {
    std::stringstream ss;
    EcalCondHeader h;
    ss << EcalDAQTowerStatusXMLTranslator::dumpXML(h,object());
    return ss.str();
  }
template<>
std::string cond::PayLoadInspector< ESGain >::dump ( void  ) const

Definition at line 33 of file ESGainPyWrapper.cc.

References EcalCondTools::dumpXML(), and h.

                                       {
    std::stringstream ss;
    EcalCondHeader h;
    ss<<ESGainXMLTranslator::dumpXML(h,object());
    return ss.str();
    
  }
template<>
std::string cond::PayLoadInspector< RPCObGas >::dumpFile ( std::string const &  filename,
std::string const &  opt_string,
std::vector< int > const &  nts,
std::vector< float > const &  floats,
std::vector< std::string > const &  strings 
) const

Definition at line 547 of file RPCObGasPyWrapper.cc.

References lut2db_cfg::filename.

                                                                                              { return filename; }
template<typename DataT >
std::string cond::PayLoadInspector< DataT >::dumpFile ( std::string const &  ,
std::string const &  ,
std::vector< int > const &  ,
std::vector< float > const &  ,
std::vector< std::string > const &   
) const [inline]

Definition at line 126 of file PayLoadInspector.h.

                                                                                                            {return "";}
template<typename DataT >
std::string cond::PayLoadInspector< DataT >::dumpXML ( std::string  filename) const [inline]

FIXME: use TBuffer

Definition at line 81 of file PayLoadInspector.h.

References ora::Object::address(), lut2db_cfg::filename, cond::PayLoadInspector< DataT >::m_object, pos, and ora::Object::typeName().

Referenced by cond::PayLoadInspector< DataT >::dump().

                                                {
      size_t pos = filename.find(".xml");
      if(pos == std::string::npos)
        filename.append(".xml");
      TFile * xml =0;
      xml = TFile::Open(filename.c_str(), "recreate");
      xml->WriteObjectAny(m_object.address(), m_object.typeName().c_str(), filename.c_str());
      xml->Close();
      return filename;
    }
template<typename DataT >
void cond::PayLoadInspector< DataT >::extract ( Extractor extractor) const [inline]

Definition at line 130 of file PayLoadInspector.h.

References cond::BaseValueExtractor< T >::computeW().

{extractor.computeW(object()); }
template<typename DataT >
bool cond::PayLoadInspector< DataT >::load ( cond::IOVElementProxy const &  elem) [inline]
template<typename DataT >
Class const& cond::PayLoadInspector< DataT >::object ( ) const [inline]

Definition at line 132 of file PayLoadInspector.h.

References ora::Object::cast(), and cond::PayLoadInspector< DataT >::m_object.

                                 {
      return *(m_object.cast<Class>());
    }
template<typename DataT >
ora::Object const& cond::PayLoadInspector< DataT >::ora_object ( ) const [inline]

Definition at line 136 of file PayLoadInspector.h.

References cond::PayLoadInspector< DataT >::m_object.

                                         { 
      return m_object; 
    }
template<>
std::string cond::PayLoadInspector< EcalLaserAPDPNRatios >::plot ( std::string const &  filename,
std::string const &  ,
std::vector< int > const &  ,
std::vector< float > const &   
) const

Definition at line 139 of file EcalLaserAPDPNRatiosPyWrapper.cc.

References Reference_intrackfit_cff::barrel, svgfig::canvas(), lut2db_cfg::filename, ecalMGPA::gainId(), i, EEDetId::IX_MAX, EEDetId::IY_MAX, kBarlRings, kBarlWedges, kEndcWedgesX, kEndcWedgesY, kSides, prof2calltree::l, EBDetId::MAX_IETA, EBDetId::MAX_IPHI, getGTfromDQMFile::obj, p1, p2, p3, EEDetId::validDetId(), x, and detailsBasic3DVector::y.

                                                {
                        gStyle->SetPalette(1);
                        //    TCanvas canvas("CC map","CC map",840,600);
                        TCanvas canvas("CC map","CC map",800,1200);

                        float xmi[3] = {0.0 , 0.22, 0.78};
                        float xma[3] = {0.22, 0.78, 1.00};
                        TPad*** pad = new TPad**[3];
                        for (int gId = 0; gId < 3; gId++) {
                                pad[gId] = new TPad*[3];
                                for (int obj = 0; obj < 3; obj++) {
                                        float yma = 1.- (0.32 * gId);
                                        float ymi = yma - 0.30;
                                        pad[gId][obj] = new TPad(Form("p_%i_%i", obj, gId),Form("p_%i_%i", obj, gId),
                                                xmi[obj], ymi, xma[obj], yma);
                                        pad[gId][obj]->Draw();
                                }
                        }

                        const int kGains       = 3;
                        const int gainValues[3] = {1, 2, 3};
                        const int kSides       = 2;
                        const int kBarlRings   = EBDetId::MAX_IETA;
                        const int kBarlWedges  = EBDetId::MAX_IPHI;
                        const int kEndcWedgesX = EEDetId::IX_MAX;
                        const int kEndcWedgesY = EEDetId::IY_MAX;

                        TH2F** barrel = new TH2F*[3];
                        TH2F** endc_p = new TH2F*[3];
                        TH2F** endc_m = new TH2F*[3];

                        for (int gainId = 0; gainId < kGains; gainId++) {
                          barrel[gainId] = new TH2F(Form("EBp%i", gainValues[gainId]),Form("EBp%i", gainValues[gainId]),360,0,360, 170, -85,85);
                          endc_p[gainId] = new TH2F(Form("EE+p%i",gainValues[gainId]),Form("EE+p%i",gainValues[gainId]),100,1,101,100,1,101);
                          endc_m[gainId] = new TH2F(Form("EE-p%i",gainValues[gainId]),Form("EE-p%i",gainValues[gainId]),100,1,101,100,1,101);
                                
                        }

                        for (int sign=0; sign < kSides; sign++) {
                                int thesign = sign==1 ? 1:-1;

                                for (int ieta=0; ieta<kBarlRings; ieta++) {
                                        for (int iphi=0; iphi<kBarlWedges; iphi++) {
                                                EBDetId id((ieta+1)*thesign, iphi+1);
                                                float y = -1 - ieta;
                                                if(sign == 1) y = ieta;
                                                barrel[0]->Fill(iphi, y, object().getLaserMap()[id.rawId()].p1);
                                                barrel[1]->Fill(iphi, y, object().getLaserMap()[id.rawId()].p2);
                                                barrel[2]->Fill(iphi, y, object().getLaserMap()[id.rawId()].p3);

                                        }  // iphi
                                }   // ieta

                                for (int ix=0; ix<kEndcWedgesX; ix++) {
                                        for (int iy=0; iy<kEndcWedgesY; iy++) {
                                                if (! EEDetId::validDetId(ix+1,iy+1,thesign)) continue;
                                                EEDetId id(ix+1,iy+1,thesign);
                                                if (thesign==1) {
                                                        endc_p[0]->Fill(ix+1,iy+1,object().getLaserMap()[id.rawId()].p1);
                                                        endc_p[1]->Fill(ix+1,iy+1,object().getLaserMap()[id.rawId()].p2);
                                                        endc_p[2]->Fill(ix+1,iy+1,object().getLaserMap()[id.rawId()].p3);

                                                }
                                                else{ 
                                                        endc_m[0]->Fill(ix+1,iy+1,object().getLaserMap()[id.rawId()].p1);
                                                        endc_m[1]->Fill(ix+1,iy+1,object().getLaserMap()[id.rawId()].p2);
                                                        endc_m[2]->Fill(ix+1,iy+1,object().getLaserMap()[id.rawId()].p3);
                                                
                                                }
                                        }  // iy
                                }   // ix
                        }    // side

                        //canvas.cd(1);

                        TLine* l = new TLine(0., 0., 0., 0.);
                        l->SetLineWidth(1);
                        int ixSectorsEE[202] = {
                                62, 62, 61, 61, 60, 60, 59, 59, 58, 58, 56, 56, 46, 46, 44, 44, 43, 43, 42, 42, 
                                41, 41, 40, 40, 41, 41, 42, 42, 43, 43, 44, 44, 46, 46, 56, 56, 58, 58, 59, 59, 
                                60, 60, 61, 61, 62, 62,  0,101,101, 98, 98, 96, 96, 93, 93, 88, 88, 86, 86, 81, 
                                81, 76, 76, 66, 66, 61, 61, 41, 41, 36, 36, 26, 26, 21, 21, 16, 16, 14, 14,  9,
                                9,  6,  6,  4,  4,  1,  1,  4,  4,  6,  6,  9,  9, 14, 14, 16, 16, 21, 21, 26, 
                                26, 36, 36, 41, 41, 61, 61, 66, 66, 76, 76, 81, 81, 86, 86, 88, 88, 93, 93, 96, 
                                96, 98, 98,101,101,  0, 62, 66, 66, 71, 71, 81, 81, 91, 91, 93,  0, 62, 66, 66, 
                                91, 91, 98,  0, 58, 61, 61, 66, 66, 71, 71, 76, 76, 81, 81,  0, 51, 51,  0, 44, 
                                41, 41, 36, 36, 31, 31, 26, 26, 21, 21,  0, 40, 36, 36, 11, 11,  4,  0, 40, 36, 
                                36, 31, 31, 21, 21, 11, 11,  9,  0, 46, 46, 41, 41, 36, 36,  0, 56, 56, 61, 61, 66, 66};

                                int iySectorsEE[202] = {
                                        51, 56, 56, 58, 58, 59, 59, 60, 60, 61, 61, 62, 62, 61, 61, 60, 60, 59, 59, 58, 
                                        58, 56, 56, 46, 46, 44, 44, 43, 43, 42, 42, 41, 41, 40, 40, 41, 41, 42, 42, 43, 
                                        43, 44, 44, 46, 46, 51,  0, 51, 61, 61, 66, 66, 76, 76, 81, 81, 86, 86, 88, 88, 
                                        93, 93, 96, 96, 98, 98,101,101, 98, 98, 96, 96, 93, 93, 88, 88, 86, 86, 81, 81, 
                                        76, 76, 66, 66, 61, 61, 41, 41, 36, 36, 26, 26, 21, 21, 16, 16, 14, 14,  9,  9, 
                                        6,  6,  4,  4,  1,  1,  4,  4,  6,  6,  9,  9, 14, 14, 16, 16, 21, 21, 26, 26, 
                                        36, 36, 41, 41, 51,  0, 46, 46, 41, 41, 36, 36, 31, 31, 26, 26,  0, 51, 51, 56, 
                                        56, 61, 61,  0, 61, 61, 66, 66, 71, 71, 76, 76, 86, 86, 88,  0, 62,101,  0, 61, 
                                        61, 66, 66, 71, 71, 76, 76, 86, 86, 88,  0, 51, 51, 56, 56, 61, 61,  0, 46, 46, 
                                        41, 41, 36, 36, 31, 31, 26, 26,  0, 40, 31, 31, 16, 16,  6,  0, 40, 31, 31, 16, 16,  6};

                                        for (int gId = 0; gId < 3; gId++) {
                                                pad[gId][0]->cd();
                                                endc_m[gId]->SetStats(0);
                                                
                                                endc_m[gId]->GetZaxis()->SetRangeUser(0.9,1.1);
                                                endc_m[gId]->Draw("colz");
                                                for ( int i=0; i<201; i=i+1) {
                                                        if ( (ixSectorsEE[i]!=0 || iySectorsEE[i]!=0) && 
                                                                (ixSectorsEE[i+1]!=0 || iySectorsEE[i+1]!=0) ) {
                                                                        l->DrawLine(ixSectorsEE[i], iySectorsEE[i], 
                                                                                ixSectorsEE[i+1], iySectorsEE[i+1]);
                                                                        l->SetLineWidth(0.2);
                                                        }
                                                }
                                                pad[gId][1]->cd();
                                                barrel[gId]->SetStats(0);
                                                barrel[gId]->GetZaxis()->SetRangeUser(0.9,1.1); 
                                                
                                                barrel[gId]->Draw("colz");
                                                for(int i = 0; i <17; i++) {
                                                        Double_t x = 20.+ (i *20);
                                                        l = new TLine(x,-85.,x,86.);
                                                        l->Draw();
                                                }
                                                l = new TLine(0.,0.,360.,0.);
                                                l->Draw();

                                                //canvas.cd(3);
                                                pad[gId][2]->cd();
                                                endc_p[gId]->SetStats(0);
                                                endc_p[gId]->GetZaxis()->SetRangeUser(0.9,1.1); 
                                                
                                                endc_p[gId]->Draw("colz");
                                                for ( int i=0; i<201; i=i+1) {
                                                        if ( (ixSectorsEE[i]!=0 || iySectorsEE[i]!=0) && 
                                                                (ixSectorsEE[i+1]!=0 || iySectorsEE[i+1]!=0) ) {
                                                                        l->DrawLine(ixSectorsEE[i], iySectorsEE[i], 
                                                                                ixSectorsEE[i+1], iySectorsEE[i+1]);
                                                        }
                                                }
                                        }

                                        canvas.SaveAs(filename.c_str());
                                        return filename;
        }  // plot
template<>
std::string cond::PayLoadInspector< SiStripConfObject >::plot ( std::string const &  filename,
std::string const &  ,
std::vector< int > const &  ,
std::vector< float > const &   
) const

Definition at line 49 of file SiStripConfObjectPyWrapper.cc.

References f, alignmentValidation::fname, and AlCaHLTBitMon_QueryRunRegistry::string.

                                                                                   {
    std::string fname = filename + ".png";
    std::ofstream f(fname.c_str());
    return fname;
  }
template<>
std::string cond::PayLoadInspector< HcalGainWidths >::plot ( std::string const &  filename,
std::string const &  ,
std::vector< int > const &  ,
std::vector< float > const &   
) const

Definition at line 155 of file HcalGainWidthsPyWrapper.cc.

References HcalObjRepresent::ADataRepr::filename, lut2db_cfg::filename, HcalObjRepresent::ADataRepr::fillOneGain(), HcalObjRepresent::ADataRepr::id, HcalObjRepresent::ADataRepr::nr, HcalObjRepresent::ADataRepr::plotname, and HcalObjRepresent::ADataRepr::rootname.

        {

                //how much values are in container
                unsigned int numOfValues = 4;

                //create object helper for making plots;
                HcalGainWidthsDataRepr datarepr(numOfValues, object().getAllContainers());

                datarepr.nr = 0;
                datarepr.id = 0;
                datarepr.rootname.str("_GainWidthrootvalue_");
                datarepr.plotname.str("GainWidthValue ");
                datarepr.filename.str("");
                datarepr.filename << filename << "_GainWidth_";

                typedef std::vector<TH2F> graphData;
                std::vector< graphData > graphDataVec(numOfValues);
                std::vector< graphData >::iterator imageIter;

                //create images:
                for (imageIter = graphDataVec.begin(); imageIter != graphDataVec.end(); ++imageIter){

                        //MAIN FUNCTION:
                        datarepr.fillOneGain((*imageIter));

                        ++(datarepr.nr);
                        ++(datarepr.id);
                }
                return filename;
        }
template<>
std::string cond::PayLoadInspector< EcalDAQTowerStatus >::plot ( std::string const &  filename,
std::string const &  ,
std::vector< int > const &  ,
std::vector< float > const &   
) const

Definition at line 168 of file EcalDAQTowerStatusPyWrapper.cc.

References Reference_intrackfit_cff::barrel, svgfig::canvas(), EcalTrigTowerDetId::detIdFromDenseIndex(), end, lut2db_cfg::filename, spr::find(), i, EcalTrigTowerDetId::ieta(), EcalTrigTowerDetId::iphi(), EcalScDetId::ix(), EcalScDetId::iy(), EcalTrigTowerDetId::kEBTotalTowers, EcalTrigTowerDetId::kEETotalTowers, prof2calltree::l, EcalScDetId::unhashIndex(), EcalScDetId::validHashIndex(), x, and EcalScDetId::zside().

                                                                                         {
    //    std::string fname = filename + ".txt";
    //    EcalDAQTowerStatusXMLTranslator::plot(fname, object());
    //    return fname;
    TCanvas canvas("CC map","CC map",800,800);
    TPad* padb = new TPad("padb","padb", 0., 0.55, 1., 1.);
    padb->Draw();
    TPad* padem = new TPad("padem","padem", 0., 0., 0.45, 0.45);
    padem->Draw();
    TPad* padep = new TPad("padep","padep", 0.55, 0., 1., 0.45);
    padep->Draw();

    TH2F* barrel = new TH2F("EB","EB Tower Status", 72, 0, 72, 34, -17, 17);
    TH2F* endc_p = new TH2F("EE+","EE+ Tower Status",22, 0, 22, 22, 0, 22);
    TH2F* endc_m = new TH2F("EE-","EE- Tower Status",22, 0, 22, 22, 0, 22);
    for(uint cellid = 0;
        cellid < EcalTrigTowerDetId::kEBTotalTowers;
        ++cellid) {
      EcalTrigTowerDetId rawid = EcalTrigTowerDetId::detIdFromDenseIndex(cellid);
      if (object().find(rawid) == object().end()) continue;
      int ieta = rawid.ieta();
      if(ieta > 0) ieta--;   // 1 to 17
      int iphi = rawid.iphi() - 1;  // 0 to 71
      barrel->Fill(iphi, ieta, object()[rawid].getStatusCode());
    }
    for(uint cellid = 0;
        cellid < EcalTrigTowerDetId::kEETotalTowers;
        ++cellid) {
      if(EcalScDetId::validHashIndex(cellid)) {
        EcalScDetId rawid = EcalScDetId::unhashIndex(cellid); 
        int ix = rawid.ix();  // 1 to 20
        int iy = rawid.iy();  // 1 to 20
        int side = rawid.zside();
        if(side == -1)
          endc_m->Fill(ix, iy, object()[rawid].getStatusCode());
        else
          endc_p->Fill(ix, iy, object()[rawid].getStatusCode());
      }
    }
    TLine* l = new TLine(0., 0., 0., 0.);
    l->SetLineWidth(1);
    padb->cd();
    barrel->SetStats(0);
    //    barrel->SetMaximum(14);
    //    barrel->SetMinimum(0);
    //    barrel->Draw("colz");
    barrel->Draw("col");
    for(int i = 0; i <17; i++) {
      Double_t x = 4.+ (i * 4);
      l = new TLine(x, -17., x, 17.);
      l->Draw();
    }
    l = new TLine(0., 0., 72., 0.);
    l->Draw();

    int ixSectorsEE[133] = {
       8,14,14,17,17,18,18,19,19,20,20,21,21,20,20,19,19,18,18,17,
      17,14,14, 8, 8, 5, 5, 4, 4, 3, 3, 2, 2, 1, 1, 2, 2, 3, 3, 4,
       4, 5, 5, 8, 8, 8, 9, 9,10,10,12,12,13,13,12,12,10,10, 9, 9,
      10,10, 0,11,11, 0,10, 9, 9, 8, 8, 7, 7, 6, 6, 5, 5, 0,12,13,
      13,14,14,15,15,16,16,17,17, 0, 9, 8, 8, 3, 3, 1, 0,13,14,14,
      19,19,21, 0, 9, 8, 8, 7, 7, 5, 5, 3, 3, 2, 0,13,14,14,15,15,
      17,17,19,19,20, 0,14,14,13,13,12,12,0};
    int iySectorsEE[133] = {
       1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 8, 8,14,14,17,17,18,18,19,19,
      20,20,21,21,20,20,19,19,18,18,17,17,14,14, 8, 8, 5, 5, 4, 4,
       3, 3, 2, 2, 1, 4, 4, 7, 7, 9, 9,10,10,12,12,13,13,12,12,10,
      10, 9, 0,13,21, 0,13,13,14,14,15,15,16,16,18,18,19, 0,13,13,
      14,14,15,15,16,16,18,18,19, 0,11,11,12,12,13,13, 0,11,11,12,
      12,13,13, 0,10,10, 9, 9, 8, 8, 7, 7, 6, 6, 0,10,10, 9, 9, 8,
       8, 7, 7, 6, 6, 0, 2, 4, 4, 7, 7, 9, 0} ;
    padem->cd();
    endc_m->SetStats(0);
    endc_m->Draw("col");
    for ( int i = 0; i < 132; i=i+1) {
      if ( (ixSectorsEE[i]!=0 || iySectorsEE[i]!=0) && 
           (ixSectorsEE[i+1]!=0 || iySectorsEE[i+1]!=0) ) {
        l->DrawLine(ixSectorsEE[i], iySectorsEE[i], 
                    ixSectorsEE[i+1], iySectorsEE[i+1]);
      }
    }

    padep->cd();
    endc_p->SetStats(0);
    endc_p->Draw("col");
    for ( int i = 0; i < 132; i=i+1) {
      if ( (ixSectorsEE[i]!=0 || iySectorsEE[i]!=0) && 
           (ixSectorsEE[i+1]!=0 || iySectorsEE[i+1]!=0) ) {
        l->DrawLine(ixSectorsEE[i], iySectorsEE[i], 
                    ixSectorsEE[i+1], iySectorsEE[i+1]);
      }
    }

    canvas.SaveAs(filename.c_str());
    return filename;
  }
template<>
std::string cond::PayLoadInspector< HcalLUTCorrs >::plot ( std::string const &  filename,
std::string const &  ,
std::vector< int > const &  ,
std::vector< float > const &   
) const

Definition at line 150 of file HcalLUTCorrsPyWrapper.cc.

References HcalObjRepresent::ADataRepr::filename, lut2db_cfg::filename, HcalObjRepresent::ADataRepr::fillOneGain(), HcalObjRepresent::ADataRepr::id, HcalObjRepresent::ADataRepr::nr, HcalObjRepresent::ADataRepr::plotname, and HcalObjRepresent::ADataRepr::rootname.

        {

                //how much values are in container
                unsigned int numOfValues = 1;

                //create object helper for making plots;
                HcalLUTCorrsDataRepr datarepr(numOfValues, object().getAllContainers());

                datarepr.nr = 0;
                datarepr.id = 0;
                datarepr.rootname.str("_LUTCorrrootvalue_");
                datarepr.plotname.str("LUTCorr ");
                datarepr.filename.str("");
                datarepr.filename << filename << "";

                typedef std::vector<TH2F> graphData;
                std::vector< graphData > graphDataVec(numOfValues);
                std::vector< graphData >::iterator imageIter;

                /*create images:*/
                for (imageIter = graphDataVec.begin(); imageIter != graphDataVec.end(); ++imageIter){
                        //MAIN FUNCTION:
                        datarepr.fillOneGain((*imageIter));

                        ++(datarepr.nr);
                        ++(datarepr.id);
                }
                return filename;
        }
template<>
std::string cond::PayLoadInspector< EcalDCSTowerStatus >::plot ( std::string const &  filename,
std::string const &  ,
std::vector< int > const &  ,
std::vector< float > const &   
) const

Definition at line 192 of file EcalDCSTowerStatusPyWrapper.cc.

References Reference_intrackfit_cff::barrel, svgfig::canvas(), EcalTrigTowerDetId::detIdFromDenseIndex(), end, lut2db_cfg::filename, spr::find(), cmsRelvalreport::green(), i, EcalTrigTowerDetId::ieta(), EcalTrigTowerDetId::iphi(), EcalScDetId::ix(), EcalScDetId::iy(), EcalTrigTowerDetId::kEBTotalTowers, EcalTrigTowerDetId::kEETotalTowers, prof2calltree::l, cmsRelvalreport::red(), EcalScDetId::unhashIndex(), EcalScDetId::validHashIndex(), x, and EcalScDetId::zside().

                                                                                         {
    //    std::string fname = filename + ".txt";
    //    EcalDCSTowerStatusXMLTranslator::plot(fname, object());
    //    return fname;

    // use David's palette
    gStyle->SetPalette(1);

    const Int_t NRGBs = 5;
    const Int_t NCont = 255;

    Double_t stops[NRGBs] = { 0.00, 0.34, 0.61, 0.84, 1.00 };
    Double_t red[NRGBs]   = { 0.00, 0.00, 0.87, 1.00, 0.51 };
    Double_t green[NRGBs] = { 0.00, 0.81, 1.00, 0.20, 0.00 };
    Double_t blue[NRGBs]  = { 0.51, 1.00, 0.12, 0.00, 0.00 };
    TColor::CreateGradientColorTable(NRGBs, stops, red, green, blue, NCont);
    gStyle->SetNumberContours(NCont);

    TCanvas canvas("CC map","CC map",800,800);
    TPad* padb = new TPad("padb","padb", 0., 0.55, 1., 1.);
    padb->Draw();
    TPad* padem = new TPad("padem","padem", 0., 0., 0.45, 0.45);
    padem->Draw();
    TPad* padep = new TPad("padep","padep", 0.55, 0., 1., 0.45);
    padep->Draw();

    //    TH2F* barrel = new TH2F("EB","EB Tower Status", 72, 0, 72, 35, -17, 18);
    TH2F* barrel = new TH2F("EB","EB Tower Status", 72, 0, 72, 34, -17, 17);
    TH2F* endc_p = new TH2F("EE+","EE+ Tower Status",22, 0, 22, 22, 0, 22);
    TH2F* endc_m = new TH2F("EE-","EE- Tower Status",22, 0, 22, 22, 0, 22);
    for(uint cellid = 0;
        cellid < EcalTrigTowerDetId::kEBTotalTowers;
        ++cellid) {
      EcalTrigTowerDetId rawid = EcalTrigTowerDetId::detIdFromDenseIndex(cellid);
      if (object().find(rawid) == object().end()) continue;
      int ieta = rawid.ieta();
      if(ieta > 0) ieta--;   // 1 to 17
      int iphi = rawid.iphi() - 1;  // 0 to 71
      barrel->Fill(iphi, ieta, object()[rawid].getStatusCode());
    }
    for(uint cellid = 0;
        cellid < EcalTrigTowerDetId::kEETotalTowers;
        ++cellid) {
      if(EcalScDetId::validHashIndex(cellid)) {
        EcalScDetId rawid = EcalScDetId::unhashIndex(cellid); 
        int ix = rawid.ix();  // 1 to 20
        int iy = rawid.iy();  // 1 to 20
        int side = rawid.zside();
        if(side == -1)
          endc_m->Fill(ix, iy, object()[rawid].getStatusCode());
        else
          endc_p->Fill(ix, iy, object()[rawid].getStatusCode());
      }
    }
    TLine* l = new TLine(0., 0., 0., 0.);
    l->SetLineWidth(1);
    padb->cd();
    barrel->SetStats(0);
    barrel->SetMaximum(14);
    barrel->SetMinimum(0);
    barrel->Draw("colz");
    //    barrel->Draw("col");
    for(int i = 0; i <17; i++) {
      Double_t x = 4.+ (i * 4);
      l = new TLine(x, -17., x, 17.);
      l->Draw();
    }
    l = new TLine(0., 0., 72., 0.);
    l->Draw();

    int ixSectorsEE[133] = {
       8,14,14,17,17,18,18,19,19,20,20,21,21,20,20,19,19,18,18,17,
      17,14,14, 8, 8, 5, 5, 4, 4, 3, 3, 2, 2, 1, 1, 2, 2, 3, 3, 4,
       4, 5, 5, 8, 8, 8, 9, 9,10,10,12,12,13,13,12,12,10,10, 9, 9,
      10,10, 0,11,11, 0,10, 9, 9, 8, 8, 7, 7, 6, 6, 5, 5, 0,12,13,
      13,14,14,15,15,16,16,17,17, 0, 9, 8, 8, 3, 3, 1, 0,13,14,14,
      19,19,21, 0, 9, 8, 8, 7, 7, 5, 5, 3, 3, 2, 0,13,14,14,15,15,
      17,17,19,19,20, 0,14,14,13,13,12,12,0};
    int iySectorsEE[133] = {
       1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 8, 8,14,14,17,17,18,18,19,19,
      20,20,21,21,20,20,19,19,18,18,17,17,14,14, 8, 8, 5, 5, 4, 4,
       3, 3, 2, 2, 1, 4, 4, 7, 7, 9, 9,10,10,12,12,13,13,12,12,10,
      10, 9, 0,13,21, 0,13,13,14,14,15,15,16,16,18,18,19, 0,13,13,
      14,14,15,15,16,16,18,18,19, 0,11,11,12,12,13,13, 0,11,11,12,
      12,13,13, 0,10,10, 9, 9, 8, 8, 7, 7, 6, 6, 0,10,10, 9, 9, 8,
       8, 7, 7, 6, 6, 0, 2, 4, 4, 7, 7, 9, 0} ;
    padem->cd();
    endc_m->SetStats(0);
    endc_m->SetMaximum(14);
    endc_m->SetMinimum(0);
    endc_m->Draw("colz");
    for ( int i = 0; i < 132; i=i+1) {
      if ( (ixSectorsEE[i]!=0 || iySectorsEE[i]!=0) && 
           (ixSectorsEE[i+1]!=0 || iySectorsEE[i+1]!=0) ) {
        l->DrawLine(ixSectorsEE[i], iySectorsEE[i], 
                    ixSectorsEE[i+1], iySectorsEE[i+1]);
      }
    }

    padep->cd();
    endc_p->SetStats(0);
    endc_p->SetMaximum(14);
    endc_p->SetMinimum(0);
    endc_p->Draw("colz");
    for ( int i = 0; i < 132; i=i+1) {
      if ( (ixSectorsEE[i]!=0 || iySectorsEE[i]!=0) && 
           (ixSectorsEE[i+1]!=0 || iySectorsEE[i+1]!=0) ) {
        l->DrawLine(ixSectorsEE[i], iySectorsEE[i], 
                    ixSectorsEE[i+1], iySectorsEE[i+1]);
      }
    }

    canvas.SaveAs(filename.c_str());
    return filename;
  }
template<>
std::string cond::PayLoadInspector< HcalLutMetadata >::plot ( std::string const &  filename,
std::string const &  ,
std::vector< int > const &  ,
std::vector< float > const &   
) const

Definition at line 200 of file HcalLutMetadataPyWrapper.cc.

References HcalObjRepresent::ADataRepr::filename, lut2db_cfg::filename, HcalObjRepresent::ADataRepr::fillOneGain(), HcalObjRepresent::ADataRepr::id, HcalObjRepresent::ADataRepr::nr, HcalObjRepresent::ADataRepr::plotname, and HcalObjRepresent::ADataRepr::rootname.

        {

                //how much values are in container
                unsigned int numOfValues = 3;

                //create object helper for making plots;
                HcalLutMetadataDataRepr datarepr(numOfValues, object().getAllContainers());

                datarepr.nr = 0;
                datarepr.id = 0;
                datarepr.rootname.str("_LutMetadatumrootvalue_");
                datarepr.plotname.str("LutMetadatumValue ");
                datarepr.filename.str("");
                datarepr.filename << filename << "_LutMetadatum_";

                typedef std::vector<TH2F> graphData;
                std::vector< graphData > graphDataVec(numOfValues);
                std::vector< graphData >::iterator imageIter;
                //create images:
                for (imageIter = graphDataVec.begin(); imageIter != graphDataVec.end(); ++imageIter){
                        switch(datarepr.id){
        case 0:
                datarepr.rootname.str("_RCalibrootvalue_");
                datarepr.plotname.str("RCalib ");
                datarepr.filename.str("");
                datarepr.filename << filename << "_RCalib_";
                break;
        case 1:
                datarepr.rootname.str("_LutGranularityrootvalue_");
                datarepr.plotname.str("LutGranularity ");
                datarepr.filename.str("");
                datarepr.filename << filename << "_LutGranularity_";
                break;
        case 2:
                datarepr.rootname.str("_OutputLutThresholdrootvalue_");
                datarepr.plotname.str("OutputLutThreshold ");
                datarepr.filename.str("");
                datarepr.filename << filename << "_OutputLutThreshold_";
                break;
        default:
                throw("Trying to access not existing value!");
                        }
                        //MAIN FUNCTION:
                        datarepr.fillOneGain((*imageIter));

                        //++(datarepr.nr);
                        ++(datarepr.id);
                }
                return filename;
        }
template<>
std::string cond::PayLoadInspector< HcalPedestals >::plot ( std::string const &  filename,
std::string const &  ,
std::vector< int > const &  ,
std::vector< float > const &   
) const

Definition at line 160 of file HcalPedestalsPyWrapper.cc.

References HcalObjRepresent::ADataRepr::filename, lut2db_cfg::filename, HcalObjRepresent::ADataRepr::fillOneGain(), HcalObjRepresent::ADataRepr::id, HcalObjRepresent::ADataRepr::nr, HcalObjRepresent::ADataRepr::plotname, and HcalObjRepresent::ADataRepr::rootname.

        {

                //how much values are in container
                unsigned int numOfValues = 8;

                //create object helper for making plots;
                HcalPedestalsDataRepr datarepr(numOfValues, object().getAllContainers());

                datarepr.nr = 0;
                datarepr.id = 0;
                datarepr.rootname.str("_Pedestalrootvalue_");
                datarepr.plotname.str("PedestalValue ");
                datarepr.filename.str("");
                datarepr.filename << filename << "_Pedestal_";

                typedef std::vector<TH2F> graphData;
                std::vector< graphData > graphDataVec(numOfValues);
                std::vector< graphData >::iterator imageIter;

                //create images:
                for (imageIter = graphDataVec.begin(); imageIter != graphDataVec.end(); ++imageIter){
                        if (datarepr.nr == 4){
                                datarepr.nr = 0;
                                datarepr.rootname.str("_PedestalWidthrootname_");
                                datarepr.plotname.str("PedestalWidth ");
                                datarepr.filename.str("");
                                datarepr.filename << filename << "_PedestalWidth_";                                     
                        }
                        //MAIN FUNCTION:
                        datarepr.fillOneGain((*imageIter));

                        ++(datarepr.nr);
                        ++(datarepr.id);
                }
                return filename;
        }
template<>
std::string cond::PayLoadInspector< DTPerformance >::plot ( std::string const &  filename,
std::string const &  ,
std::vector< int > const &  ,
std::vector< float > const &   
) const

Definition at line 48 of file DTPerformancePyWrapper.cc.

References f, alignmentValidation::fname, and AlCaHLTBitMon_QueryRunRegistry::string.

                                                                                   {
    std::string fname = filename + ".png";
    std::ofstream f(fname.c_str());
    return fname;
  }
template<>
std::string cond::PayLoadInspector< HcalPFCorrs >::plot ( std::string const &  filename,
std::string const &  ,
std::vector< int > const &  ,
std::vector< float > const &   
) const

Definition at line 149 of file HcalPFCorrsPyWrapper.cc.

References HcalObjRepresent::ADataRepr::filename, lut2db_cfg::filename, HcalObjRepresent::ADataRepr::fillOneGain(), HcalObjRepresent::ADataRepr::id, HcalObjRepresent::ADataRepr::nr, HcalObjRepresent::ADataRepr::plotname, and HcalObjRepresent::ADataRepr::rootname.

        {

                //how much values are in container
                unsigned int numOfValues = 1;

                //create object helper for making plots;
                HcalPFCorrsDataRepr datarepr(numOfValues, object().getAllContainers());

                datarepr.nr = 0;
                datarepr.id = 0;
                datarepr.rootname.str("_PFCorrrootvalue_");
                datarepr.plotname.str("PFCorr ");
                datarepr.filename.str("");
                datarepr.filename << filename << "";

                typedef std::vector<TH2F> graphData;
                std::vector< graphData > graphDataVec(numOfValues);
                std::vector< graphData >::iterator imageIter;

                /*create images:*/
                for (imageIter = graphDataVec.begin(); imageIter != graphDataVec.end(); ++imageIter){
                        //MAIN FUNCTION:
                        datarepr.fillOneGain((*imageIter));

                        ++(datarepr.nr);
                        ++(datarepr.id);
                }
                return filename;
        }
template<>
std::string cond::PayLoadInspector< EcalDQMChannelStatus >::plot ( std::string const &  filename,
std::string const &  ,
std::vector< int > const &  ,
std::vector< float > const &   
) const

Definition at line 211 of file EcalDQMChannelStatusPyWrapper.cc.

References svgfig::canvas(), lut2db_cfg::filename, ecalMGPA::gainId(), i, EEDetId::IX_MAX, EEDetId::IY_MAX, kBarlRings, kBarlWedges, kEndcWedgesX, kEndcWedgesY, kSides, prof2calltree::l, EBDetId::MAX_IETA, EBDetId::MAX_IPHI, getGTfromDQMFile::obj, AlCaHLTBitMon_QueryRunRegistry::string, EEDetId::validDetId(), x, and detailsBasic3DVector::y.

                                                {
                        gStyle->SetPalette(1);
                        const int TOTAL_IMAGES = 1;
                        const int TOTAL_PADS = 3;

                        const float IMG_SIZE = 1.5;
                        TCanvas canvas("CC map","CC map",800*IMG_SIZE, 200 * TOTAL_IMAGES*IMG_SIZE);//800, 1200

                        float xmi[3] = {0.0 , 0.22, 0.78};
                        float xma[3] = {0.22, 0.78, 1.00};


                        TPad*** pad = new TPad**[TOTAL_IMAGES];
                        for (int gId = 0; gId < TOTAL_IMAGES; gId++) {
                                pad[gId] = new TPad*[TOTAL_PADS];
                                for (int obj = 0; obj < TOTAL_PADS; obj++) {
                                        float yma = 1. - 0;//1.- (0.17 * gId);
                                        float ymi = yma - 1;//0.15;
                                        pad[gId][obj] = new TPad(Form("p_%i_%i", obj, gId),Form("p_%i_%i", obj, gId),
                                                xmi[obj], ymi, xma[obj], yma);
                                        pad[gId][obj]->Draw();
                                }
                        }

                        const int kGains       = 3;
                        const int gainValues[3] = {12, 6, 1};
                        const int kSides       = 2;
                        const int kBarlRings   = EBDetId::MAX_IETA;
                        const int kBarlWedges  = EBDetId::MAX_IPHI;
                        const int kEndcWedgesX = EEDetId::IX_MAX;
                        const int kEndcWedgesY = EEDetId::IY_MAX;

                        TH2F** barrel_m = new TH2F*[3];
                        TH2F** endc_p_m = new TH2F*[3];
                        TH2F** endc_m_m = new TH2F*[3];
                        std::string variableName = "DQMChannelStatus";
                        for (int gainId = 0; gainId < kGains; gainId++) {
                                barrel_m[gainId] = new TH2F(Form((variableName + " EBm%i").c_str(),gainId), Form((variableName + " EB").c_str(),gainValues[gainId]),360,0,360, 170, -85,85);
                                endc_p_m[gainId] = new TH2F(Form((variableName + " EE+m%i").c_str(),gainId), Form((variableName + " EE+").c_str(),gainValues[gainId]),100,1,101,100,1,101);
                                endc_m_m[gainId] = new TH2F(Form((variableName + " EE-m%i").c_str(),gainId), Form((variableName + " EE-").c_str(),gainValues[gainId]),100,1,101,100,1,101);
                        }

                        for (int sign=0; sign < kSides; sign++) {
                                int thesign = sign==1 ? 1:-1;

                                for (int ieta=0; ieta<kBarlRings; ieta++) {
                                        for (int iphi=0; iphi<kBarlWedges; iphi++) {
                                                EBDetId id((ieta+1)*thesign, iphi+1);
                                                float y = -1 - ieta;
                                                if(sign == 1) y = ieta;
                                                barrel_m[0]->Fill(iphi, y, object()[id.rawId()].getStatusCode());
                                        }  // iphi
                                }   // ieta

                                for (int ix=0; ix<kEndcWedgesX; ix++) {
                                        for (int iy=0; iy<kEndcWedgesY; iy++) {
                                                if (! EEDetId::validDetId(ix+1,iy+1,thesign)) continue;
                                                EEDetId id(ix+1,iy+1,thesign);
                                                if (thesign==1) {
                                                        endc_p_m[0]->Fill(ix+1,iy+1,object()[id.rawId()].getStatusCode());
                                                }
                                                else{ 
                                                        endc_m_m[0]->Fill(ix+1,iy+1,object()[id.rawId()].getStatusCode());
                                                }
                                        }  // iy
                                }   // ix
                        }    // side

                        //canvas.cd(1);
                        TLine* l = new TLine(0., 0., 0., 0.);
                        l->SetLineWidth(1);
                        int ixSectorsEE[202] = {
                                62, 62, 61, 61, 60, 60, 59, 59, 58, 58, 56, 56, 46, 46, 44, 44, 43, 43, 42, 42, 
                                41, 41, 40, 40, 41, 41, 42, 42, 43, 43, 44, 44, 46, 46, 56, 56, 58, 58, 59, 59, 
                                60, 60, 61, 61, 62, 62,  0,101,101, 98, 98, 96, 96, 93, 93, 88, 88, 86, 86, 81, 
                                81, 76, 76, 66, 66, 61, 61, 41, 41, 36, 36, 26, 26, 21, 21, 16, 16, 14, 14,  9,
                                9,  6,  6,  4,  4,  1,  1,  4,  4,  6,  6,  9,  9, 14, 14, 16, 16, 21, 21, 26, 
                                26, 36, 36, 41, 41, 61, 61, 66, 66, 76, 76, 81, 81, 86, 86, 88, 88, 93, 93, 96, 
                                96, 98, 98,101,101,  0, 62, 66, 66, 71, 71, 81, 81, 91, 91, 93,  0, 62, 66, 66, 
                                91, 91, 98,  0, 58, 61, 61, 66, 66, 71, 71, 76, 76, 81, 81,  0, 51, 51,  0, 44, 
                                41, 41, 36, 36, 31, 31, 26, 26, 21, 21,  0, 40, 36, 36, 11, 11,  4,  0, 40, 36, 
                                36, 31, 31, 21, 21, 11, 11,  9,  0, 46, 46, 41, 41, 36, 36,  0, 56, 56, 61, 61, 66, 66};

                                int iySectorsEE[202] = {
                                        51, 56, 56, 58, 58, 59, 59, 60, 60, 61, 61, 62, 62, 61, 61, 60, 60, 59, 59, 58, 
                                        58, 56, 56, 46, 46, 44, 44, 43, 43, 42, 42, 41, 41, 40, 40, 41, 41, 42, 42, 43, 
                                        43, 44, 44, 46, 46, 51,  0, 51, 61, 61, 66, 66, 76, 76, 81, 81, 86, 86, 88, 88, 
                                        93, 93, 96, 96, 98, 98,101,101, 98, 98, 96, 96, 93, 93, 88, 88, 86, 86, 81, 81, 
                                        76, 76, 66, 66, 61, 61, 41, 41, 36, 36, 26, 26, 21, 21, 16, 16, 14, 14,  9,  9, 
                                        6,  6,  4,  4,  1,  1,  4,  4,  6,  6,  9,  9, 14, 14, 16, 16, 21, 21, 26, 26, 
                                        36, 36, 41, 41, 51,  0, 46, 46, 41, 41, 36, 36, 31, 31, 26, 26,  0, 51, 51, 56, 
                                        56, 61, 61,  0, 61, 61, 66, 66, 71, 71, 76, 76, 86, 86, 88,  0, 62,101,  0, 61, 
                                        61, 66, 66, 71, 71, 76, 76, 86, 86, 88,  0, 51, 51, 56, 56, 61, 61,  0, 46, 46, 
                                        41, 41, 36, 36, 31, 31, 26, 26,  0, 40, 31, 31, 16, 16,  6,  0, 40, 31, 31, 16, 16,  6};

                                        for (int gId = 0; gId < TOTAL_IMAGES; gId++) {//was 3
                                                pad[gId][0]->cd();
                                                endc_m_m[gId]->SetStats(0);
                                                //endc_m_m[gId]->SetMaximum(225);
                                                //endc_m_m[gId]->SetMinimum(175);
                                                endc_m_m[gId]->Draw("colz");
                                                for ( int i=0; i<201; i=i+1) {
                                                        if ( (ixSectorsEE[i]!=0 || iySectorsEE[i]!=0) && 
                                                                (ixSectorsEE[i+1]!=0 || iySectorsEE[i+1]!=0) ) {
                                                                        l->DrawLine(ixSectorsEE[i], iySectorsEE[i], 
                                                                                ixSectorsEE[i+1], iySectorsEE[i+1]);
                                                                        l->SetLineWidth(0.2);
                                                        }
                                                }

                                                //canvas.cd(2);
                                                pad[gId][1]->cd();
                                                barrel_m[gId]->SetStats(0);
                                                //barrel_m[gId]->SetMaximum(225);
                                                //barrel_m[gId]->SetMinimum(175);
                                                barrel_m[gId]->Draw("colz");
                                                for(int i = 0; i <17; i++) {
                                                        Double_t x = 20.+ (i *20);
                                                        l = new TLine(x,-85.,x,86.);
                                                        l->Draw();
                                                }
                                                l = new TLine(0.,0.,360.,0.);
                                                l->Draw();

                                                //canvas.cd(3);
                                                pad[gId][2]->cd();
                                                endc_p_m[gId]->SetStats(0);
                                                //endc_p_m[gId]->SetMaximum(225);
                                                //endc_p_m[gId]->SetMinimum(175);
                                                endc_p_m[gId]->Draw("colz");
                                                for ( int i=0; i<201; i=i+1) {
                                                        if ( (ixSectorsEE[i]!=0 || iySectorsEE[i]!=0) && 
                                                                (ixSectorsEE[i+1]!=0 || iySectorsEE[i+1]!=0) ) {
                                                                        l->DrawLine(ixSectorsEE[i], iySectorsEE[i], 
                                                                                ixSectorsEE[i+1], iySectorsEE[i+1]);
                                                        }
                                                }
                                        }

                                        canvas.SaveAs(filename.c_str());
                                        return filename;
        }  // plot
template<>
std::string cond::PayLoadInspector< HcalQIEData >::plot ( std::string const &  filename,
std::string const &  ,
std::vector< int > const &  ,
std::vector< float > const &   
) const

Definition at line 218 of file HcalQIEDataPyWrapper.cc.

References cond::HcalQIEDataDataRepr::fCapId, HcalObjRepresent::ADataRepr::filename, lut2db_cfg::filename, HcalObjRepresent::ADataRepr::fillOneGain(), cond::HcalQIEDataDataRepr::fRange, HcalObjRepresent::ADataRepr::id, mergeVDriftHistosByStation::name, HcalObjRepresent::ADataRepr::nr, HcalObjRepresent::ADataRepr::plotname, cond::QIEDataCounter(), HcalObjRepresent::ADataRepr::rootname, cond::HcalQIEDataDataRepr::slopeOrOffset, and AlCaHLTBitMon_QueryRunRegistry::string.

        {

                //how much values are in container
                unsigned int numOfValues = 32;

                //create object helper for making plots;
                HcalQIEDataDataRepr datarepr(numOfValues, object().getAllContainers());

                typedef std::vector<TH2F> graphData;
                std::vector< graphData > graphDataVec(numOfValues);
                std::vector< graphData >::iterator imageIter;
                imageIter = graphDataVec.begin();



                std::string name = "_Offset_";
                datarepr.nr = 0;
                datarepr.id = 0;
                datarepr.rootname.str("_Offsetrootvalue_");
                datarepr.plotname.str("Offset ");
                datarepr.filename.str("");
                datarepr.filename << filename << name;
                //Run trough all values in object:
                datarepr.slopeOrOffset = false;

                for (unsigned int fCapId = 0; fCapId < 4; ++fCapId){
                        for (unsigned int fRange = 0; fRange < 4; ++fRange){
                                datarepr.fCapId = fCapId;
                                datarepr.fRange = fRange;

                                QIEDataCounter(datarepr.id, datarepr.nr);

                                if (datarepr.nr == 0){
                                        datarepr.filename.str("");
                                        datarepr.filename << filename << name  <<"0";
                                } else if ( datarepr.nr == 10)
                                {
                                        datarepr.filename.str("");
                                        datarepr.filename << filename << name;
                                }



                                datarepr.fillOneGain((*imageIter));


                                ++(datarepr.id);
                                ++(datarepr.nr);
                                ++(imageIter);
                        }
                }
                name = "_Slope_";
                datarepr.rootname.str("_Sloperootname_");
                datarepr.plotname.str("Slope ");
                datarepr.filename.str("");
                datarepr.filename << filename << name;  

                datarepr.slopeOrOffset = true;
                datarepr.nr = 0;
                datarepr.id = 0;

                for (unsigned int fCapId = 0; fCapId < 4; ++fCapId){
                        for (unsigned int fRange = 0; fRange < 4; ++fRange){
                                datarepr.fCapId = fCapId;
                                datarepr.fRange = fRange;

                                QIEDataCounter(datarepr.id, datarepr.nr);

                                if (datarepr.nr == 0){
                                        datarepr.filename.str("");
                                        datarepr.filename << filename << name  <<"0";
                                } else if ( datarepr.nr == 10)
                                {
                                        datarepr.filename.str("");
                                        datarepr.filename << filename << name;
                                }

                                datarepr.fillOneGain((*imageIter));

                                ++(datarepr.id);
                                ++(datarepr.nr);
                                ++(imageIter);
                        }
                }


                return filename;
        }
template<typename DataT >
std::string cond::PayLoadInspector< DataT >::plot ( std::string const &  ,
std::string const &  ,
std::vector< int > const &  ,
std::vector< float > const &   
) const [inline]

Definition at line 110 of file PayLoadInspector.h.

                                                                            {return "";}
template<>
std::string cond::PayLoadInspector< HcalRespCorrs >::plot ( std::string const &  filename,
std::string const &  ,
std::vector< int > const &  ,
std::vector< float > const &   
) const

Definition at line 149 of file HcalRespCorrsPyWrapper.cc.

References HcalObjRepresent::ADataRepr::filename, lut2db_cfg::filename, HcalObjRepresent::ADataRepr::fillOneGain(), HcalObjRepresent::ADataRepr::id, HcalObjRepresent::ADataRepr::nr, HcalObjRepresent::ADataRepr::plotname, and HcalObjRepresent::ADataRepr::rootname.

        {

                //how much values are in container
                unsigned int numOfValues = 1;

                //create object helper for making plots;
                HcalRespCorrsDataRepr datarepr(numOfValues, object().getAllContainers());

                datarepr.nr = 0;
                datarepr.id = 0;
                datarepr.rootname.str("_RespCorrrootvalue_");
                datarepr.plotname.str("RespCorr ");
                datarepr.filename.str("");
                datarepr.filename << filename << "";

                typedef std::vector<TH2F> graphData;
                std::vector< graphData > graphDataVec(numOfValues);
                std::vector< graphData >::iterator imageIter;

                //create images:
                for (imageIter = graphDataVec.begin(); imageIter != graphDataVec.end(); ++imageIter){
                        //MAIN FUNCTION:
                        datarepr.fillOneGain((*imageIter));

                        ++(datarepr.nr);
                        ++(datarepr.id);
                }
                return filename;
        }
template<>
std::string cond::PayLoadInspector< EcalDQMTowerStatus >::plot ( std::string const &  filename,
std::string const &  ,
std::vector< int > const &  ,
std::vector< float > const &   
) const

Definition at line 215 of file EcalDQMTowerStatusPyWrapper.cc.

References Reference_intrackfit_cff::barrel, svgfig::canvas(), EcalTrigTowerDetId::detIdFromDenseIndex(), end, lut2db_cfg::filename, spr::find(), i, EcalTrigTowerDetId::ieta(), EcalTrigTowerDetId::iphi(), EcalScDetId::ix(), EcalScDetId::iy(), EcalTrigTowerDetId::kEBTotalTowers, EcalTrigTowerDetId::kEETotalTowers, prof2calltree::l, EcalScDetId::unhashIndex(), EcalScDetId::validHashIndex(), x, and EcalScDetId::zside().

                                                                                         {
    //    std::string fname = filename + ".txt";
    //    EcalDAQTowerStatusXMLTranslator::plot(fname, object());
    //    return fname;
    TCanvas canvas("CC map","CC map",800,800);
    TPad* padb = new TPad("padb","padb", 0., 0.55, 1., 1.);
    padb->Draw();
    TPad* padem = new TPad("padem","padem", 0., 0., 0.45, 0.45);
    padem->Draw();
    TPad* padep = new TPad("padep","padep", 0.55, 0., 1., 0.45);
    padep->Draw();

    TH2F* barrel = new TH2F("EB","EB Tower Status", 72, 0, 72, 34, -17, 17);
    TH2F* endc_p = new TH2F("EE+","EE+ Tower Status",22, 0, 22, 22, 0, 22);
    TH2F* endc_m = new TH2F("EE-","EE- Tower Status",22, 0, 22, 22, 0, 22);
    for(uint cellid = 0;
        cellid < EcalTrigTowerDetId::kEBTotalTowers;
        ++cellid) {
      EcalTrigTowerDetId rawid = EcalTrigTowerDetId::detIdFromDenseIndex(cellid);
      if (object().find(rawid) == object().end()) continue;
      int ieta = rawid.ieta();
      if(ieta > 0) ieta--;   // 1 to 17
      int iphi = rawid.iphi() - 1;  // 0 to 71
      barrel->Fill(iphi, ieta, object()[rawid].getStatusCode());
    }
    for(uint cellid = 0;
        cellid < EcalTrigTowerDetId::kEETotalTowers;
        ++cellid) {
      if(EcalScDetId::validHashIndex(cellid)) {
        EcalScDetId rawid = EcalScDetId::unhashIndex(cellid); 
        int ix = rawid.ix();  // 1 to 20
        int iy = rawid.iy();  // 1 to 20
        int side = rawid.zside();
        if(side == -1)
          endc_m->Fill(ix, iy, object()[rawid].getStatusCode());
        else
          endc_p->Fill(ix, iy, object()[rawid].getStatusCode());
      }
    }
    TLine* l = new TLine(0., 0., 0., 0.);
    l->SetLineWidth(1);
    padb->cd();
    barrel->SetStats(0);
    //    barrel->SetMaximum(14);
    //    barrel->SetMinimum(0);
    //    barrel->Draw("colz");
    barrel->Draw("col");
    for(int i = 0; i <17; i++) {
      Double_t x = 4.+ (i * 4);
      l = new TLine(x, -17., x, 17.);
      l->Draw();
    }
    l = new TLine(0., 0., 72., 0.);
    l->Draw();

    int ixSectorsEE[136] = {
       8,14,14,17,17,18,18,19,19,20,20,21,21,20,20,19,19,18,18,17,
      17,14,14, 8, 8, 5, 5, 4, 4, 3, 3, 2, 2, 1, 1, 2, 2, 3, 3, 4,
       4, 5, 5, 8, 8, 8, 9, 9,10,10,12,12,13,13,12,12,10,10, 9, 9,
      10,10, 0,11,11, 0,10, 9, 9, 8, 8, 7, 7, 6, 6, 5, 5, 0,12,13,
      13,14,14,15,15,16,16,17,17, 0, 9, 8, 8, 3, 3, 1, 0,13,14,14,
      19,19,21, 0, 9, 8, 8, 7, 7, 5, 5, 3, 3, 2, 0,13,14,14,15,15,
      17,17,19,19,20, 0,14,14,13,13,12,12,0};
    int iySectorsEE[136] = {
       1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 8, 8,14,14,17,17,18,18,19,19,
      20,20,21,21,20,20,19,19,18,18,17,17,14,14, 8, 8, 5, 5, 4, 4,
       3, 3, 2, 2, 1, 4, 4, 7, 7, 9, 9,10,10,12,12,13,13,12,12,10,
      10, 9, 0,13,21, 0,13,13,14,14,15,15,16,16,18,18,19, 0,13,13,
      14,14,15,15,16,16,18,18,19, 0,11,11,12,12,13,13, 0,11,11,12,
      12,13,13, 0,10,10, 9, 9, 8, 8, 7, 7, 6, 6, 0,10,10, 9, 9, 8,
       8, 7, 7, 6, 6, 0, 2, 4, 4, 7, 7, 9, 0} ;
    padem->cd();
    endc_m->SetStats(0);
    endc_m->Draw("col");
    for ( int i = 0; i < 136; i=i+1) {
      if ( (ixSectorsEE[i]!=0 || iySectorsEE[i]!=0) && 
           (ixSectorsEE[i+1]!=0 || iySectorsEE[i+1]!=0) ) {
        l->DrawLine(ixSectorsEE[i], iySectorsEE[i], 
                    ixSectorsEE[i+1], iySectorsEE[i+1]);
      }
    }

    padep->cd();
    endc_p->SetStats(0);
    endc_p->Draw("col");
    for ( int i = 0; i < 136; i=i+1) {
      if ( (ixSectorsEE[i]!=0 || iySectorsEE[i]!=0) && 
           (ixSectorsEE[i+1]!=0 || iySectorsEE[i+1]!=0) ) {
        l->DrawLine(ixSectorsEE[i], iySectorsEE[i], 
                    ixSectorsEE[i+1], iySectorsEE[i+1]);
      }
    }

    canvas.SaveAs(filename.c_str());
    return filename;
  }
template<>
std::string cond::PayLoadInspector< HcalTimeCorrs >::plot ( std::string const &  filename,
std::string const &  ,
std::vector< int > const &  ,
std::vector< float > const &   
) const

Definition at line 150 of file HcalTimeCorrsPyWrapper.cc.

References HcalObjRepresent::ADataRepr::filename, lut2db_cfg::filename, HcalObjRepresent::ADataRepr::fillOneGain(), HcalObjRepresent::ADataRepr::id, HcalObjRepresent::ADataRepr::nr, HcalObjRepresent::ADataRepr::plotname, and HcalObjRepresent::ADataRepr::rootname.

        {

                //how much values are in container
                unsigned int numOfValues = 1;

                //create object helper for making plots;
                HcalTimeCorrsDataRepr datarepr(numOfValues, object().getAllContainers());

                datarepr.nr = 0;
                datarepr.id = 0;
                datarepr.rootname.str("_TimeCorrrootvalue_");
                datarepr.plotname.str("TimeCorr ");
                datarepr.filename.str("");
                datarepr.filename << filename << "";

                typedef std::vector<TH2F> graphData;
                std::vector< graphData > graphDataVec(numOfValues);
                std::vector< graphData >::iterator imageIter;

                //create images:
                for (imageIter = graphDataVec.begin(); imageIter != graphDataVec.end(); ++imageIter){
                        //MAIN FUNCTION:
                        datarepr.fillOneGain((*imageIter));

                        ++(datarepr.nr);
                        ++(datarepr.id);
                }
                return filename;
        }
template<>
std::string cond::PayLoadInspector< SiStripRunSummary >::plot ( std::string const &  filename,
std::string const &  ,
std::vector< int > const &  ,
std::vector< float > const &   
) const

Definition at line 48 of file SiStripRunSummaryPyWrapper.cc.

References f, alignmentValidation::fname, and AlCaHLTBitMon_QueryRunRegistry::string.

                                                                                   {
    std::string fname = filename + ".png";
    std::ofstream f(fname.c_str());
    return fname;
  }
template<>
std::string cond::PayLoadInspector< DTRangeT0 >::plot ( std::string const &  filename,
std::string const &  ,
std::vector< int > const &  ,
std::vector< float > const &   
) const

Definition at line 48 of file DTRangeT0PyWrapper.cc.

References f, alignmentValidation::fname, and AlCaHLTBitMon_QueryRunRegistry::string.

                                                                                   {
    std::string fname = filename + ".png";
    std::ofstream f(fname.c_str());
    return fname;
  }
template<>
std::string cond::PayLoadInspector< HcalValidationCorrs >::plot ( std::string const &  filename,
std::string const &  ,
std::vector< int > const &  ,
std::vector< float > const &   
) const

Definition at line 150 of file HcalValidationCorrsPyWrapper.cc.

References HcalObjRepresent::ADataRepr::filename, lut2db_cfg::filename, HcalObjRepresent::ADataRepr::fillOneGain(), HcalObjRepresent::ADataRepr::id, HcalObjRepresent::ADataRepr::nr, HcalObjRepresent::ADataRepr::plotname, and HcalObjRepresent::ADataRepr::rootname.

        {

                //how much values are in container
                unsigned int numOfValues = 1;

                //create object helper for making plots;
                HcalValidationCorrsDataRepr datarepr(numOfValues, object().getAllContainers());

                datarepr.nr = 0;
                datarepr.id = 0;
                datarepr.rootname.str("_ValidationCorrrootvalue_");
                datarepr.plotname.str("ValidationCorr ");
                datarepr.filename.str("");
                datarepr.filename << filename << "";

                typedef std::vector<TH2F> graphData;
                std::vector< graphData > graphDataVec(numOfValues);
                std::vector< graphData >::iterator imageIter;

                /*create images:*/
                for (imageIter = graphDataVec.begin(); imageIter != graphDataVec.end(); ++imageIter){
                        //MAIN FUNCTION:
                        datarepr.fillOneGain((*imageIter));

                        ++(datarepr.nr);
                        ++(datarepr.id);
                }
                return filename;
        }
template<>
std::string cond::PayLoadInspector< HcalZSThresholds >::plot ( std::string const &  filename,
std::string const &  ,
std::vector< int > const &  ,
std::vector< float > const &   
) const

Definition at line 150 of file HcalZSThresholdsPyWrapper.cc.

References HcalObjRepresent::ADataRepr::filename, lut2db_cfg::filename, HcalObjRepresent::ADataRepr::fillOneGain(), HcalObjRepresent::ADataRepr::id, HcalObjRepresent::ADataRepr::nr, HcalObjRepresent::ADataRepr::plotname, and HcalObjRepresent::ADataRepr::rootname.

        {

                //how much values are in container
                unsigned int numOfValues = 1;

                //create object helper for making plots;
                HcalZSThresholdsDataRepr datarepr(numOfValues, object().getAllContainers());

                datarepr.nr = 0;
                datarepr.id = 0;
                datarepr.rootname.str("_ZSThresholdrootvalue_");
                datarepr.plotname.str("ZSThreshold ");
                datarepr.filename.str("");
                datarepr.filename << filename << "";

                typedef std::vector<TH2F> graphData;
                std::vector< graphData > graphDataVec(numOfValues);
                std::vector< graphData >::iterator imageIter;

                /*create images:*/
                for (imageIter = graphDataVec.begin(); imageIter != graphDataVec.end(); ++imageIter){
                        //MAIN FUNCTION:
                        datarepr.fillOneGain((*imageIter));

                        ++(datarepr.nr);
                        ++(datarepr.id);
                }
                return filename;
        }
template<>
std::string cond::PayLoadInspector< RPCObGas >::plot ( std::string const &  filename,
std::string const &  str,
std::vector< int > const &  vInt,
std::vector< float > const &  vFlt 
) const

Definition at line 269 of file RPCObGasPyWrapper.cc.

                                                                                    {

//     gStyle->SetPalette(1);

//     TH1D *iDistr=new TH1D("iDistr","IOV-averaged Current Distribution;Average Current (#muA);Entries/0.2 #muA",500,0.,100.);
//     TH1D *rmsDistr=new TH1D("rmsDistr","RMS over IOV-Current Distribution;Current RMS (#muA);Entries/0.2 #muA",5000,0.,1000.);

//     //BEGIN OF NEW DB-SESSION PART
//     //hardcoded values
//     std::string authPath="/afs/cern.ch/cms/DB/conddb";
//     std::string conString="oracle://cms_orcoff_prod/CMS_COND_31X_RPC";
    
//     //frontend sends token instead of filename
//     std::string token="[DB=00000000-0000-0000-0000-000000000000][CNT=RPCObPVSSmap][CLID=53B2D2D9-1F4E-9CA9-4D71-FFCCA123A454][TECH=00000B01][OID=0000000C-00000000]";
    
//     //make connection object
//     DbConnection dbConn;
    
//     //set in configuration object authentication path
//     dbConn.configuration().setAuthenticationPath(authPath);
//     dbConn.configure();
    
//     //create session object from connection
//     DbSession dbSes=dbConn.createSession();
    
//     //try to make connection
//     dbSes.open(conString,true);
    
//     //start a transaction (true=readOnly)
//     dbSes.transaction().start(true);
    
//     //get the actual object
//     boost::shared_ptr<RPCObPVSSmap> pvssPtr;
//     pvssPtr=dbSes.getTypedObject<RPCObPVSSmap>(token);

//     //we have the object...
//     std::vector<RPCObPVSSmap::Item> pvssCont=pvssPtr->ObIDMap_rpc;
//     //END OF NEW DB-SESSION PART

//     std::vector<RPCObGas::Item> const & gas = object().ObGas_rpc;
    
//     RPCRunIOV *iovHelp=new RPCRunIOV();
    
//     std::map<int,std::pair<std::vector<double>,std::vector<double> > > dpidMap;
//     for(unsigned int i = 0;i < gas.size(); ++i){
//       for(unsigned int p = 0; p < pvssCont.size(); ++p){
//      if(gas[i].dpid!=pvssCont[p].dpid || pvssCont[p].suptype!=0 || pvssCont[p].region!=0)continue;
//      if(dpidMap.find(gas[i].dpid)==dpidMap.end()){
//        std::vector<double> dumVec1;dumVec1.push_back(gas[i].value);
//        std::vector<double> dumVec2;dumVec2.push_back((double)iovHelp->toUNIX(gas[i].day,gas[i].time));
//        dpidMap[gas[i].dpid]=make_pair(dumVec1,dumVec2);
//      }
//      else {
//        dpidMap[gas[i].dpid].first.push_back(gas[i].value);
//        dpidMap[gas[i].dpid].second.push_back((double)iovHelp->toUNIX(gas[i].day,gas[i].time));
//      }
//       }
//     }
    
//     delete iovHelp;

//     double maxMean(-1.),maxRms(-1.);
//     double minMean(9999.),minRms(9999.);
//     std::map<int,std::pair<std::vector<double>,std::vector<double> > >::const_iterator minIt,maxIt;
//     std::vector<float> means,rmss;
//     for(std::map<int,std::pair<std::vector<double>,std::vector<double> > >::const_iterator mIt=dpidMap.begin();
//      mIt!=dpidMap.end();mIt++){
//       std::pair<double, std::vector<double> > meanAndVals =
//      make_pair(accumulate(mIt->second.first.begin(),mIt->second.first.end(),0.)/(double)mIt->second.first.size(),mIt->second.first);
       
//       iDistr->Fill(meanAndVals.first);
//       if(meanAndVals.first>maxMean)maxMean=meanAndVals.first;
//       if(meanAndVals.first<minMean)minMean=meanAndVals.first;
//       double rms(0.);
//       for(std::vector<double>::iterator rmsIt=meanAndVals.second.begin();
//        rmsIt!=meanAndVals.second.end();++rmsIt){
//      rms+=pow((*rmsIt-meanAndVals.first)/(double)meanAndVals.second.size(),2);
//       }
//       rmsDistr->Fill(sqrt(rms));
//       if(sqrt(rms)>maxRms){
//      maxRms=sqrt(rms);
//      maxIt=mIt;
//       }
//       if(sqrt(rms)<minRms){
//      minRms=sqrt(rms);
//      if(mIt->second.first.size()>10)
//        minIt=mIt;
//       }
//       means.push_back(meanAndVals.first);
//       rmss.push_back(sqrt(rms));
//     }

//     if(maxMean<100.)
//       iDistr->GetXaxis()->SetRangeUser(minMean-0.00001,maxMean+1.);
//     if(maxRms<1000.)
//       rmsDistr->GetXaxis()->SetRangeUser(minRms-0.00001,maxRms+1.);
    
//     TCanvas c("Gas","Gas",1200,700);
//     c.Divide(2,2);
    
//     TVirtualPad *p1=c.cd(1);
//     p1->SetLogy(1);
//     iDistr->SetFillColor(4);
//     iDistr->SetLineColor(4);
//     iDistr->Draw();
//     c.cd(1);
    
//     TVirtualPad *p2=c.cd(2);
//     p2->SetLogy(1);
//     rmsDistr->SetFillColor(3);
//     rmsDistr->SetLineColor(3);
//     rmsDistr->Draw();

//     c.cd(3);
//     TGraph *iRmsDistr=new TGraph(means.size(),static_cast<const float *>(&rmss[0]),static_cast<const float *>(&means[0]));
//     iRmsDistr->SetMarkerStyle(7);
//     iRmsDistr->SetMarkerColor(2);
//     TF1 *func=new TF1("linearF",linearF,minRms,maxRms,1);
//     iRmsDistr->Fit("linearF","r");
//     iRmsDistr->GetXaxis()->SetTitle("Current RMS (#muA)");
//     iRmsDistr->GetYaxis()->SetTitle("Current Means (#muA)");
//     iRmsDistr->Draw("AP");
    

//     TVirtualPad *p4=c.cd(4);
//     p4->SetLogy(1);
//     TMultiGraph *mProf=new TMultiGraph();
//     TLegend *leg=new TLegend(0.65,0.91,0.99,0.99);
//     TGraph *minProf=new TGraph(minIt->second.first.size(),&minIt->second.second[0],&minIt->second.first[0]);
//     TGraph *maxProf=new TGraph(maxIt->second.first.size(),&maxIt->second.second[0],&maxIt->second.first[0]);
//     minProf->SetMarkerStyle(20);
//     maxProf->SetMarkerStyle(20);
//     minProf->SetMarkerColor(2);
//     maxProf->SetMarkerColor(4);
//     mProf->Add(minProf);
//     leg->AddEntry(minProf,"I vs IOV for Min RMS case","lpf");
//     mProf->Add(maxProf);
//     leg->AddEntry(maxProf,"I vs IOV for Max RMS case","lpf");
//     leg->Draw();
//     mProf->Draw("AP");
//     mProf->GetXaxis()->SetTitle("IOV");
//     mProf->GetYaxis()->SetTitle("I (#muA)");

//     c.SaveAs(filename.c_str());

//     return filename.c_str();

    return "";

  }
template<>
std::string cond::PayLoadInspector< EcalFloatCondObjectContainer >::plot ( std::string const &  filename,
std::string const &  ,
std::vector< int > const &  ,
std::vector< float > const &   
) const

there's a cleaner way to plot this map...

Definition at line 231 of file EcalFloatCondObjectContainerPyWrapper.cc.

References svgfig::canvas(), lut2db_cfg::filename, EEDetId::IX_MAX, EEDetId::IY_MAX, kBarlRings, kBarlWedges, kEndcWedgesX, kEndcWedgesY, kSides, EBDetId::MAX_IETA, EBDetId::MAX_IPHI, and EEDetId::validDetId().

                                                                                                   {

    gStyle->SetPalette(1);
    TCanvas canvas("CC map","CC map",840,280);
    //canvas.Divide(3,1);
 
    TPad pad1("p1","p1", 0.0, 0.0, 0.2, 1.0);
    TPad pad2("p2","p2", 0.2, 0.0, 0.8, 1.0);
    TPad pad3("p3","p3", 0.8, 0.0, 1.0, 1.0);
    pad1.Draw();
    pad2.Draw();
    pad3.Draw();

    TH2F barrelmap("EB","EB",360,1,360, 171, -85,86);
    TH2F endcmap_p("EE+","EE+",100,1,101,100,1,101);
    TH2F endcmap_m("EE-","EE-",100,1,101,100,1,101);

    const int kSides       = 2;
    const int kBarlRings   = EBDetId::MAX_IETA;
    const int kBarlWedges  = EBDetId::MAX_IPHI;
    const int kEndcWedgesX = EEDetId::IX_MAX;
    const int kEndcWedgesY = EEDetId::IY_MAX;

    for (int sign=0; sign<kSides; sign++) {

       int thesign = sign==1 ? 1:-1;

       for (int ieta=0; ieta<kBarlRings; ieta++) {
         for (int iphi=0; iphi<kBarlWedges; iphi++) {
           EBDetId id((ieta+1)*thesign, iphi+1);
           barrelmap.Fill(iphi+1,ieta*thesign + thesign, object()[id.rawId()]);
         }
       }

       for (int ix=0; ix<kEndcWedgesX; ix++) {
         for (int iy=0; iy<kEndcWedgesY; iy++) {
           if (! EEDetId::validDetId(ix+1,iy+1,thesign)) continue;
           EEDetId id(ix+1,iy+1,thesign);
    
           if (thesign==1) {
             endcmap_p.Fill(ix+1,iy+1,object()[id.rawId()]);
           }
           else{ 
             endcmap_m.Fill(ix+1,iy+1,object()[id.rawId()]);
        
           }
         }//iy
       }//ix



    }

    
    //canvas.cd(1);
    pad1.cd();
    endcmap_m.SetStats(0);
    endcmap_m.Draw("colz");
    //canvas.cd(2);
    pad2.cd();
    barrelmap.SetStats(0);
    barrelmap.Draw("colz");
    //canvas.cd(3);
    pad3.cd();
    endcmap_p.SetStats(0);
    endcmap_p.Draw("colz");

    canvas.SaveAs(filename.c_str());
    return filename;
  }
template<>
std::string cond::PayLoadInspector< DTCCBConfig >::plot ( std::string const &  filename,
std::string const &  ,
std::vector< int > const &  ,
std::vector< float > const &   
) const

Definition at line 48 of file DTCCBConfigPyWrapper.cc.

References f, alignmentValidation::fname, and AlCaHLTBitMon_QueryRunRegistry::string.

                                                                                   {
    std::string fname = filename + ".png";
    std::ofstream f(fname.c_str());
    return fname;
  }
template<>
std::string cond::PayLoadInspector< RPCObImon >::plot ( std::string const &  filename,
std::string const &  str,
std::vector< int > const &  vInt,
std::vector< float > const &  vFlt 
) const

Definition at line 275 of file RPCObImonPyWrapper.cc.

References builder_last_value_cfg::authPath, trackerHits::c, cond::DbConnection::configuration(), cond::DbConnection::configure(), cond::DbConnection::createSession(), cond::rpcobgas::day, cond::DbSession::getTypedObject(), i, create_public_lumi_plots::leg, cond::linearF(), Association::map, RPCObPVSSmap::ObIDMap_rpc, dbtoconf::object, cond::DbSession::open(), AlCaHLTBitMon_ParallelJobs::p, p1, p2, p4, funct::pow(), plotscripts::rms(), cond::DbConnectionConfiguration::setAuthenticationPath(), mathSSE::sqrt(), cond::DbTransaction::start(), AlCaHLTBitMon_QueryRunRegistry::string, cond::rpcobgas::time, cond::toUNIX(), cond::DbSession::transaction(), and relativeConstraints::value.

                                                                                    {

    gStyle->SetPalette(1);

    TH1D *iDistr=new TH1D("iDistr","IOV-averaged Current Distribution;Average Current (#muA);Entries/0.2 #muA",500,0.,100.);
    TH1D *rmsDistr=new TH1D("rmsDistr","RMS over IOV-Current Distribution;Current RMS (#muA);Entries/0.2 #muA",5000,0.,1000.);

    //BEGIN OF NEW DB-SESSION PART
    //hardcoded values
    std::string authPath="/afs/cern.ch/cms/DB/conddb";
    std::string conString="oracle://cms_orcoff_prod/CMS_COND_31X_RPC";
    
    //frontend sends token instead of filename
    std::string token="[DB=00000000-0000-0000-0000-000000000000][CNT=RPCObPVSSmap][CLID=53B2D2D9-1F4E-9CA9-4D71-FFCCA123A454][TECH=00000B01][OID=0000000C-00000000]";
    
    //make connection object
    DbConnection dbConn;
    
    //set in configuration object authentication path
    dbConn.configuration().setAuthenticationPath(authPath);
    dbConn.configure();
    
    //create session object from connection
    DbSession dbSes=dbConn.createSession();
    
    //try to make connection
    dbSes.open(conString,true);
    
    //start a transaction (true=readOnly)
    dbSes.transaction().start(true);
    
    //get the actual object
    boost::shared_ptr<RPCObPVSSmap> pvssPtr;
    pvssPtr=dbSes.getTypedObject<RPCObPVSSmap>(token);

    //we have the object...
    std::vector<RPCObPVSSmap::Item> pvssCont=pvssPtr->ObIDMap_rpc;
    //END OF NEW DB-SESSION PART

    std::vector<RPCObImon::I_Item> const & imon = object().ObImon_rpc;
    
    //    RPCRunIOV *iovHelp=new RPCRunIOV();
    
    std::map<int,std::pair<std::vector<double>,std::vector<double> > > dpidMap;
    for(unsigned int i = 0;i < imon.size(); ++i){
      for(unsigned int p = 0; p < pvssCont.size(); ++p){
        if(imon[i].dpid!=pvssCont[p].dpid || pvssCont[p].suptype!=0 || pvssCont[p].region!=0)continue;
        if(dpidMap.find(imon[i].dpid)==dpidMap.end()){
          std::vector<double> dumVec1;dumVec1.push_back(imon[i].value);
          std::vector<double> dumVec2;dumVec2.push_back((double)/*iovHelp->*/toUNIX(imon[i].day,imon[i].time));
          dpidMap[imon[i].dpid]=make_pair(dumVec1,dumVec2);
        }
        else {
          dpidMap[imon[i].dpid].first.push_back(imon[i].value);
          dpidMap[imon[i].dpid].second.push_back((double)/*iovHelp->*/toUNIX(imon[i].day,imon[i].time));
        }
      }
    }
    
    //    delete iovHelp;

    double maxMean(-1.),maxRms(-1.);
    double minMean(9999.),minRms(9999.);
    std::map<int,std::pair<std::vector<double>,std::vector<double> > >::const_iterator minIt,maxIt;
    std::vector<float> means,rmss;
    for(std::map<int,std::pair<std::vector<double>,std::vector<double> > >::const_iterator mIt=dpidMap.begin();
        mIt!=dpidMap.end();mIt++){
      std::pair<double, std::vector<double> > meanAndVals =
        make_pair(accumulate(mIt->second.first.begin(),mIt->second.first.end(),0.)/(double)mIt->second.first.size(),mIt->second.first);
       
      iDistr->Fill(meanAndVals.first);
      if(meanAndVals.first>maxMean)maxMean=meanAndVals.first;
      if(meanAndVals.first<minMean)minMean=meanAndVals.first;
      double rms(0.);
      for(std::vector<double>::iterator rmsIt=meanAndVals.second.begin();
          rmsIt!=meanAndVals.second.end();++rmsIt){
        rms+=pow((*rmsIt-meanAndVals.first)/(double)meanAndVals.second.size(),2);
      }
      rmsDistr->Fill(sqrt(rms));
      if(sqrt(rms)>maxRms){
        maxRms=sqrt(rms);
        maxIt=mIt;
      }
      if(sqrt(rms)<minRms){
        minRms=sqrt(rms);
        if(mIt->second.first.size()>10)
          minIt=mIt;
      }
      means.push_back(meanAndVals.first);
      rmss.push_back(sqrt(rms));
    }

    if(maxMean<100.)
      iDistr->GetXaxis()->SetRangeUser(minMean-0.00001,maxMean+1.);
    if(maxRms<1000.)
      rmsDistr->GetXaxis()->SetRangeUser(minRms-0.00001,maxRms+1.);
    
    TCanvas c("Imon","Imon",1200,700);
    c.Divide(2,2);
    
    TVirtualPad *p1=c.cd(1);
    p1->SetLogy(1);
    iDistr->SetFillColor(4);
    iDistr->SetLineColor(4);
    iDistr->Draw();
    c.cd(1);
    
    TVirtualPad *p2=c.cd(2);
    p2->SetLogy(1);
    rmsDistr->SetFillColor(3);
    rmsDistr->SetLineColor(3);
    rmsDistr->Draw();

    c.cd(3);
    TGraph *iRmsDistr=new TGraph(means.size(),static_cast<const float *>(&rmss[0]),static_cast<const float *>(&means[0]));
    iRmsDistr->SetMarkerStyle(7);
    iRmsDistr->SetMarkerColor(2);
    TF1 *func=new TF1("linearF",linearF,minRms,maxRms,1);
    iRmsDistr->Fit(func,"r");
    iRmsDistr->GetXaxis()->SetTitle("Current RMS (#muA)");
    iRmsDistr->GetYaxis()->SetTitle("Current Means (#muA)");
    iRmsDistr->Draw("AP");
    

    TVirtualPad *p4=c.cd(4);
    p4->SetLogy(1);
    TMultiGraph *mProf=new TMultiGraph();
    TLegend *leg=new TLegend(0.65,0.91,0.99,0.99);
    TGraph *minProf=new TGraph(minIt->second.first.size(),&minIt->second.second[0],&minIt->second.first[0]);
    TGraph *maxProf=new TGraph(maxIt->second.first.size(),&maxIt->second.second[0],&maxIt->second.first[0]);
    minProf->SetMarkerStyle(20);
    maxProf->SetMarkerStyle(20);
    minProf->SetMarkerColor(2);
    maxProf->SetMarkerColor(4);
    mProf->Add(minProf);
    leg->AddEntry(minProf,"I vs IOV for Min RMS case","lpf");
    mProf->Add(maxProf);
    leg->AddEntry(maxProf,"I vs IOV for Max RMS case","lpf");
    leg->Draw();
    mProf->Draw("AP");
    mProf->GetXaxis()->SetTitle("IOV");
    mProf->GetYaxis()->SetTitle("I (#muA)");

    c.SaveAs(filename.c_str());

    return filename.c_str();

  }
template<>
std::string cond::PayLoadInspector< EcalFunParams >::plot ( std::string const &  filename,
std::string const &  ,
std::vector< int > const &  ,
std::vector< float > const &   
) const

Definition at line 65 of file EcalFunParamsPyWrapper.cc.

References gather_cfg::cout, and lut2db_cfg::filename.

                                                                                    {
    std::cout << "EcalFunParamsPyWrapper plot " << std::endl;
    return filename;
  }  // plot
template<>
std::string cond::PayLoadInspector< RPCObPVSSmap >::plot ( std::string const &  filename,
std::string const &  ,
std::vector< int > const &  ,
std::vector< float > const &   
) const

Definition at line 47 of file RPCObPVSSmapPyWrapper.cc.

References f, alignmentValidation::fname, and AlCaHLTBitMon_QueryRunRegistry::string.

                                                                                   {
    std::string fname = filename + ".png";
    std::ofstream f(fname.c_str());
    return fname;
  }
template<>
std::string cond::PayLoadInspector< RPCObTemp >::plot ( std::string const &  filename,
std::string const &  ,
std::vector< int > const &  ,
std::vector< float > const &   
) const

Definition at line 240 of file RPCObTempPyWrapper.cc.

References builder_last_value_cfg::authPath, begin, trackerHits::c, cond::DbConnection::configuration(), cond::DbConnection::configure(), gather_cfg::cout, cond::DbConnection::createSession(), end, spr::find(), first, cond::DbSession::getTypedObject(), timingPdfMaker::histo, i, recoMuon::in, geometryCSVtoXML::line, Association::map, max(), min, RPCGeomServ::name(), RPCObPVSSmap::ObIDMap_rpc, dbtoconf::object, cond::DbSession::open(), AlCaHLTBitMon_ParallelJobs::p, pos, relativeConstraints::ring, edm::second(), cond::DbConnectionConfiguration::setAuthenticationPath(), mathSSE::sqrt(), cond::DbTransaction::start(), relativeConstraints::station, AlCaHLTBitMon_QueryRunRegistry::string, groupFilesInBlocks::temp, cond::DbSession::transaction(), relativeConstraints::value, w(), xPos, and yPos.

                                                                                                                          {

    std::map<std::string,std::pair<float,float> > geoMap;
    std::ifstream mapFile("/afs/cern.ch/user/s/stupputi/public/barDetPositions.txt",ifstream::in);
    std::string chamb;
    float xPos,yPos;
    while(mapFile >> chamb >> xPos >> yPos)
      geoMap[chamb]=make_pair(xPos,yPos);
    std::cout<<"size "<<geoMap.size()<<std::endl;
    gStyle->SetPalette(1);    

    //BEGIN OF NEW DB-SESSION PART
    //hardcoded values
    std::string authPath="/afs/cern.ch/cms/DB/conddb";
    std::string conString="oracle://cms_orcoff_prod/CMS_COND_31X_RPC";
    
    //frontend sends token instead of filename
    std::string token="[DB=00000000-0000-0000-0000-000000000000][CNT=RPCObPVSSmap][CLID=53B2D2D9-1F4E-9CA9-4D71-FFCCA123A454][TECH=00000B01][OID=0000000C-00000000]";
    
    //make connection object
    DbConnection dbConn;
    
    //set in configuration object authentication path
    dbConn.configuration().setAuthenticationPath(authPath);
    dbConn.configure();
    
    //create session object from connection
    DbSession dbSes=dbConn.createSession();
    
    //try to make connection
    dbSes.open(conString,true);
    
    //start a transaction (true=readOnly)
    dbSes.transaction().start(true);
    
    //get the actual object
    boost::shared_ptr<RPCObPVSSmap> pvssPtr;
    pvssPtr=dbSes.getTypedObject<RPCObPVSSmap>(token);

    //we have the object...
    std::vector<RPCObPVSSmap::Item> pvssCont=pvssPtr->ObIDMap_rpc;
    //END OF NEW DB-SESSION PART

    std::vector<RPCObTemp::T_Item> const & temp = object().ObTemp_rpc;
    
    std::map<int,std::map<int,std::vector<double> > > valMap;
    std::map<int,std::string> detMap;
    for(unsigned int i = 0;i < temp.size(); ++i){
      for(unsigned int p = 0; p < pvssCont.size(); ++p){
        if(temp[i].dpid!=pvssCont[p].dpid || pvssCont[p].suptype!=4 || pvssCont[p].region!=0)continue;
        int whl(pvssCont[p].ring);
        if(valMap.find(whl)==valMap.end()){       
          std::map<int,std::vector<double> > dumMap;
          std::vector<double> dumVec;dumVec.push_back(temp[i].value);
          dumMap[temp[i].dpid]=dumVec;
          valMap[whl]=dumMap;
        }
        else {
          if(valMap[whl].find(temp[i].dpid)==valMap[whl].end()){
            std::vector<double> dumVec;dumVec.push_back(temp[i].value);
            (valMap[whl])[temp[i].dpid]=dumVec;
          }
          else 
            (valMap[whl])[temp[i].dpid].push_back(temp[i].value);
        }
        if(detMap.find(temp[i].dpid)==detMap.end()){
          RPCDetId rpcId(pvssCont[p].region,pvssCont[p].ring,pvssCont[p].station,pvssCont[p].sector,pvssCont[p].layer,pvssCont[p].subsector,1);
          RPCGeomServ chGS(rpcId);
          std::string chName(chGS.name());
          std::string::size_type pos(chName.find("_S"));
          if(pos!=std::string::npos)
            chName=chName.substr(0,pos+5);
          else
            chName=chName.substr(0,chName.find("_CH")+5);                 
          detMap[temp[i].dpid]=chName;
        }       
      }
    }
    
    float histoScale(710),axisScale(750);
    int flip(-1);
    float incr(0.045*histoScale);
    float midSc(0.267949192431123),diagSc(sqrt((1.+(midSc*midSc))/2.));
    float dists[]={0.558f*histoScale,0.607f*histoScale,0.697f*histoScale,/*0.6971f*xSc,0.7464f*xSc,*/0.823f*histoScale,0.967f*histoScale};

    TCanvas *c=new TCanvas("Temp","Temp",1200,700);
    c->Divide(3,2);

    for(int w=-2;w<3;w++){
      //  if(w!=1)continue;
      int canv(w+3);
      c->cd(canv);

      char wNumb[8];
      sprintf(wNumb,"Wheel %i",w);

      TH2F *histo= new TH2F("","",(2*axisScale)/incr,(-1)*axisScale,axisScale,(2*axisScale)/incr,(-1)*axisScale,axisScale);
      histo->GetXaxis()->SetTickLength(0);histo->GetXaxis()->SetLabelColor(0);histo->GetXaxis()->SetTitle("Temperature (#circC)");
      histo->GetYaxis()->SetTickLength(0);histo->GetYaxis()->SetLabelColor(0);
    
      double min(1000),max(-1);
      for(std::map<int,std::vector<double> >::const_iterator mIt=valMap[w].begin();
          mIt!=valMap[w].end();mIt++){
       
        std::pair<double, std::vector<double> > meanAndVals =
          make_pair(accumulate(mIt->second.begin(),mIt->second.end(),0.)/(double)mIt->second.size(),mIt->second);
        std::string chName(detMap[mIt->first]);
        histo->Fill(geoMap[chName].first,geoMap[chName].second,meanAndVals.first);
        if(meanAndVals.first<min)min=meanAndVals.first;
        if(meanAndVals.first>max)max=meanAndVals.first;
        std::cout<<chName<<" "<<geoMap[chName].first<<" "<<geoMap[chName].second<<" "<<meanAndVals.first<<std::endl;
      }

      histo->GetZaxis()->SetRangeUser(min,max);
      histo->Draw("colz");

      TPaveStats *ptstats = new TPaveStats(0.98,0.98,0.99,0.99,"br");
      histo->GetListOfFunctions()->Add(ptstats);
      histo->Draw("same");

      TPaveText *pt=new TPaveText(-235,763,248,860,"br");
      pt->SetFillColor(19);
      pt->AddText(wNumb);
      pt->Draw("same");

      TLine *line = new TLine();
      for(int i=0;i<5;i++){
        float scDist(midSc*dists[i]),onDiag(diagSc*dists[i]);
        float furDist(dists[i]+incr),scFurDist(midSc*furDist),furOnDiag(diagSc*furDist);
      
        line=new TLine(dists[i],flip*scDist,dists[i],scDist);line->Draw();//S01
        line=new TLine(dists[i],flip*scDist,furDist,flip*scDist);line->Draw();
        line=new TLine(dists[i],scDist,furDist,scDist);line->Draw();
        line=new TLine(furDist,flip*scDist,furDist,scDist);line->Draw();
        line=new TLine(flip*dists[i],flip*scDist,flip*dists[i],scDist);line->Draw();//S07               
        line=new TLine(flip*dists[i],flip*scDist,flip*furDist,flip*scDist);line->Draw();
        line=new TLine(flip*dists[i],scDist,flip*furDist,scDist);line->Draw();
        line=new TLine(flip*furDist,flip*scDist,flip*furDist,scDist);line->Draw();              
        line=new TLine(onDiag,onDiag,dists[i],scDist);line->Draw();//S02
        line=new TLine(onDiag,onDiag,furOnDiag,furOnDiag);line->Draw();
        line=new TLine(dists[i],scDist,furDist,scFurDist);line->Draw();
        line=new TLine(furOnDiag,furOnDiag,furDist,scFurDist);line->Draw();
        line=new TLine(flip*onDiag,flip*onDiag,flip*dists[i],flip*scDist);line->Draw();//S08            
        line=new TLine(flip*onDiag,flip*onDiag,flip*furOnDiag,flip*furOnDiag);line->Draw();
        line=new TLine(flip*dists[i],flip*scDist,flip*furDist,flip*scFurDist);line->Draw();
        line=new TLine(flip*furOnDiag,flip*furOnDiag,flip*furDist,flip*scFurDist);line->Draw();
        line=new TLine(onDiag,onDiag,scDist,dists[i]);line->Draw();//S03
        line=new TLine(onDiag,onDiag,furOnDiag,furOnDiag);line->Draw();
        line=new TLine(scDist,dists[i],scFurDist,furDist);line->Draw();
        line=new TLine(furOnDiag,furOnDiag,scFurDist,furDist);line->Draw();
        line=new TLine(flip*onDiag,flip*onDiag,flip*scDist,flip*dists[i]);line->Draw();//S09
        line=new TLine(flip*onDiag,flip*onDiag,flip*furOnDiag,flip*furOnDiag);line->Draw();
        line=new TLine(flip*scDist,flip*dists[i],flip*scFurDist,flip*furDist);line->Draw();
        line=new TLine(flip*furOnDiag,flip*furOnDiag,flip*scFurDist,flip*furDist);line->Draw();
        if(i==4){
        
          line=new TLine(flip*scDist,dists[i],-0.005,dists[i]);line->Draw();//S04-
          line=new TLine(flip*scDist,dists[i],flip*scDist,furDist);line->Draw();
          line=new TLine(-0.005,dists[i],-0.005,furDist);line->Draw();
          line=new TLine(flip*scDist,furDist,-0.005,furDist);line->Draw();                      
          line=new TLine(0.005,dists[i],scDist,dists[i]);line->Draw();//S04+
          line=new TLine(scDist,dists[i],scDist,furDist);line->Draw();
          line=new TLine(0.005,dists[i],0.005,furDist);line->Draw();
          line=new TLine(scDist,furDist,0.005,furDist);line->Draw();                    
          line=new TLine(flip*scDist,flip*dists[i],-0.005,flip*dists[i]);line->Draw();//S10+
          line=new TLine(flip*scDist,flip*dists[i],flip*scDist,flip*furDist);line->Draw();
          line=new TLine(-0.005,flip*dists[i],-0.005,flip*furDist);line->Draw();
          line=new TLine(flip*scDist,flip*furDist,-0.005,flip*furDist);line->Draw();
          line=new TLine(0.005,flip*dists[i],scDist,flip*dists[i]);line->Draw();//S10-
          line=new TLine(0.005,flip*dists[i],0.005,flip*furDist);line->Draw();
          line=new TLine(scDist,flip*dists[i],scDist,flip*furDist);line->Draw();
          line=new TLine(scDist,flip*furDist,0.005,flip*furDist);line->Draw();                  
        }
        else{
          line=new TLine(flip*scDist,dists[i],scDist,dists[i]);line->Draw();//S04
          line=new TLine(flip*scDist,dists[i],flip*scDist,furDist);line->Draw();
          line=new TLine(scDist,dists[i],scDist,furDist);line->Draw();
          line=new TLine(flip*scDist,furDist,scDist,furDist);line->Draw();
          line=new TLine(flip*scDist,flip*dists[i],scDist,flip*dists[i]);line->Draw();//S10
          line=new TLine(flip*scDist,flip*dists[i],flip*scDist,flip*furDist);line->Draw();
          line=new TLine(scDist,flip*dists[i],scDist,flip*furDist);line->Draw();
          line=new TLine(flip*scDist,flip*furDist,scDist,flip*furDist);line->Draw();
        }
        line=new TLine(flip*onDiag,onDiag,flip*scDist,dists[i]);line->Draw();//S05
        line=new TLine(flip*onDiag,onDiag,flip*furOnDiag,furOnDiag);line->Draw();
        line=new TLine(flip*scDist,dists[i],flip*scFurDist,furDist);line->Draw();
        line=new TLine(flip*furOnDiag,furOnDiag,flip*scFurDist,furDist);line->Draw();
        line=new TLine(onDiag,flip*onDiag,scDist,flip*dists[i]);line->Draw();//S11              
        line=new TLine(onDiag,flip*onDiag,furOnDiag,flip*furOnDiag);line->Draw();
        line=new TLine(scDist,flip*dists[i],scFurDist,flip*furDist);line->Draw();
        line=new TLine(furOnDiag,flip*furOnDiag,scFurDist,flip*furDist);line->Draw();
        line=new TLine(flip*onDiag,onDiag,flip*dists[i],scDist);line->Draw();//S06
        line=new TLine(flip*onDiag,onDiag,flip*furOnDiag,furOnDiag);line->Draw();
        line=new TLine(flip*dists[i],scDist,flip*furDist,scFurDist);line->Draw();
        line=new TLine(flip*furOnDiag,furOnDiag,flip*furDist,scFurDist);line->Draw();
        line=new TLine(onDiag,flip*onDiag,dists[i],flip*scDist);line->Draw();//S12
        line=new TLine(onDiag,flip*onDiag,furOnDiag,flip*furOnDiag);line->Draw();
        line=new TLine(dists[i],flip*scDist,furDist,flip*scFurDist);line->Draw();
        line=new TLine(furOnDiag,flip*furOnDiag,furDist,flip*scFurDist);line->Draw();
      }
    }
        
    c->SaveAs(filename.c_str());
    return filename.c_str();

  }
template<>
std::string cond::PayLoadInspector< EcalGainRatios >::plot ( std::string const &  filename,
std::string const &  ,
std::vector< int > const &  ,
std::vector< float > const &   
) const

Definition at line 97 of file EcalGainRatiosPyWrapper.cc.

References svgfig::canvas(), lut2db_cfg::filename, i, EEDetId::IX_MAX, EEDetId::IY_MAX, kBarlRings, kBarlWedges, kEndcWedgesX, kEndcWedgesY, kSides, prof2calltree::l, EBDetId::MAX_IETA, EBDetId::MAX_IPHI, getGTfromDQMFile::obj, EEDetId::validDetId(), x, and detailsBasic3DVector::y.

                                                                                     {
    gStyle->SetPalette(1);
    TCanvas canvas("CC map","CC map",840,600);
    float xmi[3] = {0.0 , 0.22, 0.78};
    float xma[3] = {0.22, 0.78, 1.00};
    TPad*** pad = new TPad**[2];
    for (int gId = 0; gId < 2; gId++) {
      pad[gId] = new TPad*[3];
      for (int obj = 0; obj < 3; obj++) {
        float yma = 1.- (0.34 * gId);
        float ymi = yma - 0.32;
        pad[gId][obj] = new TPad(Form("p_%i_%i", obj, gId),Form("p_%i_%i", obj, gId),
                                 xmi[obj], ymi, xma[obj], yma);
        pad[gId][obj]->Draw();
      }
    }
    TPad** pad1 = new TPad*[4];
    for (int obj = 0; obj < 4; obj++) {
      float xmi = 0.26 * obj;
      float xma = xmi + 0.22;
      pad1[obj] = new TPad(Form("p1_%i", obj),Form("p1_%i", obj),
                           xmi, 0.0, xma, 0.32);
      pad1[obj]->Draw();
    }
    const int kSides       = 2;
    const int kBarlRings   = EBDetId::MAX_IETA;
    const int kBarlWedges  = EBDetId::MAX_IPHI;
    const int kEndcWedgesX = EEDetId::IX_MAX;
    const int kEndcWedgesY = EEDetId::IY_MAX;

    TH2F* barrel_12O6 = new TH2F("EB_12O6","EB gain 12/6",360,0,360, 170, -85,85);
    TH2F* endc_p_12O6 = new TH2F("EE+_12O6","EE+ gain 12/6",100,1,101,100,1,101);
    TH2F* endc_m_12O6 = new TH2F("EE-_12O6","EE- gain 12/6",100,1,101,100,1,101);
    TH2F* barrel_6O1 = new TH2F("EB_6O1","EB gain 6/1",360,0,360, 170, -85,85);
    TH2F* endc_p_6O1 = new TH2F("EE+_6O1","EE+ gain 6/1",100,1,101,100,1,101);
    TH2F* endc_m_6O1 = new TH2F("EE-_6O1","EE- gain 6/1",100,1,101,100,1,101);
    TH1F* b_12O6 = new TH1F("b_12O6","EB gain 12/6", 50, 1.8, 2.1);
    TH1F* e_12O6 = new TH1F("e_12O6","EE gain 12/6", 50, 1.8, 2.1);
    TH1F* b_6O1 = new TH1F("b_6O1","EB gain 6/1", 100, 5.3, 6.3);
    TH1F* e_6O1 = new TH1F("e_6O1","EE gain 6/1", 100, 5.3, 6.3);

    for (int sign=0; sign < kSides; sign++) {
      int thesign = sign==1 ? 1:-1;

      for (int ieta=0; ieta<kBarlRings; ieta++) {
        for (int iphi=0; iphi<kBarlWedges; iphi++) {
          EBDetId id((ieta+1)*thesign, iphi+1);
          float y = -1 - ieta;
          if(sign == 1) y = ieta;
          barrel_12O6->Fill(iphi, y, object()[id.rawId()].gain12Over6());
          barrel_6O1->Fill(iphi, y, object()[id.rawId()].gain6Over1());
          b_12O6->Fill(object()[id.rawId()].gain12Over6());
          b_6O1->Fill(object()[id.rawId()].gain6Over1());
        }  // iphi
      }   // ieta

      for (int ix=0; ix<kEndcWedgesX; ix++) {
        for (int iy=0; iy<kEndcWedgesY; iy++) {
          if (! EEDetId::validDetId(ix+1,iy+1,thesign)) continue;
          EEDetId id(ix+1,iy+1,thesign);
          if (thesign==1) {
            endc_p_12O6->Fill(ix+1,iy+1,object()[id.rawId()].gain12Over6());
            endc_p_6O1->Fill(ix+1,iy+1,object()[id.rawId()].gain6Over1());
          }
          else{ 
            endc_m_12O6->Fill(ix+1,iy+1,object()[id.rawId()].gain12Over6());
            endc_m_6O1->Fill(ix+1,iy+1,object()[id.rawId()].gain6Over1());
          }
          e_12O6->Fill(object()[id.rawId()].gain12Over6());
          e_6O1->Fill(object()[id.rawId()].gain6Over1());
        }  // iy
      }   // ix
    }    // side

    TLine* l = new TLine(0., 0., 0., 0.);
    l->SetLineWidth(1);
    int ixSectorsEE[202] = {
      62, 62, 61, 61, 60, 60, 59, 59, 58, 58, 56, 56, 46, 46, 44, 44, 43, 43, 42, 42, 
      41, 41, 40, 40, 41, 41, 42, 42, 43, 43, 44, 44, 46, 46, 56, 56, 58, 58, 59, 59, 
      60, 60, 61, 61, 62, 62,  0,101,101, 98, 98, 96, 96, 93, 93, 88, 88, 86, 86, 81, 
      81, 76, 76, 66, 66, 61, 61, 41, 41, 36, 36, 26, 26, 21, 21, 16, 16, 14, 14,  9,
      9,  6,  6,  4,  4,  1,  1,  4,  4,  6,  6,  9,  9, 14, 14, 16, 16, 21, 21, 26, 
      26, 36, 36, 41, 41, 61, 61, 66, 66, 76, 76, 81, 81, 86, 86, 88, 88, 93, 93, 96, 
      96, 98, 98,101,101,  0, 62, 66, 66, 71, 71, 81, 81, 91, 91, 93,  0, 62, 66, 66, 
      91, 91, 98,  0, 58, 61, 61, 66, 66, 71, 71, 76, 76, 81, 81,  0, 51, 51,  0, 44, 
      41, 41, 36, 36, 31, 31, 26, 26, 21, 21,  0, 40, 36, 36, 11, 11,  4,  0, 40, 36, 
      36, 31, 31, 21, 21, 11, 11,  9,  0, 46, 46, 41, 41, 36, 36,  0, 56, 56, 61, 61, 66, 66};

    int iySectorsEE[202] = {
      51, 56, 56, 58, 58, 59, 59, 60, 60, 61, 61, 62, 62, 61, 61, 60, 60, 59, 59, 58, 
      58, 56, 56, 46, 46, 44, 44, 43, 43, 42, 42, 41, 41, 40, 40, 41, 41, 42, 42, 43, 
      43, 44, 44, 46, 46, 51,  0, 51, 61, 61, 66, 66, 76, 76, 81, 81, 86, 86, 88, 88, 
      93, 93, 96, 96, 98, 98,101,101, 98, 98, 96, 96, 93, 93, 88, 88, 86, 86, 81, 81, 
      76, 76, 66, 66, 61, 61, 41, 41, 36, 36, 26, 26, 21, 21, 16, 16, 14, 14,  9,  9, 
      6,  6,  4,  4,  1,  1,  4,  4,  6,  6,  9,  9, 14, 14, 16, 16, 21, 21, 26, 26, 
      36, 36, 41, 41, 51,  0, 46, 46, 41, 41, 36, 36, 31, 31, 26, 26,  0, 51, 51, 56, 
      56, 61, 61,  0, 61, 61, 66, 66, 71, 71, 76, 76, 86, 86, 88,  0, 62,101,  0, 61, 
      61, 66, 66, 71, 71, 76, 76, 86, 86, 88,  0, 51, 51, 56, 56, 61, 61,  0, 46, 46, 
      41, 41, 36, 36, 31, 31, 26, 26,  0, 40, 31, 31, 16, 16,  6,  0, 40, 31, 31, 16, 16,  6};
  
    float min12O6 = 1.8, max12O6 = 2.1, min6O1 = 5.3, max6O1 = 6.3;
    pad[0][0]->cd();
    endc_m_12O6->SetStats(0);
    endc_m_12O6->SetMaximum(max12O6);
    endc_m_12O6->SetMinimum(min12O6);
    endc_m_12O6->Draw("colz");
    for ( int i=0; i<201; i=i+1) {
      if ( (ixSectorsEE[i]!=0 || iySectorsEE[i]!=0) && 
           (ixSectorsEE[i+1]!=0 || iySectorsEE[i+1]!=0) ) {
        l->DrawLine(ixSectorsEE[i], iySectorsEE[i], 
                    ixSectorsEE[i+1], iySectorsEE[i+1]);
        l->SetLineWidth(0.2);
      }
    }
    pad[0][1]->cd();
    barrel_12O6->SetStats(0);
    barrel_12O6->SetMaximum(max12O6);
    barrel_12O6->SetMinimum(min12O6);
    barrel_12O6->Draw("colz");
    for(int i = 0; i <17; i++) {
      Double_t x = 20.+ (i *20);
      l = new TLine(x,-85.,x,86.);
      l->Draw();
    }
    l = new TLine(0.,0.,360.,0.);
    l->Draw();
    pad[0][2]->cd();
    endc_p_12O6->SetStats(0);
    endc_p_12O6->SetMaximum(max12O6);
    endc_p_12O6->SetMinimum(min12O6);
    endc_p_12O6->Draw("colz");
    for ( int i=0; i<201; i=i+1) {
      if ( (ixSectorsEE[i]!=0 || iySectorsEE[i]!=0) && 
           (ixSectorsEE[i+1]!=0 || iySectorsEE[i+1]!=0) ) {
        l->DrawLine(ixSectorsEE[i], iySectorsEE[i], 
                    ixSectorsEE[i+1], iySectorsEE[i+1]);
        l->SetLineWidth(0.2);
      }
    }
    pad[1][0]->cd();
    endc_m_6O1->SetStats(0);
    endc_m_6O1->SetMaximum(max6O1);
    endc_m_6O1->SetMinimum(min6O1);
    endc_m_6O1->Draw("colz");
    for ( int i=0; i<201; i=i+1) {
      if ( (ixSectorsEE[i]!=0 || iySectorsEE[i]!=0) && 
           (ixSectorsEE[i+1]!=0 || iySectorsEE[i+1]!=0) ) {
        l->DrawLine(ixSectorsEE[i], iySectorsEE[i], 
                    ixSectorsEE[i+1], iySectorsEE[i+1]);
        l->SetLineWidth(0.2);
      }
    }
    pad[1][1]->cd();
    barrel_6O1->SetStats(0);
    barrel_6O1->SetMaximum(max6O1);
    barrel_6O1->SetMinimum(min6O1);
    barrel_6O1->Draw("colz");
    for(int i = 0; i <17; i++) {
      Double_t x = 20.+ (i *20);
      l = new TLine(x,-85.,x,86.);
      l->Draw();
    }
    l = new TLine(0.,0.,360.,0.);
    l->Draw();
    pad[1][2]->cd();
    endc_p_6O1->SetStats(0);
    endc_p_6O1->SetMaximum(max6O1);
    endc_p_6O1->SetMinimum(min6O1);
    endc_p_6O1->Draw("colz");
    for ( int i=0; i<201; i=i+1) {
      if ( (ixSectorsEE[i]!=0 || iySectorsEE[i]!=0) && 
           (ixSectorsEE[i+1]!=0 || iySectorsEE[i+1]!=0) ) {
        l->DrawLine(ixSectorsEE[i], iySectorsEE[i], 
                    ixSectorsEE[i+1], iySectorsEE[i+1]);
        l->SetLineWidth(0.2);
      }
    }

    gStyle->SetOptStat(111110);
    pad1[0]->cd();
    b_12O6->Draw();
    pad1[0]->Update();
    TPaveStats *st = (TPaveStats*)b_12O6->FindObject("stats");
    st->SetX1NDC(0.6); //new x start position
    st->SetY1NDC(0.75); //new y start position
    pad1[1]->cd();
    e_12O6->Draw();
    pad1[0]->Update();
    st = (TPaveStats*)e_12O6->FindObject("stats");
    st->SetX1NDC(0.6); //new x start position
    st->SetY1NDC(0.75); //new y start position
    pad1[2]->cd();
    b_6O1->Draw();
    pad1[0]->Update();
    st = (TPaveStats*)b_6O1->FindObject("stats");
    st->SetX1NDC(0.6); //new x start position
    st->SetY1NDC(0.75); //new y start position
    pad1[3]->cd();
    e_6O1->Draw();
    pad1[0]->Update();
    st = (TPaveStats*)e_6O1->FindObject("stats");
    st->SetX1NDC(0.6); //new x start position
    st->SetY1NDC(0.75); //new y start position

    canvas.SaveAs(filename.c_str());
    return filename;
  }
template<>
std::string cond::PayLoadInspector< RPCObVmon >::plot ( std::string const &  filename,
std::string const &  str,
std::vector< int > const &  ,
std::vector< float > const &   
) const

Definition at line 293 of file RPCObVmonPyWrapper.cc.

References builder_last_value_cfg::authPath, trackerHits::c, cond::DbConnection::configuration(), cond::DbConnection::configure(), gather_cfg::cout, cond::DbConnection::createSession(), cond::DbSession::getTypedObject(), i, create_public_lumi_plots::leg, Association::map, RPCObPVSSmap::ObIDMap_rpc, dbtoconf::object, cond::DbSession::open(), AlCaHLTBitMon_ParallelJobs::p, funct::pow(), plotscripts::rms(), cond::DbConnectionConfiguration::setAuthenticationPath(), mathSSE::sqrt(), cond::DbTransaction::start(), AlCaHLTBitMon_QueryRunRegistry::string, cond::toUNIX(), cond::DbSession::transaction(), and relativeConstraints::value.

                                                                                {
                        
    //std::vector<std::string> strs;
    //std::string str1 = "123@321@edr";
    //boost::split(strs, str1, boost::is_any_of("@"));
    //std::cout << strs[0] << strs[1] << strs[2];

    gStyle->SetPalette(1);

    TH1D *vDistr=new TH1D("vDistr","IOV-averaged HV Distribution;Average HV (V);Entries/0.2 #muA",100,5000.,10000.);
    TH1D *rmsDistr=new TH1D("rmsDistr","RMS over IOV-HV Distribution;HV RMS (V);Entries/0.2 #muA",1000,0.,1000.);//rmsDistr->SetBit(TH1::kCanRebin);

    //BEGIN OF NEW DB-SESSION PART
    //hardcoded values
    std::string authPath="/afs/cern.ch/cms/DB/conddb";
    std::string conString="oracle://cms_orcoff_prod/CMS_COND_31X_RPC";
    
    //frontend sends token instead of filename
    std::string token="[DB=00000000-0000-0000-0000-000000000000][CNT=RPCObPVSSmap][CLID=53B2D2D9-1F4E-9CA9-4D71-FFCCA123A454][TECH=00000B01][OID=0000000C-00000000]";
    
    //make connection object
    DbConnection dbConn;
    
    //set in configuration object authentication path
    dbConn.configuration().setAuthenticationPath(authPath);
    dbConn.configure();
    
    //create session object from connection
    DbSession dbSes=dbConn.createSession();
    
    //try to make connection
    dbSes.open(conString,true);
    
    //start a transaction (true=readOnly)
    dbSes.transaction().start(true);
    
    //get the actual object
    boost::shared_ptr<RPCObPVSSmap> pvssPtr;
    pvssPtr=dbSes.getTypedObject<RPCObPVSSmap>(token);

    //we have the object...
    std::vector<RPCObPVSSmap::Item> pvssCont=pvssPtr->ObIDMap_rpc;
    //END OF NEW DB-SESSION PART

    std::vector<RPCObVmon::V_Item> const & vmon = object().ObVmon_rpc;
    
    std::map<int,std::pair<std::vector<double>,std::vector<double> > > dpidMap;
    for(unsigned int i = 0;i < vmon.size(); ++i){
      for(unsigned int p = 0; p < pvssCont.size(); ++p){
        if(vmon[i].dpid!=pvssCont[p].dpid || pvssCont[p].suptype!=0 || pvssCont[p].region!=0)continue;
        if(dpidMap.find(vmon[i].dpid)==dpidMap.end()){
          std::vector<double> dumVec1;dumVec1.push_back(vmon[i].value);
          std::vector<double> dumVec2;dumVec2.push_back((double)toUNIX(vmon[i].day,vmon[i].time));
          dpidMap[vmon[i].dpid]=make_pair(dumVec1,dumVec2);
        }
        else {
          dpidMap[vmon[i].dpid].first.push_back(vmon[i].value);
          dpidMap[vmon[i].dpid].second.push_back((double)toUNIX(vmon[i].day,vmon[i].time));
        }
      }
    }
    
    double maxMean(-1.),maxRms(-1.);
    double minMean(9999.),minRms(9999.);
    std::map<int,std::pair<std::vector<double>,std::vector<double> > >::const_iterator minIt,maxIt;
    std::vector<float> means,rmss;
    for(std::map<int,std::pair<std::vector<double>,std::vector<double> > >::const_iterator mIt=dpidMap.begin();
        mIt!=dpidMap.end();mIt++){
      std::pair<double, std::vector<double> > meanAndVals =
        make_pair(accumulate(mIt->second.first.begin(),mIt->second.first.end(),0.)/(double)mIt->second.first.size(),mIt->second.first);
       
      vDistr->Fill(meanAndVals.first);
      if(meanAndVals.first>maxMean)maxMean=meanAndVals.first;
      if(meanAndVals.first<minMean)minMean=meanAndVals.first;
      double rms(0.);
      for(std::vector<double>::iterator rmsIt=meanAndVals.second.begin();
          rmsIt!=meanAndVals.second.end();++rmsIt){
        rms+=pow((*rmsIt-meanAndVals.first)/(double)meanAndVals.second.size(),2);
      }
      rmsDistr->Fill(sqrt(rms));std::cout<<sqrt(rms)<<std::endl;
      if(sqrt(rms)>maxRms){
        maxRms=sqrt(rms);
        maxIt=mIt;
      }
      if(sqrt(rms)<minRms){
        minRms=sqrt(rms);
        if(mIt->second.first.size()>5)
          minIt=mIt;
      }
      means.push_back(meanAndVals.first);
      rmss.push_back(sqrt(rms));
    }

    if(maxMean<100.)
      vDistr->GetXaxis()->SetRangeUser(minMean-0.00001,maxMean+1.);
    if(maxRms<1000.)
      rmsDistr->GetXaxis()->SetRangeUser(minRms-0.00001,maxRms+1.);
    
    TCanvas c("Vmon","Vmon",1200,700);
    c.Divide(2,2);
    
    //TVirtualPad *p1=c.cd(1);
    //    p1->SetLogy(1);
    c.cd(1);
    vDistr->SetFillColor(4);
    vDistr->SetLineColor(4);
    vDistr->Draw();
    
    //TVirtualPad *p2=c.cd(2);
    //    p2->SetLogy(1);
    c.cd(2);
    rmsDistr->SetFillColor(3);
    rmsDistr->SetLineColor(3);
    rmsDistr->Draw();

     c.cd(3);
     TGraph *vRmsDistr=new TGraph(means.size(),static_cast<const float *>(&rmss[0]),static_cast<const float *>(&means[0]));
     vRmsDistr->SetMarkerStyle(7);
     vRmsDistr->SetMarkerColor(2);
     //TF1 *func=new TF1("linearF",linearF,minRms,maxRms,1);
     //  vRmsDistr->Fit("linearF","r");
     vRmsDistr->GetXaxis()->SetTitle("HV RMS (V)");
     vRmsDistr->GetYaxis()->SetTitle("HV Means (V)");
     vRmsDistr->Draw("AP");    

     c.cd(4);
     TMultiGraph *mProf=new TMultiGraph();
     TLegend *leg=new TLegend(0.65,0.91,0.99,0.99);
     TGraph *minProf=new TGraph(minIt->second.first.size(),&minIt->second.second[0],&minIt->second.first[0]);
     TGraph *maxProf=new TGraph(maxIt->second.first.size(),&maxIt->second.second[0],&maxIt->second.first[0]);
     minProf->SetMarkerStyle(20);
     maxProf->SetMarkerStyle(20);
     minProf->SetMarkerColor(2);
     maxProf->SetMarkerColor(4);
     mProf->Add(minProf);
     leg->AddEntry(minProf,"V vs IOV for Min RMS case","lpf");
     mProf->Add(maxProf);
     leg->AddEntry(maxProf,"V vs IOV for Max RMS case","lpf");
     leg->Draw();
     mProf->Draw("AP");
     mProf->GetXaxis()->SetTitle("IOV");
     mProf->GetYaxis()->SetTitle("I (V)");

    c.SaveAs(filename.c_str());

    return filename.c_str();

  }
template<>
std::string cond::PayLoadInspector< FillInfo >::plot ( std::string const &  filename,
std::string const &  ,
std::vector< int > const &  ,
std::vector< float > const &   
) const

Definition at line 52 of file FillInfoPyWrapper.cc.

References f, alignmentValidation::fname, and AlCaHLTBitMon_QueryRunRegistry::string.

                                                                               {
    std::string fname = filename + ".png";
    std::ofstream f(fname.c_str());
    return fname;
  }
template<>
std::string cond::PayLoadInspector< DTReadOutMapping >::plot ( std::string const &  filename,
std::string const &  ,
std::vector< int > const &  ,
std::vector< float > const &   
) const

Definition at line 48 of file DTReadOutMappingPyWrapper.cc.

References f, alignmentValidation::fname, and AlCaHLTBitMon_QueryRunRegistry::string.

                                                                                   {
    std::string fname = filename + ".png";
    std::ofstream f(fname.c_str());
    return fname;
  }
template<>
std::string cond::PayLoadInspector< DTStatusFlag >::plot ( std::string const &  filename,
std::string const &  ,
std::vector< int > const &  ,
std::vector< float > const &   
) const

Definition at line 48 of file DTStatusFlagPyWrapper.cc.

References f, alignmentValidation::fname, and AlCaHLTBitMon_QueryRunRegistry::string.

                                                                                   {
    std::string fname = filename + ".png";
    std::ofstream f(fname.c_str());
    return fname;
  }
template<>
std::string cond::PayLoadInspector< L1TriggerScaler >::plot ( std::string const &  filename,
std::string const &  ,
std::vector< int > const &  ,
std::vector< float > const &   
) const

Definition at line 125 of file L1TriggerScalerPyWrapper.cc.

References f, alignmentValidation::fname, and AlCaHLTBitMon_QueryRunRegistry::string.

                                                                                   {
    std::string fname = filename + ".png";
    std::ofstream f(fname.c_str());
    return fname;
  }
template<>
std::string cond::PayLoadInspector< RunInfo >::plot ( std::string const &  filename,
std::string const &  ,
std::vector< int > const &  ,
std::vector< float > const &   
) const

Definition at line 75 of file RunInfoPyWrapper.cc.

References f, alignmentValidation::fname, and AlCaHLTBitMon_QueryRunRegistry::string.

                                                                                   {
    std::string fname = filename + ".png";
    std::ofstream f(fname.c_str());
    return fname;
  }
template<>
std::string cond::PayLoadInspector< SiStripNoises >::plot ( std::string const &  filename,
std::string const &  ,
std::vector< int > const &  ,
std::vector< float > const &   
) const

Definition at line 49 of file SiStripNoisesPyWrapper.cc.

References f, alignmentValidation::fname, and AlCaHLTBitMon_QueryRunRegistry::string.

                                                                                   {
    std::string fname = filename + ".png";
    std::ofstream f(fname.c_str());
    return fname;
  }
template<>
std::string cond::PayLoadInspector< RunNumber >::plot ( std::string const &  filename,
std::string const &  ,
std::vector< int > const &  ,
std::vector< float > const &   
) const

Definition at line 66 of file RunNumberPyWrapper.cc.

References f, alignmentValidation::fname, and AlCaHLTBitMon_QueryRunRegistry::string.

                                                                                   {
    std::string fname = filename + ".png";
    std::ofstream f(fname.c_str());
    return fname;
  }
template<>
std::string cond::PayLoadInspector< RunSummary >::plot ( std::string const &  filename,
std::string const &  ,
std::vector< int > const &  ,
std::vector< float > const &   
) const

Definition at line 82 of file RunSummaryPyWrapper.cc.

References f, alignmentValidation::fname, and AlCaHLTBitMon_QueryRunRegistry::string.

                                                                                   {
    std::string fname = filename + ".png";
    std::ofstream f(fname.c_str());
    return fname;
  }
template<>
std::string cond::PayLoadInspector< DTDeadFlag >::plot ( std::string const &  filename,
std::string const &  ,
std::vector< int > const &  ,
std::vector< float > const &   
) const

Definition at line 48 of file DTDeadFlagPyWrapper.cc.

References f, alignmentValidation::fname, and AlCaHLTBitMon_QueryRunRegistry::string.

                                                                                   {
    std::string fname = filename + ".png";
    std::ofstream f(fname.c_str());
    return fname;
  }
template<>
std::string cond::PayLoadInspector< EcalMappingElectronics >::plot ( std::string const &  filename,
std::string const &  ,
std::vector< int > const &  ,
std::vector< float > const &   
) const

Definition at line 48 of file EcalMappingElectronicsPyWrapper.cc.

References f, alignmentValidation::fname, and AlCaHLTBitMon_QueryRunRegistry::string.

                                                                                   {
    std::string fname = filename + ".png";
    std::ofstream f(fname.c_str());
    return fname;
  }
template<>
std::string cond::PayLoadInspector< AlCaRecoTriggerBits >::plot ( std::string const &  filename,
std::string const &  ,
std::vector< int > const &  ,
std::vector< float > const &   
) const

Definition at line 59 of file AlCaRecoTriggerBitsPyWrapper.cc.

References f, alignmentValidation::fname, and AlCaHLTBitMon_QueryRunRegistry::string.

                                                                                   {
    std::string fname = filename + ".png";
    std::ofstream f(fname.c_str());
    return fname;
  }
template<>
std::string cond::PayLoadInspector< SiStripApvGain >::plot ( std::string const &  filename,
std::string const &  ,
std::vector< int > const &  ,
std::vector< float > const &   
) const

Definition at line 49 of file SiStripApvGainPyWrapper.cc.

References f, alignmentValidation::fname, and AlCaHLTBitMon_QueryRunRegistry::string.

                                                                                   {
    std::string fname = filename + ".png";
    std::ofstream f(fname.c_str());
    return fname;
  }
template<>
std::string cond::PayLoadInspector< EcalPedestals >::plot ( std::string const &  filename,
std::string const &  ,
std::vector< int > const &  ,
std::vector< float > const &   
) const

Definition at line 184 of file EcalPedestalsPyWrapper.cc.

References svgfig::canvas(), lut2db_cfg::filename, ecalMGPA::gainId(), i, EEDetId::IX_MAX, EEDetId::IY_MAX, kBarlRings, kBarlWedges, kEndcWedgesX, kEndcWedgesY, kSides, prof2calltree::l, EBDetId::MAX_IETA, EBDetId::MAX_IPHI, cond::ecalped::mean_x12, cond::ecalped::mean_x6, getGTfromDQMFile::obj, EEDetId::validDetId(), x, and detailsBasic3DVector::y.

                                                {
                        gStyle->SetPalette(1);
                        //    TCanvas canvas("CC map","CC map",840,600);
                        TCanvas canvas("CC map","CC map",800,1200);

                        float xmi[3] = {0.0 , 0.22, 0.78};
                        float xma[3] = {0.22, 0.78, 1.00};
                        TPad*** pad = new TPad**[6];
                        for (int gId = 0; gId < 6; gId++) {
                                pad[gId] = new TPad*[3];
                                for (int obj = 0; obj < 3; obj++) {
                                        float yma = 1.- (0.17 * gId);
                                        float ymi = yma - 0.15;
                                        pad[gId][obj] = new TPad(Form("p_%i_%i", obj, gId),Form("p_%i_%i", obj, gId),
                                                xmi[obj], ymi, xma[obj], yma);
                                        pad[gId][obj]->Draw();
                                }
                        }

                        const int kGains       = 3;
                        const int gainValues[3] = {12, 6, 1};
                        const int kSides       = 2;
                        const int kBarlRings   = EBDetId::MAX_IETA;
                        const int kBarlWedges  = EBDetId::MAX_IPHI;
                        const int kEndcWedgesX = EEDetId::IX_MAX;
                        const int kEndcWedgesY = EEDetId::IY_MAX;

                        TH2F** barrel_m = new TH2F*[3];
                        TH2F** endc_p_m = new TH2F*[3];
                        TH2F** endc_m_m = new TH2F*[3];
                        TH2F** barrel_r = new TH2F*[3];
                        TH2F** endc_p_r = new TH2F*[3];
                        TH2F** endc_m_r = new TH2F*[3];
                        for (int gainId = 0; gainId < kGains; gainId++) {
                                barrel_m[gainId] = new TH2F(Form("EBm%i",gainId),Form("mean %i EB",gainValues[gainId]),360,0,360, 170, -85,85);
                                endc_p_m[gainId] = new TH2F(Form("EE+m%i",gainId),Form("mean %i EE+",gainValues[gainId]),100,1,101,100,1,101);
                                endc_m_m[gainId] = new TH2F(Form("EE-m%i",gainId),Form("mean %i EE-",gainValues[gainId]),100,1,101,100,1,101);
                                barrel_r[gainId] = new TH2F(Form("EBr%i",gainId),Form("rms %i EB",gainValues[gainId]),360,0,360, 170, -85,85);
                                endc_p_r[gainId] = new TH2F(Form("EE+r%i",gainId),Form("rms %i EE+",gainValues[gainId]),100,1,101,100,1,101);
                                endc_m_r[gainId] = new TH2F(Form("EE-r%i",gainId),Form("rms %i EE-",gainValues[gainId]),100,1,101,100,1,101);
                        }

                        for (int sign=0; sign < kSides; sign++) {
                                int thesign = sign==1 ? 1:-1;

                                for (int ieta=0; ieta<kBarlRings; ieta++) {
                                        for (int iphi=0; iphi<kBarlWedges; iphi++) {
                                                EBDetId id((ieta+1)*thesign, iphi+1);
                                                float y = -1 - ieta;
                                                if(sign == 1) y = ieta;
                                                barrel_m[0]->Fill(iphi, y, object()[id.rawId()].mean_x12);
                                                barrel_r[0]->Fill(iphi, y, object()[id.rawId()].rms_x12);
                                                barrel_m[1]->Fill(iphi, y, object()[id.rawId()].mean_x6);
                                                barrel_r[1]->Fill(iphi, y, object()[id.rawId()].rms_x6);
                                                barrel_m[2]->Fill(iphi, y, object()[id.rawId()].mean_x1);
                                                barrel_r[2]->Fill(iphi, y, object()[id.rawId()].rms_x1);
                                        }  // iphi
                                }   // ieta

                                for (int ix=0; ix<kEndcWedgesX; ix++) {
                                        for (int iy=0; iy<kEndcWedgesY; iy++) {
                                                if (! EEDetId::validDetId(ix+1,iy+1,thesign)) continue;
                                                EEDetId id(ix+1,iy+1,thesign);
                                                if (thesign==1) {
                                                        endc_p_m[0]->Fill(ix+1,iy+1,object()[id.rawId()].mean_x12);
                                                        endc_p_r[0]->Fill(ix+1,iy+1,object()[id.rawId()].rms_x12);
                                                        endc_p_m[1]->Fill(ix+1,iy+1,object()[id.rawId()].mean_x6);
                                                        endc_p_r[1]->Fill(ix+1,iy+1,object()[id.rawId()].rms_x6);
                                                        endc_p_m[2]->Fill(ix+1,iy+1,object()[id.rawId()].mean_x1);
                                                        endc_p_r[2]->Fill(ix+1,iy+1,object()[id.rawId()].rms_x1);
                                                }
                                                else{ 
                                                        endc_m_m[0]->Fill(ix+1,iy+1,object()[id.rawId()].mean_x12);
                                                        endc_m_r[0]->Fill(ix+1,iy+1,object()[id.rawId()].rms_x12);
                                                        endc_m_m[1]->Fill(ix+1,iy+1,object()[id.rawId()].mean_x6);
                                                        endc_m_r[1]->Fill(ix+1,iy+1,object()[id.rawId()].rms_x6);
                                                        endc_m_m[2]->Fill(ix+1,iy+1,object()[id.rawId()].mean_x1);
                                                        endc_m_r[2]->Fill(ix+1,iy+1,object()[id.rawId()].rms_x1);
                                                }
                                        }  // iy
                                }   // ix
                        }    // side

                        //canvas.cd(1);
                        float bmin[3] ={0.7, 0.5, 0.4};
                        float bmax[3] ={1.7, 1.0, 0.8};
                        float emin[3] ={1.5, 0.8, 0.4};
                        float emax[3] ={2.5, 1.5, 0.8};
                        TLine* l = new TLine(0., 0., 0., 0.);
                        l->SetLineWidth(1);
                        int ixSectorsEE[202] = {
                                62, 62, 61, 61, 60, 60, 59, 59, 58, 58, 56, 56, 46, 46, 44, 44, 43, 43, 42, 42, 
                                41, 41, 40, 40, 41, 41, 42, 42, 43, 43, 44, 44, 46, 46, 56, 56, 58, 58, 59, 59, 
                                60, 60, 61, 61, 62, 62,  0,101,101, 98, 98, 96, 96, 93, 93, 88, 88, 86, 86, 81, 
                                81, 76, 76, 66, 66, 61, 61, 41, 41, 36, 36, 26, 26, 21, 21, 16, 16, 14, 14,  9,
                                9,  6,  6,  4,  4,  1,  1,  4,  4,  6,  6,  9,  9, 14, 14, 16, 16, 21, 21, 26, 
                                26, 36, 36, 41, 41, 61, 61, 66, 66, 76, 76, 81, 81, 86, 86, 88, 88, 93, 93, 96, 
                                96, 98, 98,101,101,  0, 62, 66, 66, 71, 71, 81, 81, 91, 91, 93,  0, 62, 66, 66, 
                                91, 91, 98,  0, 58, 61, 61, 66, 66, 71, 71, 76, 76, 81, 81,  0, 51, 51,  0, 44, 
                                41, 41, 36, 36, 31, 31, 26, 26, 21, 21,  0, 40, 36, 36, 11, 11,  4,  0, 40, 36, 
                                36, 31, 31, 21, 21, 11, 11,  9,  0, 46, 46, 41, 41, 36, 36,  0, 56, 56, 61, 61, 66, 66};

                                int iySectorsEE[202] = {
                                        51, 56, 56, 58, 58, 59, 59, 60, 60, 61, 61, 62, 62, 61, 61, 60, 60, 59, 59, 58, 
                                        58, 56, 56, 46, 46, 44, 44, 43, 43, 42, 42, 41, 41, 40, 40, 41, 41, 42, 42, 43, 
                                        43, 44, 44, 46, 46, 51,  0, 51, 61, 61, 66, 66, 76, 76, 81, 81, 86, 86, 88, 88, 
                                        93, 93, 96, 96, 98, 98,101,101, 98, 98, 96, 96, 93, 93, 88, 88, 86, 86, 81, 81, 
                                        76, 76, 66, 66, 61, 61, 41, 41, 36, 36, 26, 26, 21, 21, 16, 16, 14, 14,  9,  9, 
                                        6,  6,  4,  4,  1,  1,  4,  4,  6,  6,  9,  9, 14, 14, 16, 16, 21, 21, 26, 26, 
                                        36, 36, 41, 41, 51,  0, 46, 46, 41, 41, 36, 36, 31, 31, 26, 26,  0, 51, 51, 56, 
                                        56, 61, 61,  0, 61, 61, 66, 66, 71, 71, 76, 76, 86, 86, 88,  0, 62,101,  0, 61, 
                                        61, 66, 66, 71, 71, 76, 76, 86, 86, 88,  0, 51, 51, 56, 56, 61, 61,  0, 46, 46, 
                                        41, 41, 36, 36, 31, 31, 26, 26,  0, 40, 31, 31, 16, 16,  6,  0, 40, 31, 31, 16, 16,  6};

                                        for (int gId = 0; gId < 3; gId++) {
                                                pad[gId][0]->cd();
                                                endc_m_m[gId]->SetStats(0);
                                                endc_m_m[gId]->SetMaximum(225);
                                                endc_m_m[gId]->SetMinimum(175);
                                                endc_m_m[gId]->Draw("colz");
                                                for ( int i=0; i<201; i=i+1) {
                                                        if ( (ixSectorsEE[i]!=0 || iySectorsEE[i]!=0) && 
                                                                (ixSectorsEE[i+1]!=0 || iySectorsEE[i+1]!=0) ) {
                                                                        l->DrawLine(ixSectorsEE[i], iySectorsEE[i], 
                                                                                ixSectorsEE[i+1], iySectorsEE[i+1]);
                                                                        l->SetLineWidth(0.2);
                                                        }
                                                }
                                                pad[gId + 3][0]->cd();
                                                endc_m_r[gId]->SetStats(0);
                                                endc_m_r[gId]->SetMaximum(emax[gId]);
                                                endc_m_r[gId]->SetMinimum(emin[gId]);
                                                endc_m_r[gId]->Draw("colz");
                                                for ( int i=0; i<201; i=i+1) {
                                                        if ( (ixSectorsEE[i]!=0 || iySectorsEE[i]!=0) && 
                                                                (ixSectorsEE[i+1]!=0 || iySectorsEE[i+1]!=0) ) {
                                                                        l->DrawLine(ixSectorsEE[i], iySectorsEE[i], 
                                                                                ixSectorsEE[i+1], iySectorsEE[i+1]);
                                                        }
                                                }
                                                //canvas.cd(2);
                                                pad[gId][1]->cd();
                                                barrel_m[gId]->SetStats(0);
                                                barrel_m[gId]->SetMaximum(225);
                                                barrel_m[gId]->SetMinimum(175);
                                                barrel_m[gId]->Draw("colz");
                                                for(int i = 0; i <17; i++) {
                                                        Double_t x = 20.+ (i *20);
                                                        l = new TLine(x,-85.,x,86.);
                                                        l->Draw();
                                                }
                                                l = new TLine(0.,0.,360.,0.);
                                                l->Draw();
                                                pad[gId + 3][1]->cd();
                                                barrel_r[gId]->SetStats(0);
                                                barrel_r[gId]->SetMaximum(bmax[gId]);
                                                barrel_r[gId]->SetMinimum(bmin[gId]);
                                                barrel_r[gId]->Draw("colz");
                                                for(int i = 0; i <17; i++) {
                                                        Double_t x = 20.+ (i *20);
                                                        l = new TLine(x,-85.,x,86.);
                                                        l->Draw();
                                                }
                                                l = new TLine(0.,0.,360.,0.);
                                                l->Draw();
                                                //canvas.cd(3);
                                                pad[gId][2]->cd();
                                                endc_p_m[gId]->SetStats(0);
                                                endc_p_m[gId]->SetMaximum(225);
                                                endc_p_m[gId]->SetMinimum(175);
                                                endc_p_m[gId]->Draw("colz");
                                                for ( int i=0; i<201; i=i+1) {
                                                        if ( (ixSectorsEE[i]!=0 || iySectorsEE[i]!=0) && 
                                                                (ixSectorsEE[i+1]!=0 || iySectorsEE[i+1]!=0) ) {
                                                                        l->DrawLine(ixSectorsEE[i], iySectorsEE[i], 
                                                                                ixSectorsEE[i+1], iySectorsEE[i+1]);
                                                        }
                                                }
                                                pad[gId + 3][2]->cd();
                                                endc_p_r[gId]->SetStats(0);
                                                endc_p_r[gId]->SetMaximum(emax[gId]);
                                                endc_p_r[gId]->SetMinimum(emin[gId]);
                                                endc_p_r[gId]->Draw("colz");
                                                for ( int i=0; i<201; i=i+1) {
                                                        if ( (ixSectorsEE[i]!=0 || iySectorsEE[i]!=0) && 
                                                                (ixSectorsEE[i+1]!=0 || iySectorsEE[i+1]!=0) ) {
                                                                        l->DrawLine(ixSectorsEE[i], iySectorsEE[i], 
                                                                                ixSectorsEE[i+1], iySectorsEE[i+1]);
                                                        }
                                                }
                                        }

                                        canvas.SaveAs(filename.c_str());
                                        return filename;
        }  // plot
template<>
std::string cond::PayLoadInspector< SiStripBackPlaneCorrection >::plot ( std::string const &  filename,
std::string const &  ,
std::vector< int > const &  ,
std::vector< float > const &   
) const

Definition at line 48 of file SiStripBackPlaneCorrectionPyWrapper.cc.

References f, alignmentValidation::fname, and AlCaHLTBitMon_QueryRunRegistry::string.

                                                                                   {
    std::string fname = filename + ".png";
    std::ofstream f(fname.c_str());
    return fname;
  }
template<>
std::string cond::PayLoadInspector< SiStripFedCabling >::plot ( std::string const &  filename,
std::string const &  ,
std::vector< int > const &  ,
std::vector< float > const &   
) const

Definition at line 49 of file SiStripFedCablingPyWrapper.cc.

References f, alignmentValidation::fname, and AlCaHLTBitMon_QueryRunRegistry::string.

                                                                                   {
    std::string fname = filename + ".png";
    std::ofstream f(fname.c_str());
    return fname;
  }
template<>
std::string cond::PayLoadInspector< EcalWeightXtalGroups >::plot ( std::string const &  filename,
std::string const &  ,
std::vector< int > const &  ,
std::vector< float > const &   
) const

Definition at line 50 of file EcalWeightXtalGroupsPyWrapper.cc.

References f, alignmentValidation::fname, and AlCaHLTBitMon_QueryRunRegistry::string.

                                                                                   {
    std::string fname = filename + ".png";
    std::ofstream f(fname.c_str());
    return fname;
  }
template<>
std::string cond::PayLoadInspector< EcalTimeOffsetConstant >::plot ( std::string const &  filename,
std::string const &  ,
std::vector< int > const &  ,
std::vector< float > const &   
) const

Definition at line 37 of file EcalTimeOffsetConstantPyWrapper.cc.

References lut2db_cfg::filename.

                                                                                             {
    return filename;
  }
template<>
std::string cond::PayLoadInspector< SiStripBadStrip >::plot ( std::string const &  filename,
std::string const &  ,
std::vector< int > const &  ,
std::vector< float > const &   
) const

Definition at line 49 of file SiStripBadStripPyWrapper.cc.

References f, alignmentValidation::fname, and AlCaHLTBitMon_QueryRunRegistry::string.

                                                                                   {
    std::string fname = filename + ".png";
    std::ofstream f(fname.c_str());
    return fname;
  }
template<>
std::string cond::PayLoadInspector< EcalTBWeights >::plot ( std::string const &  filename,
std::string const &  ,
std::vector< int > const &  ,
std::vector< float > const &   
) const

Definition at line 54 of file EcalTBWeightsPyWrapper.cc.

References f, alignmentValidation::fname, and AlCaHLTBitMon_QueryRunRegistry::string.

                                                                                   {
    std::string fname = filename + ".png";
    std::ofstream f(fname.c_str());
    return fname;
  }
template<>
std::string cond::PayLoadInspector< DTT0 >::plot ( std::string const &  filename,
std::string const &  ,
std::vector< int > const &  ,
std::vector< float > const &   
) const

Definition at line 48 of file DTT0PyWrapper.cc.

References f, alignmentValidation::fname, and AlCaHLTBitMon_QueryRunRegistry::string.

                                                                                   {
    std::string fname = filename + ".png";
    std::ofstream f(fname.c_str());
    return fname;
  }
template<>
std::string cond::PayLoadInspector< DTTPGParameters >::plot ( std::string const &  filename,
std::string const &  ,
std::vector< int > const &  ,
std::vector< float > const &   
) const

Definition at line 48 of file DTTPGParametersPyWrapper.cc.

References f, alignmentValidation::fname, and AlCaHLTBitMon_QueryRunRegistry::string.

                                                                                   {
    std::string fname = filename + ".png";
    std::ofstream f(fname.c_str());
    return fname;
  }
template<>
std::string cond::PayLoadInspector< SiStripBaseDelay >::plot ( std::string const &  filename,
std::string const &  ,
std::vector< int > const &  ,
std::vector< float > const &   
) const

Definition at line 48 of file SiStripBaseDelayPyWrapper.cc.

References f, alignmentValidation::fname, and AlCaHLTBitMon_QueryRunRegistry::string.

                                                                                   {
    std::string fname = filename + ".png";
    std::ofstream f(fname.c_str());
    return fname;
  }
template<>
std::string cond::PayLoadInspector< SiStripDetVOff >::plot ( std::string const &  filename,
std::string const &  ,
std::vector< int > const &  ,
std::vector< float > const &   
) const

Definition at line 51 of file SiStripDetVOffPyWrapper.cc.

References f, alignmentValidation::fname, and AlCaHLTBitMon_QueryRunRegistry::string.

                                                                                   {
    std::string fname = filename + ".png";
    std::ofstream f(fname.c_str());
    return fname;
  }
template<>
std::string cond::PayLoadInspector< EcalTPGCrystalStatus >::plot ( std::string const &  filename,
std::string const &  ,
std::vector< int > const &  ,
std::vector< float > const &   
) const

Definition at line 207 of file EcalTPGCrystalStatusPyWrapper.cc.

References Reference_intrackfit_cff::barrel, svgfig::canvas(), lut2db_cfg::filename, h, i, EEDetId::IX_MAX, EEDetId::IY_MAX, kBarlRings, kBarlWedges, kEndcWedgesX, kEndcWedgesY, kSides, prof2calltree::l, EBDetId::MAX_IETA, EBDetId::MAX_IPHI, getGTfromDQMFile::obj, EEDetId::validDetId(), w(), x, and detailsBasic3DVector::y.

                                                                                           {
    gStyle->SetPalette(1);
    const int TOTAL_PADS = 3;

    //    TCanvas canvas("CC map","CC map",700,800);
    Double_t w = 600;
    Double_t h = 600;
    TCanvas canvas("c", "c", w, h);
    canvas.SetWindowSize(w + (w - canvas.GetWw()), h + (h - canvas.GetWh()));
    //    const float IMG_SIZE = 1.5;
    //    TCanvas canvas("CC map","CC map",800*IMG_SIZE, 200 * IMG_SIZE);//800, 1200

    float xmi[3] = {0.0, 0.0, 0.5};
    float xma[3] = {1.0, 0.5, 1.0};
    float ymi[3] = {0.5, 0.0, 0.0};
    float yma[3] = {1.0, 0.5, 0.5};


    TPad** pad = new TPad*[TOTAL_PADS];
    for (int obj = 0; obj < TOTAL_PADS; obj++) {
      pad[obj] = new TPad(Form("p_%i", obj),Form("p_%i", obj),
                          xmi[obj], ymi[obj], xma[obj], yma[obj]);
      pad[obj]->Draw();
    }

    const int kSides       = 2;
    const int kBarlRings   = EBDetId::MAX_IETA;
    const int kBarlWedges  = EBDetId::MAX_IPHI;
    const int kEndcWedgesX = EEDetId::IX_MAX;
    const int kEndcWedgesY = EEDetId::IY_MAX;

    TH2F* barrel = new TH2F("EB","EB TPG Crystal Status", 360,0,360, 170, -85,85);
    TH2F* endc_m = new TH2F("EEm","EE- TPG Crystal Status",100,1,101,100,1,101);
    TH2F* endc_p = new TH2F("EEp","EE+ TPG Crystal Status",100,1,101,100,1,101);

    for (int sign=0; sign < kSides; sign++) {
      int thesign = sign==1 ? 1:-1;

      for (int ieta=0; ieta<kBarlRings; ieta++) {
        for (int iphi=0; iphi<kBarlWedges; iphi++) {
          EBDetId id((ieta+1)*thesign, iphi+1);
          float y = -1 - ieta;
          if(sign == 1) y = ieta;
          barrel->Fill(iphi, y, object()[id.rawId()].getStatusCode());
        }  // iphi
      }   // ieta

      for (int ix=0; ix<kEndcWedgesX; ix++) {
        for (int iy=0; iy<kEndcWedgesY; iy++) {
          if (! EEDetId::validDetId(ix+1,iy+1,thesign)) continue;
          EEDetId id(ix+1,iy+1,thesign);
          if (thesign==1) {
            endc_p->Fill(ix+1,iy+1,object()[id.rawId()].getStatusCode());
          }
          else{ 
            endc_m->Fill(ix+1,iy+1,object()[id.rawId()].getStatusCode());
          }
        }  // iy
      }   // ix
    }    // side

    TLine* l = new TLine(0., 0., 0., 0.);
    l->SetLineWidth(1);
    int ixSectorsEE[202] = {
      62, 62, 61, 61, 60, 60, 59, 59, 58, 58, 56, 56, 46, 46, 44, 44, 43, 43, 42, 42, 
      41, 41, 40, 40, 41, 41, 42, 42, 43, 43, 44, 44, 46, 46, 56, 56, 58, 58, 59, 59, 
      60, 60, 61, 61, 62, 62,  0,101,101, 98, 98, 96, 96, 93, 93, 88, 88, 86, 86, 81, 
      81, 76, 76, 66, 66, 61, 61, 41, 41, 36, 36, 26, 26, 21, 21, 16, 16, 14, 14,  9,
      9,  6,  6,  4,  4,  1,  1,  4,  4,  6,  6,  9,  9, 14, 14, 16, 16, 21, 21, 26, 
      26, 36, 36, 41, 41, 61, 61, 66, 66, 76, 76, 81, 81, 86, 86, 88, 88, 93, 93, 96, 
      96, 98, 98,101,101,  0, 62, 66, 66, 71, 71, 81, 81, 91, 91, 93,  0, 62, 66, 66, 
      91, 91, 98,  0, 58, 61, 61, 66, 66, 71, 71, 76, 76, 81, 81,  0, 51, 51,  0, 44, 
      41, 41, 36, 36, 31, 31, 26, 26, 21, 21,  0, 40, 36, 36, 11, 11,  4,  0, 40, 36, 
      36, 31, 31, 21, 21, 11, 11,  9,  0, 46, 46, 41, 41, 36, 36,  0, 56, 56, 61, 61, 66, 66};

    int iySectorsEE[202] = {
      51, 56, 56, 58, 58, 59, 59, 60, 60, 61, 61, 62, 62, 61, 61, 60, 60, 59, 59, 58, 
      58, 56, 56, 46, 46, 44, 44, 43, 43, 42, 42, 41, 41, 40, 40, 41, 41, 42, 42, 43, 
      43, 44, 44, 46, 46, 51,  0, 51, 61, 61, 66, 66, 76, 76, 81, 81, 86, 86, 88, 88, 
      93, 93, 96, 96, 98, 98,101,101, 98, 98, 96, 96, 93, 93, 88, 88, 86, 86, 81, 81, 
      76, 76, 66, 66, 61, 61, 41, 41, 36, 36, 26, 26, 21, 21, 16, 16, 14, 14,  9,  9, 
      6,  6,  4,  4,  1,  1,  4,  4,  6,  6,  9,  9, 14, 14, 16, 16, 21, 21, 26, 26, 
      36, 36, 41, 41, 51,  0, 46, 46, 41, 41, 36, 36, 31, 31, 26, 26,  0, 51, 51, 56, 
      56, 61, 61,  0, 61, 61, 66, 66, 71, 71, 76, 76, 86, 86, 88,  0, 62,101,  0, 61, 
      61, 66, 66, 71, 71, 76, 76, 86, 86, 88,  0, 51, 51, 56, 56, 61, 61,  0, 46, 46, 
      41, 41, 36, 36, 31, 31, 26, 26,  0, 40, 31, 31, 16, 16,  6,  0, 40, 31, 31, 16, 16,  6};

    pad[0]->cd();
    barrel->SetStats(0);
    barrel->Draw("colz");
    for(int i = 0; i <17; i++) {
      Double_t x = 20.+ (i *20);
      l = new TLine(x,-85.,x,86.);
      l->Draw();
    }
    l = new TLine(0.,0.,360.,0.);
    l->Draw();

    pad[1]->cd();
    endc_m->SetStats(0);
    endc_m->Draw("col");
    for ( int i=0; i<201; i=i+1) {
      if ( (ixSectorsEE[i]!=0 || iySectorsEE[i]!=0) && 
           (ixSectorsEE[i+1]!=0 || iySectorsEE[i+1]!=0) ) {
        l->DrawLine(ixSectorsEE[i], iySectorsEE[i], 
                    ixSectorsEE[i+1], iySectorsEE[i+1]);
        l->SetLineWidth(0.2);
      }
    }

    pad[2]->cd();
    endc_p->SetStats(0);
    endc_p->Draw("col");
    for ( int i=0; i<201; i=i+1) {
      if ( (ixSectorsEE[i]!=0 || iySectorsEE[i]!=0) && 
           (ixSectorsEE[i+1]!=0 || iySectorsEE[i+1]!=0) ) {
        l->DrawLine(ixSectorsEE[i], iySectorsEE[i], 
                    ixSectorsEE[i+1], iySectorsEE[i+1]);
      }
    }

    canvas.SaveAs(filename.c_str());
    return filename;
  }  // plot
template<>
std::string cond::PayLoadInspector< SiStripThreshold >::plot ( std::string const &  filename,
std::string const &  ,
std::vector< int > const &  ,
std::vector< float > const &   
) const

Definition at line 49 of file SiStripThresholdPyWrapper.cc.

References f, alignmentValidation::fname, and AlCaHLTBitMon_QueryRunRegistry::string.

                                                                                   {
    std::string fname = filename + ".png";
    std::ofstream f(fname.c_str());
    return fname;
  }
template<>
std::string cond::PayLoadInspector< SiStripLatency >::plot ( std::string const &  filename,
std::string const &  ,
std::vector< int > const &  ,
std::vector< float > const &   
) const

Definition at line 49 of file SiStripLatencyPyWrapper.cc.

References f, alignmentValidation::fname, and AlCaHLTBitMon_QueryRunRegistry::string.

                                                                                   {
    std::string fname = filename + ".png";
    std::ofstream f(fname.c_str());
    return fname;
  }
template<>
std::string cond::PayLoadInspector< SiStripLorentzAngle >::plot ( std::string const &  filename,
std::string const &  ,
std::vector< int > const &  ,
std::vector< float > const &   
) const

Definition at line 48 of file SiStripLorentzAnglePyWrapper.cc.

References f, alignmentValidation::fname, and AlCaHLTBitMon_QueryRunRegistry::string.

                                                                                   {
    std::string fname = filename + ".png";
    std::ofstream f(fname.c_str());
    return fname;
  }
template<>
std::string cond::PayLoadInspector< DTHVStatus >::plot ( std::string const &  filename,
std::string const &  ,
std::vector< int > const &  ,
std::vector< float > const &   
) const

Definition at line 48 of file DTHVStatusPyWrapper.cc.

References f, alignmentValidation::fname, and AlCaHLTBitMon_QueryRunRegistry::string.

                                                                                   {
    std::string fname = filename + ".png";
    std::ofstream f(fname.c_str());
    return fname;
  }
template<>
std::string cond::PayLoadInspector< BeamSpotObjects >::plot ( std::string const &  filename,
std::string const &  ,
std::vector< int > const &  ,
std::vector< float > const &   
) const

Definition at line 48 of file BeamSpotObjectsPyWrapper.cc.

References svgfig::canvas(), and lut2db_cfg::filename.

        {

                TCanvas canvas("iC","iC",800,800);    

                canvas.SaveAs(filename.c_str());
                return filename;
        }
template<>
std::string cond::PayLoadInspector< EcalTPGLinearizationConst >::plot ( std::string const &  filename,
std::string const &  ,
std::vector< int > const &  ,
std::vector< float > const &   
) const

Definition at line 109 of file EcalTPGLinearizationConstPyWrapper.cc.

References svgfig::canvas(), lut2db_cfg::filename, ecalMGPA::gainId(), i, EEDetId::IX_MAX, EEDetId::IY_MAX, kBarlRings, kBarlWedges, kEndcWedgesX, kEndcWedgesY, kSides, prof2calltree::l, EBDetId::MAX_IETA, EBDetId::MAX_IPHI, getGTfromDQMFile::obj, EEDetId::validDetId(), x, and detailsBasic3DVector::y.

                                                                                                {
    gStyle->SetPalette(1);

    const float IMG_SIZE = 1.5;
    TCanvas canvas("CC map","CC map",800 * IMG_SIZE,1200 * IMG_SIZE);

    float xmi[3] = {0.0 , 0.22, 0.78};
    float xma[3] = {0.22, 0.78, 1.00};
    TPad*** pad = new TPad**[6];
    for (int gId = 0; gId < 6; gId++) {
      pad[gId] = new TPad*[3];
      for (int obj = 0; obj < 3; obj++) {
        float yma = 1.- (0.17 * gId);
        float ymi = yma - 0.15;
        pad[gId][obj] = new TPad(Form("p_%i_%i", obj, gId),Form("p_%i_%i", obj, gId),
                                 xmi[obj], ymi, xma[obj], yma);
        pad[gId][obj]->Draw();
      }
    }

    const int kGains       = 3;
    const int gainValues[3] = {12, 6, 1};
    const int kSides       = 2;
    const int kBarlRings   = EBDetId::MAX_IETA;
    const int kBarlWedges  = EBDetId::MAX_IPHI;
    const int kEndcWedgesX = EEDetId::IX_MAX;
    const int kEndcWedgesY = EEDetId::IY_MAX;

    TH2F** barrel_m = new TH2F*[3];
    TH2F** endc_p_m = new TH2F*[3];
    TH2F** endc_m_m = new TH2F*[3];
    TH2F** barrel_r = new TH2F*[3];
    TH2F** endc_p_r = new TH2F*[3];
    TH2F** endc_m_r = new TH2F*[3];
    for (int gainId = 0; gainId < kGains; gainId++) {
      barrel_m[gainId] = new TH2F(Form("mult_x12 EBm%i",gainId),Form("mult_x%i EB",gainValues[gainId]),360,0,360, 170, -85,85);
      endc_p_m[gainId] = new TH2F(Form("mult_x12 EE+m%i",gainId),Form("mult_x%i EE+",gainValues[gainId]),100,1,101,100,1,101);
      endc_m_m[gainId] = new TH2F(Form("mult_x12 EE-m%i",gainId),Form("mult_x%i EE-",gainValues[gainId]),100,1,101,100,1,101);
      barrel_r[gainId] = new TH2F(Form("shift_x12 EBr%i",gainId),Form("shift_x%i EB",gainValues[gainId]),360,0,360, 170, -85,85);
      endc_p_r[gainId] = new TH2F(Form("shift_x12 EE+r%i",gainId),Form("shift_x%i EE+",gainValues[gainId]),100,1,101,100,1,101);
      endc_m_r[gainId] = new TH2F(Form("shift_x12 EE-r%i",gainId),Form("shift_x%i EE-",gainValues[gainId]),100,1,101,100,1,101);
    }

    for (int sign=0; sign < kSides; sign++) {
      int thesign = sign==1 ? 1:-1;

      for (int ieta=0; ieta<kBarlRings; ieta++) {
        for (int iphi=0; iphi<kBarlWedges; iphi++) {
          EBDetId id((ieta+1)*thesign, iphi+1);
          float y = -1 - ieta;
          if(sign == 1) y = ieta;
          barrel_m[0]->Fill(iphi, y, object()[id.rawId()].mult_x12);
          barrel_r[0]->Fill(iphi, y, object()[id.rawId()].shift_x12);
          barrel_m[1]->Fill(iphi, y, object()[id.rawId()].mult_x6);
          barrel_r[1]->Fill(iphi, y, object()[id.rawId()].shift_x6);
          barrel_m[2]->Fill(iphi, y, object()[id.rawId()].mult_x1);
          barrel_r[2]->Fill(iphi, y, object()[id.rawId()].shift_x1);
        }  // iphi
      }   // ieta

      for (int ix=0; ix<kEndcWedgesX; ix++) {
        for (int iy=0; iy<kEndcWedgesY; iy++) {
          if (! EEDetId::validDetId(ix+1,iy+1,thesign)) continue;
          EEDetId id(ix+1,iy+1,thesign);
          if (thesign==1) {
            endc_p_m[0]->Fill(ix+1,iy+1,object()[id.rawId()].mult_x12);
            endc_p_r[0]->Fill(ix+1,iy+1,object()[id.rawId()].shift_x12);
            endc_p_m[1]->Fill(ix+1,iy+1,object()[id.rawId()].mult_x6);
            endc_p_r[1]->Fill(ix+1,iy+1,object()[id.rawId()].shift_x6);
            endc_p_m[2]->Fill(ix+1,iy+1,object()[id.rawId()].mult_x1);
            endc_p_r[2]->Fill(ix+1,iy+1,object()[id.rawId()].shift_x1);
          }
          else{ 
            endc_m_m[0]->Fill(ix+1,iy+1,object()[id.rawId()].mult_x12);
            endc_m_r[0]->Fill(ix+1,iy+1,object()[id.rawId()].shift_x12);
            endc_m_m[1]->Fill(ix+1,iy+1,object()[id.rawId()].mult_x6);
            endc_m_r[1]->Fill(ix+1,iy+1,object()[id.rawId()].shift_x6);
            endc_m_m[2]->Fill(ix+1,iy+1,object()[id.rawId()].mult_x1);
            endc_m_r[2]->Fill(ix+1,iy+1,object()[id.rawId()].shift_x1);
          }
        }  // iy
      }   // ix
    }    // side

    //canvas.cd(1);
    //float bmin[3] ={0.7, 0.5, 0.4};
    //float bmax[3] ={1.7, 1.0, 0.8};
    //float emin[3] ={1.5, 0.8, 0.4};
    //float emax[3] ={2.5, 1.5, 0.8};
    TLine* l = new TLine(0., 0., 0., 0.);
    l->SetLineWidth(1);
    int ixSectorsEE[202] = {
      62, 62, 61, 61, 60, 60, 59, 59, 58, 58, 56, 56, 46, 46, 44, 44, 43, 43, 42, 42, 
      41, 41, 40, 40, 41, 41, 42, 42, 43, 43, 44, 44, 46, 46, 56, 56, 58, 58, 59, 59, 
      60, 60, 61, 61, 62, 62,  0,101,101, 98, 98, 96, 96, 93, 93, 88, 88, 86, 86, 81, 
      81, 76, 76, 66, 66, 61, 61, 41, 41, 36, 36, 26, 26, 21, 21, 16, 16, 14, 14,  9,
      9,  6,  6,  4,  4,  1,  1,  4,  4,  6,  6,  9,  9, 14, 14, 16, 16, 21, 21, 26, 
      26, 36, 36, 41, 41, 61, 61, 66, 66, 76, 76, 81, 81, 86, 86, 88, 88, 93, 93, 96, 
      96, 98, 98,101,101,  0, 62, 66, 66, 71, 71, 81, 81, 91, 91, 93,  0, 62, 66, 66, 
      91, 91, 98,  0, 58, 61, 61, 66, 66, 71, 71, 76, 76, 81, 81,  0, 51, 51,  0, 44, 
      41, 41, 36, 36, 31, 31, 26, 26, 21, 21,  0, 40, 36, 36, 11, 11,  4,  0, 40, 36, 
      36, 31, 31, 21, 21, 11, 11,  9,  0, 46, 46, 41, 41, 36, 36,  0, 56, 56, 61, 61, 66, 66};

    int iySectorsEE[202] = {
      51, 56, 56, 58, 58, 59, 59, 60, 60, 61, 61, 62, 62, 61, 61, 60, 60, 59, 59, 58, 
      58, 56, 56, 46, 46, 44, 44, 43, 43, 42, 42, 41, 41, 40, 40, 41, 41, 42, 42, 43, 
      43, 44, 44, 46, 46, 51,  0, 51, 61, 61, 66, 66, 76, 76, 81, 81, 86, 86, 88, 88, 
      93, 93, 96, 96, 98, 98,101,101, 98, 98, 96, 96, 93, 93, 88, 88, 86, 86, 81, 81, 
      76, 76, 66, 66, 61, 61, 41, 41, 36, 36, 26, 26, 21, 21, 16, 16, 14, 14,  9,  9, 
      6,  6,  4,  4,  1,  1,  4,  4,  6,  6,  9,  9, 14, 14, 16, 16, 21, 21, 26, 26, 
      36, 36, 41, 41, 51,  0, 46, 46, 41, 41, 36, 36, 31, 31, 26, 26,  0, 51, 51, 56, 
      56, 61, 61,  0, 61, 61, 66, 66, 71, 71, 76, 76, 86, 86, 88,  0, 62,101,  0, 61, 
      61, 66, 66, 71, 71, 76, 76, 86, 86, 88,  0, 51, 51, 56, 56, 61, 61,  0, 46, 46, 
      41, 41, 36, 36, 31, 31, 26, 26,  0, 40, 31, 31, 16, 16,  6,  0, 40, 31, 31, 16, 16,  6};

    for (int gId = 0; gId < 3; gId++) {
      pad[gId][0]->cd();
      endc_m_m[gId]->SetStats(0);
      //endc_m_m[gId]->SetMaximum(225);
      //endc_m_m[gId]->SetMinimum(175);
      endc_m_m[gId]->Draw("colz");
      for ( int i=0; i<201; i=i+1) {
        if ( (ixSectorsEE[i]!=0 || iySectorsEE[i]!=0) && 
             (ixSectorsEE[i+1]!=0 || iySectorsEE[i+1]!=0) ) {
          l->DrawLine(ixSectorsEE[i], iySectorsEE[i], 
                      ixSectorsEE[i+1], iySectorsEE[i+1]);
          l->SetLineWidth(0.2);
        }
      }
      pad[gId + 3][0]->cd();
      endc_m_r[gId]->SetStats(0);
      //endc_m_r[gId]->SetMaximum(emax[gId]);
      //endc_m_r[gId]->SetMinimum(emin[gId]);
      endc_m_r[gId]->Draw("colz");
      for ( int i=0; i<201; i=i+1) {
        if ( (ixSectorsEE[i]!=0 || iySectorsEE[i]!=0) && 
             (ixSectorsEE[i+1]!=0 || iySectorsEE[i+1]!=0) ) {
          l->DrawLine(ixSectorsEE[i], iySectorsEE[i], 
                      ixSectorsEE[i+1], iySectorsEE[i+1]);
        }
      }
      //canvas.cd(2);
      pad[gId][1]->cd();
      barrel_m[gId]->SetStats(0);
      //barrel_m[gId]->SetMaximum(225);
      //barrel_m[gId]->SetMinimum(175);
      barrel_m[gId]->Draw("colz");
      for(int i = 0; i <17; i++) {
        Double_t x = 20.+ (i *20);
        l = new TLine(x,-85.,x,86.);
        l->Draw();
      }
      l = new TLine(0.,0.,360.,0.);
      l->Draw();
      pad[gId + 3][1]->cd();
      barrel_r[gId]->SetStats(0);
      //barrel_r[gId]->SetMaximum(bmax[gId]);
      //barrel_r[gId]->SetMinimum(bmin[gId]);
      barrel_r[gId]->Draw("colz");
      for(int i = 0; i <17; i++) {
        Double_t x = 20.+ (i *20);
        l = new TLine(x,-85.,x,86.);
        l->Draw();
      }
      l = new TLine(0.,0.,360.,0.);
      l->Draw();
      //canvas.cd(3);
      pad[gId][2]->cd();
      endc_p_m[gId]->SetStats(0);
      //endc_p_m[gId]->SetMaximum(225);
      //endc_p_m[gId]->SetMinimum(175);
      endc_p_m[gId]->Draw("colz");
      for ( int i=0; i<201; i=i+1) {
        if ( (ixSectorsEE[i]!=0 || iySectorsEE[i]!=0) && 
             (ixSectorsEE[i+1]!=0 || iySectorsEE[i+1]!=0) ) {
          l->DrawLine(ixSectorsEE[i], iySectorsEE[i], 
                      ixSectorsEE[i+1], iySectorsEE[i+1]);
        }
      }
      pad[gId + 3][2]->cd();
      endc_p_r[gId]->SetStats(0);
      //endc_p_r[gId]->SetMaximum(emax[gId]);
      //endc_p_r[gId]->SetMinimum(emin[gId]);
      endc_p_r[gId]->Draw("colz");
      for ( int i=0; i<201; i=i+1) {
        if ( (ixSectorsEE[i]!=0 || iySectorsEE[i]!=0) && 
             (ixSectorsEE[i+1]!=0 || iySectorsEE[i+1]!=0) ) {
          l->DrawLine(ixSectorsEE[i], iySectorsEE[i], 
                      ixSectorsEE[i+1], iySectorsEE[i+1]);
        }
      }
    }

    canvas.SaveAs(filename.c_str());
    return filename;
  }  // plot
template<>
std::string cond::PayLoadInspector< SiStripPedestals >::plot ( std::string const &  filename,
std::string const &  ,
std::vector< int > const &  ,
std::vector< float > const &   
) const

Definition at line 49 of file SiStripPedestalsPyWrapper.cc.

References f, alignmentValidation::fname, and AlCaHLTBitMon_QueryRunRegistry::string.

                                                                                   {
    std::string fname = filename + ".png";
    std::ofstream f(fname.c_str());
    return fname;
  }
template<>
std::string cond::PayLoadInspector< DTTtrig >::plot ( std::string const &  filename,
std::string const &  ,
std::vector< int > const &  ,
std::vector< float > const &   
) const

Definition at line 48 of file DTTtrigPyWrapper.cc.

References f, alignmentValidation::fname, and AlCaHLTBitMon_QueryRunRegistry::string.

                                                                                   {
    std::string fname = filename + ".png";
    std::ofstream f(fname.c_str());
    return fname;
  }
template<>
std::string cond::PayLoadInspector< SiStripSummary >::plot ( std::string const &  filename,
std::string const &  ,
std::vector< int > const &  ,
std::vector< float > const &   
) const

Definition at line 97 of file SiStripSummaryPyWrapper.cc.

References f, alignmentValidation::fname, and AlCaHLTBitMon_QueryRunRegistry::string.

                                                                                   {
    std::string fname = filename + ".png";
   std::ofstream f(fname.c_str());
    return fname;
  }
template<>
std::string cond::PayLoadInspector< EcalTPGPedestals >::plot ( std::string const &  filename,
std::string const &  ,
std::vector< int > const &  ,
std::vector< float > const &   
) const

Definition at line 83 of file EcalTPGPedestalsPyWrapper.cc.

References svgfig::canvas(), lut2db_cfg::filename, ecalMGPA::gainId(), i, EEDetId::IX_MAX, EEDetId::IY_MAX, kBarlRings, kBarlWedges, kEndcWedgesX, kEndcWedgesY, kSides, prof2calltree::l, EBDetId::MAX_IETA, EBDetId::MAX_IPHI, cond::ecalped::mean_x12, cond::ecalped::mean_x6, getGTfromDQMFile::obj, AlCaHLTBitMon_QueryRunRegistry::string, EEDetId::validDetId(), x, and detailsBasic3DVector::y.

                                                {
                        gStyle->SetPalette(1);
                        const int TOTAL_IMAGES = 3;
                        const int TOTAL_PADS = 3;

                        //    TCanvas canvas("CC map","CC map",840,600);
                        const float IMG_SIZE = 1.3;
                        TCanvas canvas("CC map","CC map",800*IMG_SIZE + 100, 200 * TOTAL_IMAGES*IMG_SIZE);//800, 1200

                        float xmi[3] = {0.0 , 0.22, 0.78};
                        float xma[3] = {0.22, 0.78, 1.00};


                        TPad*** pad = new TPad**[TOTAL_IMAGES];
                        for (int gId = 0; gId < TOTAL_IMAGES; gId++) {
                                pad[gId] = new TPad*[TOTAL_PADS];
                                for (int obj = 0; obj < TOTAL_PADS; obj++) {
                                        float yma = 1. - (0.33 * gId);  //1.- (0.17 * gId);
                                        float ymi = yma - 0.33; //yma - 0.15;
                                        pad[gId][obj] = new TPad(Form("p_%i_%i", obj, gId),Form("p_%i_%i", obj, gId),
                                                xmi[obj], ymi, xma[obj], yma);
                                        pad[gId][obj]->Draw();
                                }
                        }

                        const int kGains       = 3;
                        const int gainValues[3] = {12, 6, 1};
                        const int kSides       = 2;
                        const int kBarlRings   = EBDetId::MAX_IETA;
                        const int kBarlWedges  = EBDetId::MAX_IPHI;
                        const int kEndcWedgesX = EEDetId::IX_MAX;
                        const int kEndcWedgesY = EEDetId::IY_MAX;

                        TH2F** barrel_m = new TH2F*[3];
                        TH2F** endc_p_m = new TH2F*[3];
                        TH2F** endc_m_m = new TH2F*[3];
                        //TH2F** barrel_r = new TH2F*[3];
                        //TH2F** endc_p_r = new TH2F*[3];
                        //TH2F** endc_m_r = new TH2F*[3];
                        std::string variableName = "mean_x";
                        for (int gainId = 0; gainId < kGains; gainId++) {
                                barrel_m[gainId] = new TH2F(Form((variableName + "EBm%i").c_str(),gainId),Form((variableName + "%i EB").c_str(),gainValues[gainId]),360,0,360, 170, -85,85);
                                endc_p_m[gainId] = new TH2F(Form((variableName + "EE+m%i").c_str(),gainId),Form((variableName + "%i EE+").c_str(),gainValues[gainId]),100,1,101,100,1,101);
                                endc_m_m[gainId] = new TH2F(Form((variableName + "EE-m%i").c_str(),gainId),Form((variableName + "%i EE-").c_str(),gainValues[gainId]),100,1,101,100,1,101);
                                //barrel_r[gainId] = new TH2F(Form("EBr%i",gainId),Form("rms %i EB",gainValues[gainId]),360,0,360, 170, -85,85);
                                //endc_p_r[gainId] = new TH2F(Form("EE+r%i",gainId),Form("rms %i EE+",gainValues[gainId]),100,1,101,100,1,101);
                                //endc_m_r[gainId] = new TH2F(Form("EE-r%i",gainId),Form("rms %i EE-",gainValues[gainId]),100,1,101,100,1,101);
                        }

                        for (int sign=0; sign < kSides; sign++) {
                                int thesign = sign==1 ? 1:-1;

                                for (int ieta=0; ieta<kBarlRings; ieta++) {
                                        for (int iphi=0; iphi<kBarlWedges; iphi++) {
                                                EBDetId id((ieta+1)*thesign, iphi+1);
                                                float y = -1 - ieta;
                                                if(sign == 1) y = ieta;
                                                barrel_m[0]->Fill(iphi, y, object()[id.rawId()].mean_x12);
                                                barrel_m[1]->Fill(iphi, y, object()[id.rawId()].mean_x6);
                                                barrel_m[2]->Fill(iphi, y, object()[id.rawId()].mean_x1);
                                                //barrel_r[0]->Fill(iphi, y, object()[id.rawId()].rms_x12);
                                                //barrel_m[1]->Fill(iphi, y, object()[id.rawId()].mean_x6);
                                                //barrel_r[1]->Fill(iphi, y, object()[id.rawId()].rms_x6);
                                                //barrel_m[2]->Fill(iphi, y, object()[id.rawId()].mean_x1);
                                                //barrel_r[2]->Fill(iphi, y, object()[id.rawId()].rms_x1);
                                        }   // iphi
                                }       // ieta

                                for (int ix=0; ix<kEndcWedgesX; ix++) {
                                        for (int iy=0; iy<kEndcWedgesY; iy++) {
                                                if (! EEDetId::validDetId(ix+1,iy+1,thesign)) continue;
                                                EEDetId id(ix+1,iy+1,thesign);
                                                if (thesign==1) {
                                                        endc_p_m[0]->Fill(ix+1,iy+1,object()[id.rawId()].mean_x12);
                                                        endc_p_m[1]->Fill(ix+1,iy+1,object()[id.rawId()].mean_x6);
                                                        endc_p_m[2]->Fill(ix+1,iy+1,object()[id.rawId()].mean_x1);
                                                        //endc_p_r[0]->Fill(ix+1,iy+1,object()[id.rawId()].rms_x12);
                                                        //endc_p_m[1]->Fill(ix+1,iy+1,object()[id.rawId()].mean_x6);
                                                        //endc_p_r[1]->Fill(ix+1,iy+1,object()[id.rawId()].rms_x6);
                                                        //endc_p_m[2]->Fill(ix+1,iy+1,object()[id.rawId()].mean_x1);
                                                        //endc_p_r[2]->Fill(ix+1,iy+1,object()[id.rawId()].rms_x1);
                                                }
                                                else{ 
                                                        endc_m_m[0]->Fill(ix+1,iy+1,object()[id.rawId()].mean_x12);
                                                        endc_m_m[1]->Fill(ix+1,iy+1,object()[id.rawId()].mean_x6);
                                                        endc_m_m[2]->Fill(ix+1,iy+1,object()[id.rawId()].mean_x1);
                                                        //endc_m_r[0]->Fill(ix+1,iy+1,object()[id.rawId()].rms_x12);
                                                        //endc_m_m[1]->Fill(ix+1,iy+1,object()[id.rawId()].mean_x6);
                                                        //endc_m_r[1]->Fill(ix+1,iy+1,object()[id.rawId()].rms_x6);
                                                        //endc_m_m[2]->Fill(ix+1,iy+1,object()[id.rawId()].mean_x1);
                                                        //endc_m_r[2]->Fill(ix+1,iy+1,object()[id.rawId()].rms_x1);
                                                }
                                        }  // iy
                                }   // ix
                        }    // side

                        //canvas.cd(1);
                        //float bmin[3] ={0.7, 0.5, 0.4};
                        //float bmax[3] ={1.7, 1.0, 0.8};
                        //float emin[3] ={1.5, 0.8, 0.4};
                        //float emax[3] ={2.5, 1.5, 0.8};
                        TLine* l = new TLine(0., 0., 0., 0.);
                        l->SetLineWidth(1);
                        int ixSectorsEE[202] = {
                                62, 62, 61, 61, 60, 60, 59, 59, 58, 58, 56, 56, 46, 46, 44, 44, 43, 43, 42, 42, 
                                41, 41, 40, 40, 41, 41, 42, 42, 43, 43, 44, 44, 46, 46, 56, 56, 58, 58, 59, 59, 
                                60, 60, 61, 61, 62, 62,  0,101,101, 98, 98, 96, 96, 93, 93, 88, 88, 86, 86, 81, 
                                81, 76, 76, 66, 66, 61, 61, 41, 41, 36, 36, 26, 26, 21, 21, 16, 16, 14, 14,  9,
                                9,  6,  6,  4,  4,  1,  1,  4,  4,  6,  6,  9,  9, 14, 14, 16, 16, 21, 21, 26, 
                                26, 36, 36, 41, 41, 61, 61, 66, 66, 76, 76, 81, 81, 86, 86, 88, 88, 93, 93, 96, 
                                96, 98, 98,101,101,  0, 62, 66, 66, 71, 71, 81, 81, 91, 91, 93,  0, 62, 66, 66, 
                                91, 91, 98,  0, 58, 61, 61, 66, 66, 71, 71, 76, 76, 81, 81,  0, 51, 51,  0, 44, 
                                41, 41, 36, 36, 31, 31, 26, 26, 21, 21,  0, 40, 36, 36, 11, 11,  4,  0, 40, 36, 
                                36, 31, 31, 21, 21, 11, 11,  9,  0, 46, 46, 41, 41, 36, 36,  0, 56, 56, 61, 61, 66, 66};

                                int iySectorsEE[202] = {
                                        51, 56, 56, 58, 58, 59, 59, 60, 60, 61, 61, 62, 62, 61, 61, 60, 60, 59, 59, 58, 
                                        58, 56, 56, 46, 46, 44, 44, 43, 43, 42, 42, 41, 41, 40, 40, 41, 41, 42, 42, 43, 
                                        43, 44, 44, 46, 46, 51,  0, 51, 61, 61, 66, 66, 76, 76, 81, 81, 86, 86, 88, 88, 
                                        93, 93, 96, 96, 98, 98,101,101, 98, 98, 96, 96, 93, 93, 88, 88, 86, 86, 81, 81, 
                                        76, 76, 66, 66, 61, 61, 41, 41, 36, 36, 26, 26, 21, 21, 16, 16, 14, 14,  9,  9, 
                                        6,  6,  4,  4,  1,  1,  4,  4,  6,  6,  9,  9, 14, 14, 16, 16, 21, 21, 26, 26, 
                                        36, 36, 41, 41, 51,  0, 46, 46, 41, 41, 36, 36, 31, 31, 26, 26,  0, 51, 51, 56, 
                                        56, 61, 61,  0, 61, 61, 66, 66, 71, 71, 76, 76, 86, 86, 88,  0, 62,101,  0, 61, 
                                        61, 66, 66, 71, 71, 76, 76, 86, 86, 88,  0, 51, 51, 56, 56, 61, 61,  0, 46, 46, 
                                        41, 41, 36, 36, 31, 31, 26, 26,  0, 40, 31, 31, 16, 16,  6,  0, 40, 31, 31, 16, 16,  6};

                                        for (int gId = 0; gId < TOTAL_IMAGES; gId++) {//was 3
                                                pad[gId][0]->cd();
                                                endc_m_m[gId]->SetStats(0);
                                                //endc_m_m[gId]->SetMaximum(225);
                                                //endc_m_m[gId]->SetMinimum(175);
                                                endc_m_m[gId]->Draw("colz");
                                                for ( int i=0; i<201; i=i+1) {
                                                        if ( (ixSectorsEE[i]!=0 || iySectorsEE[i]!=0) && 
                                                                (ixSectorsEE[i+1]!=0 || iySectorsEE[i+1]!=0) ) {
                                                                        l->DrawLine(ixSectorsEE[i], iySectorsEE[i], 
                                                                                ixSectorsEE[i+1], iySectorsEE[i+1]);
                                                                        l->SetLineWidth(0.2);
                                                        }
                                                }

                                                //pad[gId + 3][0]->cd();
                                                //endc_m_r[gId]->SetStats(0);
                                                //endc_m_r[gId]->SetMaximum(emax[gId]);
                                                //endc_m_r[gId]->SetMinimum(emin[gId]);
                                                //endc_m_r[gId]->Draw("colz");
                                                //for ( int i=0; i<201; i=i+1) {
                                                //      if ( (ixSectorsEE[i]!=0 || iySectorsEE[i]!=0) && 
                                                //              (ixSectorsEE[i+1]!=0 || iySectorsEE[i+1]!=0) ) {
                                                //                      l->DrawLine(ixSectorsEE[i], iySectorsEE[i], 
                                                //                              ixSectorsEE[i+1], iySectorsEE[i+1]);
                                                //      }
                                                //}

                                                //canvas.cd(2);
                                                pad[gId][1]->cd();
                                                barrel_m[gId]->SetStats(0);
                                                //barrel_m[gId]->SetMaximum(225);
                                                //barrel_m[gId]->SetMinimum(175);
                                                barrel_m[gId]->Draw("colz");
                                                for(int i = 0; i <17; i++) {
                                                        Double_t x = 20.+ (i *20);
                                                        l = new TLine(x,-85.,x,86.);
                                                        l->Draw();
                                                }
                                                l = new TLine(0.,0.,360.,0.);
                                                l->Draw();

                                                //pad[gId + 3][1]->cd();
                                                //barrel_r[gId]->SetStats(0);
                                                //barrel_r[gId]->SetMaximum(bmax[gId]);
                                                //barrel_r[gId]->SetMinimum(bmin[gId]);
                                                //barrel_r[gId]->Draw("colz");
                                                //for(int i = 0; i <17; i++) {
                                                //      Double_t x = 20.+ (i *20);
                                                //      l = new TLine(x,-85.,x,86.);
                                                //      l->Draw();
                                                //}
                                                //l = new TLine(0.,0.,360.,0.);
                                                //l->Draw();

                                                //canvas.cd(3);
                                                pad[gId][2]->cd();
                                                endc_p_m[gId]->SetStats(0);
                                                //endc_p_m[gId]->SetMaximum(225);
                                                //endc_p_m[gId]->SetMinimum(175);
                                                endc_p_m[gId]->Draw("colz");
                                                for ( int i=0; i<201; i=i+1) {
                                                        if ( (ixSectorsEE[i]!=0 || iySectorsEE[i]!=0) && 
                                                                (ixSectorsEE[i+1]!=0 || iySectorsEE[i+1]!=0) ) {
                                                                        l->DrawLine(ixSectorsEE[i], iySectorsEE[i], 
                                                                                ixSectorsEE[i+1], iySectorsEE[i+1]);
                                                        }
                                                }

                                        //      pad[gId + 3][2]->cd();
                                        //      endc_p_r[gId]->SetStats(0);
                                        //      endc_p_r[gId]->SetMaximum(emax[gId]);
                                        //      endc_p_r[gId]->SetMinimum(emin[gId]);
                                        //      endc_p_r[gId]->Draw("colz");
                                        //      for ( int i=0; i<201; i=i+1) {
                                        //              if ( (ixSectorsEE[i]!=0 || iySectorsEE[i]!=0) && 
                                        //                      (ixSectorsEE[i+1]!=0 || iySectorsEE[i+1]!=0) ) {
                                        //                              l->DrawLine(ixSectorsEE[i], iySectorsEE[i], 
                                        //                                      ixSectorsEE[i+1], iySectorsEE[i+1]);
                                        //              }
                                        //      }
                                        }

                                        canvas.SaveAs(filename.c_str());
                                        return filename;
        }  // plot
template<>
std::string cond::PayLoadInspector< EcalADCToGeVConstant >::plot ( std::string const &  filename,
std::string const &  ,
std::vector< int > const &  ,
std::vector< float > const &   
) const

Definition at line 51 of file EcalADCToGeVConstantPyWrapper.cc.

References f, alignmentValidation::fname, and AlCaHLTBitMon_QueryRunRegistry::string.

                                                                                   {
    std::string fname = filename + ".png";
    std::ofstream f(fname.c_str());
    return fname;
  }
template<>
std::string cond::PayLoadInspector< EcalLinearCorrections >::plot ( std::string const &  filename,
std::string const &  ,
std::vector< int > const &  ,
std::vector< float > const &   
) const

Definition at line 139 of file EcalLinearCorrectionsPyWrapper.cc.

References Reference_intrackfit_cff::barrel, svgfig::canvas(), lut2db_cfg::filename, ecalMGPA::gainId(), i, EEDetId::IX_MAX, EEDetId::IY_MAX, kBarlRings, kBarlWedges, kEndcWedgesX, kEndcWedgesY, kSides, prof2calltree::l, EBDetId::MAX_IETA, EBDetId::MAX_IPHI, getGTfromDQMFile::obj, p1, p2, p3, EEDetId::validDetId(), x, and detailsBasic3DVector::y.

                                                {
                        gStyle->SetPalette(1);
                        //    TCanvas canvas("CC map","CC map",840,600);
                        TCanvas canvas("CC map","CC map",800,1200);

                        float xmi[3] = {0.0 , 0.22, 0.78};
                        float xma[3] = {0.22, 0.78, 1.00};
                        TPad*** pad = new TPad**[3];
                        for (int gId = 0; gId < 3; gId++) {
                                pad[gId] = new TPad*[3];
                                for (int obj = 0; obj < 3; obj++) {
                                        float yma = 1.- (0.32 * gId);
                                        float ymi = yma - 0.30;
                                        pad[gId][obj] = new TPad(Form("p_%i_%i", obj, gId),Form("p_%i_%i", obj, gId),
                                                xmi[obj], ymi, xma[obj], yma);
                                        pad[gId][obj]->Draw();
                                }
                        }

                        const int kGains       = 3;
                        const int gainValues[3] = {1, 2, 3};
                        const int kSides       = 2;
                        const int kBarlRings   = EBDetId::MAX_IETA;
                        const int kBarlWedges  = EBDetId::MAX_IPHI;
                        const int kEndcWedgesX = EEDetId::IX_MAX;
                        const int kEndcWedgesY = EEDetId::IY_MAX;

                        TH2F** barrel = new TH2F*[3];
                        TH2F** endc_p = new TH2F*[3];
                        TH2F** endc_m = new TH2F*[3];

                        for (int gainId = 0; gainId < kGains; gainId++) {
                          barrel[gainId] = new TH2F(Form("EBp%i", gainValues[gainId]),Form("EBp%i", gainValues[gainId]),360,0,360, 170, -85,85);
                          endc_p[gainId] = new TH2F(Form("EE+p%i",gainValues[gainId]),Form("EE+p%i",gainValues[gainId]),100,1,101,100,1,101);
                          endc_m[gainId] = new TH2F(Form("EE-p%i",gainValues[gainId]),Form("EE-p%i",gainValues[gainId]),100,1,101,100,1,101);
                                
                        }

                        for (int sign=0; sign < kSides; sign++) {
                                int thesign = sign==1 ? 1:-1;

                                for (int ieta=0; ieta<kBarlRings; ieta++) {
                                        for (int iphi=0; iphi<kBarlWedges; iphi++) {
                                                EBDetId id((ieta+1)*thesign, iphi+1);
                                                float y = -1 - ieta;
                                                if(sign == 1) y = ieta;
                                                barrel[0]->Fill(iphi, y, object().getLaserMap()[id.rawId()].p1);
                                                barrel[1]->Fill(iphi, y, object().getLaserMap()[id.rawId()].p2);
                                                barrel[2]->Fill(iphi, y, object().getLaserMap()[id.rawId()].p3);

                                        }  // iphi
                                }   // ieta

                                for (int ix=0; ix<kEndcWedgesX; ix++) {
                                        for (int iy=0; iy<kEndcWedgesY; iy++) {
                                                if (! EEDetId::validDetId(ix+1,iy+1,thesign)) continue;
                                                EEDetId id(ix+1,iy+1,thesign);
                                                if (thesign==1) {
                                                        endc_p[0]->Fill(ix+1,iy+1,object().getLaserMap()[id.rawId()].p1);
                                                        endc_p[1]->Fill(ix+1,iy+1,object().getLaserMap()[id.rawId()].p2);
                                                        endc_p[2]->Fill(ix+1,iy+1,object().getLaserMap()[id.rawId()].p3);

                                                }
                                                else{ 
                                                        endc_m[0]->Fill(ix+1,iy+1,object().getLaserMap()[id.rawId()].p1);
                                                        endc_m[1]->Fill(ix+1,iy+1,object().getLaserMap()[id.rawId()].p2);
                                                        endc_m[2]->Fill(ix+1,iy+1,object().getLaserMap()[id.rawId()].p3);
                                                
                                                }
                                        }  // iy
                                }   // ix
                        }    // side

                        //canvas.cd(1);

                        TLine* l = new TLine(0., 0., 0., 0.);
                        l->SetLineWidth(1);
                        int ixSectorsEE[202] = {
                                62, 62, 61, 61, 60, 60, 59, 59, 58, 58, 56, 56, 46, 46, 44, 44, 43, 43, 42, 42, 
                                41, 41, 40, 40, 41, 41, 42, 42, 43, 43, 44, 44, 46, 46, 56, 56, 58, 58, 59, 59, 
                                60, 60, 61, 61, 62, 62,  0,101,101, 98, 98, 96, 96, 93, 93, 88, 88, 86, 86, 81, 
                                81, 76, 76, 66, 66, 61, 61, 41, 41, 36, 36, 26, 26, 21, 21, 16, 16, 14, 14,  9,
                                9,  6,  6,  4,  4,  1,  1,  4,  4,  6,  6,  9,  9, 14, 14, 16, 16, 21, 21, 26, 
                                26, 36, 36, 41, 41, 61, 61, 66, 66, 76, 76, 81, 81, 86, 86, 88, 88, 93, 93, 96, 
                                96, 98, 98,101,101,  0, 62, 66, 66, 71, 71, 81, 81, 91, 91, 93,  0, 62, 66, 66, 
                                91, 91, 98,  0, 58, 61, 61, 66, 66, 71, 71, 76, 76, 81, 81,  0, 51, 51,  0, 44, 
                                41, 41, 36, 36, 31, 31, 26, 26, 21, 21,  0, 40, 36, 36, 11, 11,  4,  0, 40, 36, 
                                36, 31, 31, 21, 21, 11, 11,  9,  0, 46, 46, 41, 41, 36, 36,  0, 56, 56, 61, 61, 66, 66};

                                int iySectorsEE[202] = {
                                        51, 56, 56, 58, 58, 59, 59, 60, 60, 61, 61, 62, 62, 61, 61, 60, 60, 59, 59, 58, 
                                        58, 56, 56, 46, 46, 44, 44, 43, 43, 42, 42, 41, 41, 40, 40, 41, 41, 42, 42, 43, 
                                        43, 44, 44, 46, 46, 51,  0, 51, 61, 61, 66, 66, 76, 76, 81, 81, 86, 86, 88, 88, 
                                        93, 93, 96, 96, 98, 98,101,101, 98, 98, 96, 96, 93, 93, 88, 88, 86, 86, 81, 81, 
                                        76, 76, 66, 66, 61, 61, 41, 41, 36, 36, 26, 26, 21, 21, 16, 16, 14, 14,  9,  9, 
                                        6,  6,  4,  4,  1,  1,  4,  4,  6,  6,  9,  9, 14, 14, 16, 16, 21, 21, 26, 26, 
                                        36, 36, 41, 41, 51,  0, 46, 46, 41, 41, 36, 36, 31, 31, 26, 26,  0, 51, 51, 56, 
                                        56, 61, 61,  0, 61, 61, 66, 66, 71, 71, 76, 76, 86, 86, 88,  0, 62,101,  0, 61, 
                                        61, 66, 66, 71, 71, 76, 76, 86, 86, 88,  0, 51, 51, 56, 56, 61, 61,  0, 46, 46, 
                                        41, 41, 36, 36, 31, 31, 26, 26,  0, 40, 31, 31, 16, 16,  6,  0, 40, 31, 31, 16, 16,  6};

                                        for (int gId = 0; gId < 3; gId++) {
                                                pad[gId][0]->cd();
                                                endc_m[gId]->SetStats(0);
                                                
                                                endc_m[gId]->GetZaxis()->SetRangeUser(0.9,1.1);
                                                endc_m[gId]->Draw("colz");
                                                for ( int i=0; i<201; i=i+1) {
                                                        if ( (ixSectorsEE[i]!=0 || iySectorsEE[i]!=0) && 
                                                                (ixSectorsEE[i+1]!=0 || iySectorsEE[i+1]!=0) ) {
                                                                        l->DrawLine(ixSectorsEE[i], iySectorsEE[i], 
                                                                                ixSectorsEE[i+1], iySectorsEE[i+1]);
                                                                        l->SetLineWidth(0.2);
                                                        }
                                                }
                                                pad[gId][1]->cd();
                                                barrel[gId]->SetStats(0);
                                                barrel[gId]->GetZaxis()->SetRangeUser(0.9,1.1); 
                                                
                                                barrel[gId]->Draw("colz");
                                                for(int i = 0; i <17; i++) {
                                                        Double_t x = 20.+ (i *20);
                                                        l = new TLine(x,-85.,x,86.);
                                                        l->Draw();
                                                }
                                                l = new TLine(0.,0.,360.,0.);
                                                l->Draw();

                                                //canvas.cd(3);
                                                pad[gId][2]->cd();
                                                endc_p[gId]->SetStats(0);
                                                endc_p[gId]->GetZaxis()->SetRangeUser(0.9,1.1); 
                                                
                                                endc_p[gId]->Draw("colz");
                                                for ( int i=0; i<201; i=i+1) {
                                                        if ( (ixSectorsEE[i]!=0 || iySectorsEE[i]!=0) && 
                                                                (ixSectorsEE[i+1]!=0 || iySectorsEE[i+1]!=0) ) {
                                                                        l->DrawLine(ixSectorsEE[i], iySectorsEE[i], 
                                                                                ixSectorsEE[i+1], iySectorsEE[i+1]);
                                                        }
                                                }
                                        }

                                        canvas.SaveAs(filename.c_str());
                                        return filename;
        }  // plot
template<>
std::string cond::PayLoadInspector< EcalTPGStripStatus >::plot ( std::string const &  filename,
std::string const &  ,
std::vector< int > const &  ,
std::vector< float > const &   
) const

Definition at line 54 of file EcalTPGStripStatusPyWrapper.cc.

References svgfig::canvas(), gather_cfg::cout, EEDetId::denseIndex(), cond::rpcobgas::detid, EEDetId::detIdFromDenseIndex(), Exception, f, lut2db_cfg::filename, cmsRelvalreport::green(), i, EEDetId::ix(), EEDetId::iy(), prof2calltree::l, EcalTrivialCondRetriever_cfi::mappingFile, getGTfromDQMFile::obj, dbtoconf::object, cmsRelvalreport::red(), AlCaHLTBitMon_QueryRunRegistry::string, groupFilesInBlocks::tt, x, EEDetId::XYMODE, detailsBasic3DVector::y, and EEDetId::zside().

                                                                                         {
    gStyle->SetPalette(1);

    const Int_t NRGBs = 5;
    const Int_t NCont = 255;

    Double_t stops[NRGBs] = { 0.00, 0.34, 0.61, 0.84, 1.00 };
    Double_t red[NRGBs]   = { 0.00, 0.00, 0.87, 1.00, 0.51 };
    Double_t green[NRGBs] = { 0.00, 0.81, 1.00, 0.20, 0.00 };
    Double_t blue[NRGBs]  = { 0.51, 1.00, 0.12, 0.00, 0.00 };
    TColor::CreateGradientColorTable(NRGBs, stops, red, green, blue, NCont);
    gStyle->SetNumberContours(NCont);
 
    TCanvas canvas("CC map","CC map",1200, 600);
    TPad** pad = new TPad*[2];
    float xmi[2] = {0.0, 0.5};
    float xma[2] = {0.5, 1.0};
    for (int obj = 0; obj < 2; obj++) {
      pad[obj] = new TPad(Form("p_%i", obj),Form("p_%i", obj),
                          xmi[obj], 0.0, xma[obj], 1.0);
      pad[obj]->Draw();
    }

    TH2F** hEEStrip = new TH2F*[2];
    for (int iz = 0; iz < 2; iz++) {
      int izz = iz;
      if(iz == 0) izz = -1;
      hEEStrip[iz] = new TH2F(Form("EEStrip_%i", iz),
                              Form("EE masked strips side %i", izz),101,1.,101.,101,1.,101.);
      hEEStrip[iz]->SetStats(0);
    }

    //    EcalMappingElectronics *mapping = new EcalMappingElectronics ;
    std::string mappingFile = "Geometry/EcalMapping/data/EEMap.txt";
   
    std::ifstream f(edm::FileInPath(mappingFile).fullPath().c_str());
    if (!f.good()) {
      std::cout << "EcalTPGStripStatusPyWrapper File not found" << std::endl;
      throw cms::Exception("FileNotFound");
    }

    int ix, iy, iz, CL;
    int dccid, towerid, pseudostrip_in_SC, xtal_in_pseudostrip;
    int tccid, tower, pseudostrip_in_TCC, pseudostrip_in_TT;
    uint32_t rawEE[108][28][5][5];
    int NbrawEE[108][28][5];
    for(int TCC = 0; TCC < 108; TCC++)
      for(int TT = 0; TT < 28; TT++)
        for(int ST = 0; ST < 5; ST++)
          NbrawEE[TCC][TT][ST] = 0;
    while ( ! f.eof()) {
      f >> ix >> iy >> iz >> CL >> dccid >> towerid >> pseudostrip_in_SC >> xtal_in_pseudostrip 
        >> tccid >> tower >> pseudostrip_in_TCC >> pseudostrip_in_TT ;
      
      EEDetId detid(ix,iy,iz,EEDetId::XYMODE);
      uint32_t rawId = detid.denseIndex();
      if(tccid > 108 || tower > 28 || pseudostrip_in_TT > 5 || xtal_in_pseudostrip > 5)
        std::cout << " tccid " << tccid <<  " tower " << tower << " pseudostrip_in_TT "<< pseudostrip_in_TT
                  <<" xtal_in_pseudostrip " << xtal_in_pseudostrip << std::endl;
      else {
        rawEE[tccid - 1][tower - 1][pseudostrip_in_TT - 1][xtal_in_pseudostrip - 1] = rawId;
        NbrawEE[tccid - 1][tower - 1][pseudostrip_in_TT - 1]++;
      }
      /*
      //      if(ix%10 == 0 && iy%10 == 0) std::cout << " dcc tower ps_in_SC xtal_in_ps " << dccid << " " << towerid << " " << pseudostrip_in_SC << " " << xtal_in_pseudostrip << std::endl;
      EcalElectronicsId elecid(dccid,towerid, pseudostrip_in_SC, xtal_in_pseudostrip);
      //      if(ix%10 == 0 && iy%10 == 0) std::cout << " tcc tt ps_in_TT xtal_in_ps " << tccid << " " << tower << " " << pseudostrip_in_TT << " " << xtal_in_pseudostrip << std::endl;
      EcalTriggerElectronicsId triggerid(tccid, tower, pseudostrip_in_TT, xtal_in_pseudostrip);
      EcalMappingElement aElement;
      aElement.electronicsid = elecid.rawId();
      aElement.triggerid = triggerid.rawId();
      (*mapping).setValue(detid, aElement);
      */
    }

    f.close();

    const EcalTPGStripStatusMap &stripMap = object().getMap();
    std::cout << " tower map size " << stripMap.size() << std::endl;
    double wei[2] = {0., 0.};
    EcalTPGStripStatusMapIterator itSt;
    for(itSt = stripMap.begin(); itSt != stripMap.end(); ++itSt) {
      if(itSt->second > 0) {
        // let's decode the ID
        int strip = itSt->first/8;
        int pseudostrip = strip & 0x7;
        strip /= 8;
        int tt = strip & 0x7F;
        strip /= 128;
        int tccid = strip & 0x7F;
        int NbXtalInStrip = NbrawEE[tccid - 1][tt - 1][pseudostrip - 1];
        if(NbXtalInStrip != 5) std::cout << " Strip TCC " << tccid << " TT " << tt << " ST " << pseudostrip
                                         << " Nx Xtals " << NbXtalInStrip << std::endl;
        for(int Xtal = 0; Xtal < NbXtalInStrip; Xtal++) {
          uint32_t rawId = rawEE[tccid - 1][tt - 1][pseudostrip - 1][Xtal];
          //    std::cout << " rawid " << rawId << std::endl;
          EEDetId detid = EEDetId::detIdFromDenseIndex(rawId);
          float x = (float)detid.ix();
          float y = (float)detid.iy();
          int iz = detid.zside();
          if(iz == -1) iz++;
          if(Xtal == 0)   wei[iz] += 1.;
          hEEStrip[iz]->Fill(x + 0.5, y + 0.5, wei[iz]);
          //    std::cout << " x " << ix << " y " << iy << " z " << iz << std::endl;
        }
      }
    }

    TLine* l = new TLine(0., 0., 0., 0.);
    l->SetLineWidth(1);
    int ixSectorsEE[202] = {
      62, 62, 61, 61, 60, 60, 59, 59, 58, 58, 56, 56, 46, 46, 44, 44, 43, 43, 42, 42, 
      41, 41, 40, 40, 41, 41, 42, 42, 43, 43, 44, 44, 46, 46, 56, 56, 58, 58, 59, 59, 
      60, 60, 61, 61, 62, 62,  0,101,101, 98, 98, 96, 96, 93, 93, 88, 88, 86, 86, 81, 
      81, 76, 76, 66, 66, 61, 61, 41, 41, 36, 36, 26, 26, 21, 21, 16, 16, 14, 14,  9,
      9,  6,  6,  4,  4,  1,  1,  4,  4,  6,  6,  9,  9, 14, 14, 16, 16, 21, 21, 26, 
      26, 36, 36, 41, 41, 61, 61, 66, 66, 76, 76, 81, 81, 86, 86, 88, 88, 93, 93, 96, 
      96, 98, 98,101,101,  0, 62, 66, 66, 71, 71, 81, 81, 91, 91, 93,  0, 62, 66, 66, 
      91, 91, 98,  0, 58, 61, 61, 66, 66, 71, 71, 76, 76, 81, 81,  0, 51, 51,  0, 44, 
      41, 41, 36, 36, 31, 31, 26, 26, 21, 21,  0, 40, 36, 36, 11, 11,  4,  0, 40, 36, 
      36, 31, 31, 21, 21, 11, 11,  9,  0, 46, 46, 41, 41, 36, 36,  0, 56, 56, 61, 61, 66, 66};

    int iySectorsEE[202] = {
      51, 56, 56, 58, 58, 59, 59, 60, 60, 61, 61, 62, 62, 61, 61, 60, 60, 59, 59, 58, 
      58, 56, 56, 46, 46, 44, 44, 43, 43, 42, 42, 41, 41, 40, 40, 41, 41, 42, 42, 43, 
      43, 44, 44, 46, 46, 51,  0, 51, 61, 61, 66, 66, 76, 76, 81, 81, 86, 86, 88, 88, 
      93, 93, 96, 96, 98, 98,101,101, 98, 98, 96, 96, 93, 93, 88, 88, 86, 86, 81, 81, 
      76, 76, 66, 66, 61, 61, 41, 41, 36, 36, 26, 26, 21, 21, 16, 16, 14, 14,  9,  9, 
      6,  6,  4,  4,  1,  1,  4,  4,  6,  6,  9,  9, 14, 14, 16, 16, 21, 21, 26, 26, 
      36, 36, 41, 41, 51,  0, 46, 46, 41, 41, 36, 36, 31, 31, 26, 26,  0, 51, 51, 56, 
      56, 61, 61,  0, 61, 61, 66, 66, 71, 71, 76, 76, 86, 86, 88,  0, 62,101,  0, 61, 
      61, 66, 66, 71, 71, 76, 76, 86, 86, 88,  0, 51, 51, 56, 56, 61, 61,  0, 46, 46, 
      41, 41, 36, 36, 31, 31, 26, 26,  0, 40, 31, 31, 16, 16,  6,  0, 40, 31, 31, 16, 16,  6};

    pad[0]->cd();
    hEEStrip[0]->Draw("col");
    for ( int i=0; i<201; i=i+1) {
      if ( (ixSectorsEE[i]!=0 || iySectorsEE[i]!=0) && 
           (ixSectorsEE[i+1]!=0 || iySectorsEE[i+1]!=0) ) {
        l->DrawLine(ixSectorsEE[i], iySectorsEE[i], 
                    ixSectorsEE[i+1], iySectorsEE[i+1]);
        l->SetLineWidth(0.2);
      }
    }

    pad[1]->cd();
    hEEStrip[1]->Draw("col");
    for ( int i=0; i<201; i=i+1) {
      if ( (ixSectorsEE[i]!=0 || iySectorsEE[i]!=0) && 
           (ixSectorsEE[i+1]!=0 || iySectorsEE[i+1]!=0) ) {
        l->DrawLine(ixSectorsEE[i], iySectorsEE[i], 
                    ixSectorsEE[i+1], iySectorsEE[i+1]);
        l->SetLineWidth(0.2);
      }
    }

    canvas.SaveAs(filename.c_str());
    return filename;
  }  // plot
template<>
std::string cond::PayLoadInspector< EcalTPGTowerStatus >::plot ( std::string const &  filename,
std::string const &  ,
std::vector< int > const &  ,
std::vector< float > const &   
) const

Definition at line 52 of file EcalTPGTowerStatusPyWrapper.cc.

References Reference_intrackfit_cff::barrel, svgfig::canvas(), gather_cfg::cout, lut2db_cfg::filename, i, EcalTrigTowerDetId::ieta(), EcalTrigTowerDetId::iphi(), prof2calltree::l, dbtoconf::object, ecaldqm::ttId(), and x.

                                                                                         {
    gStyle->SetPalette(1);

    TCanvas canvas("CC map","CC map",800, 400);

    TH2F* barrel = new TH2F("EB","EB TPG Tower Status", 72, 0, 72, 34, -17, 17);

    const EcalTPGTowerStatusMap &towerMap = object().getMap();
    std::cout << " tower map size " << towerMap.size() << std::endl;
    EcalTPGTowerStatusMapIterator it;
    for(it = towerMap.begin(); it != towerMap.end(); ++it) {
      if((*it).second > 0) {
        EcalTrigTowerDetId ttId((*it).first);
        int ieta = ttId.ieta();
        if(ieta < 0) ieta--;   // 1 to 17
        int iphi = ttId.iphi() - 1;  // 0 to 71
        barrel->Fill(iphi, ieta, (*it).second);
      }
    }
    TLine* l = new TLine(0., 0., 0., 0.);
    l->SetLineWidth(1);
    canvas.cd();
    barrel->SetStats(0);
    barrel->Draw("col");
    for(int i = 0; i <17; i++) {
      Double_t x = 4.+ (i * 4);
      l = new TLine(x, -17., x, 17.);
      l->Draw();
    }
    l = new TLine(0., 0., 72., 0.);
    l->Draw();

    canvas.SaveAs(filename.c_str());
    return filename;
  }  // plot
template<>
string cond::PayLoadInspector< Alignments >::plot ( string const &  filename,
string const &  ,
vector< int > const &  ,
vector< float > const &   
) const

Definition at line 69 of file EcalAlignmentPyWrapper.cc.

References lut2db_cfg::filename.

                                                                         {
    return filename;
  }
template<>
std::string cond::PayLoadInspector< DTLVStatus >::plot ( std::string const &  filename,
std::string const &  ,
std::vector< int > const &  ,
std::vector< float > const &   
) const

Definition at line 48 of file DTLVStatusPyWrapper.cc.

References f, alignmentValidation::fname, and AlCaHLTBitMon_QueryRunRegistry::string.

                                                                                   {
    std::string fname = filename + ".png";
    std::ofstream f(fname.c_str());
    return fname;
  }
template<>
std::string cond::PayLoadInspector< EcalChannelStatus >::plot ( std::string const &  filename,
std::string const &  ,
std::vector< int > const &  ,
std::vector< float > const &   
) const

Definition at line 346 of file EcalChannelStatusPyWrapper.cc.

References Reference_intrackfit_cff::barrel, svgfig::canvas(), lut2db_cfg::filename, cmsRelvalreport::green(), i, EEDetId::IX_MAX, EEDetId::IY_MAX, kBarlRings, kBarlWedges, kEndcWedgesX, kEndcWedgesY, kSides, prof2calltree::l, EBDetId::MAX_IETA, EBDetId::MAX_IPHI, cmsRelvalreport::red(), EEDetId::validDetId(), and x.

                                                {
                        // use David's palette
                        gStyle->SetPalette(1);

                        const Int_t NRGBs = 5;
                        const Int_t NCont = 255;

                        Double_t stops[NRGBs] = { 0.00, 0.34, 0.61, 0.84, 1.00 };
                        Double_t red[NRGBs]   = { 0.00, 0.00, 0.87, 1.00, 0.51 };
                        Double_t green[NRGBs] = { 0.00, 0.81, 1.00, 0.20, 0.00 };
                        Double_t blue[NRGBs]  = { 0.51, 1.00, 0.12, 0.00, 0.00 };
                        TColor::CreateGradientColorTable(NRGBs, stops, red, green, blue, NCont);
                        gStyle->SetNumberContours(NCont);

                        TCanvas canvas("CC map","CC map",800,800);
                        TPad* padb = new TPad("padb","padb", 0., 0.55, 1., 1.);
                        padb->Draw();
                        TPad* padem = new TPad("padem","padem", 0., 0., 0.45, 0.45);
                        padem->Draw();
                        TPad* padep = new TPad("padep","padep", 0.55, 0., 1., 0.45);
                        padep->Draw();

                        const int kSides       = 2;
                        const int kBarlRings   = EBDetId::MAX_IETA;
                        const int kBarlWedges  = EBDetId::MAX_IPHI;
                        const int kEndcWedgesX = EEDetId::IX_MAX;
                        const int kEndcWedgesY = EEDetId::IY_MAX;

                        TH2F* barrel = new TH2F("EB","EB Channel Status",360,0,360, 171, -85,86);
                        TH2F* endc_p = new TH2F("EE+","EE+ Channel Status",100,1,101,100,1,101);
                        TH2F* endc_m = new TH2F("EE-","EE- Channel Status",100,1,101,100,1,101);

                        for (int sign=0; sign < kSides; sign++) {
                                int thesign = sign==1 ? 1:-1;

                                for (int ieta=0; ieta<kBarlRings; ieta++) {
                                        for (int iphi=0; iphi<kBarlWedges; iphi++) {
                                                EBDetId id((ieta+1)*thesign, iphi+1);
                                                barrel->Fill(iphi, ieta*thesign + thesign, object()[id.rawId()].getStatusCode());
                                                //        if(iphi < 20 && object()[id.rawId()].getStatusCode() > 10)
                                                //          std::cout << " phi " << iphi << " eta " << ieta << " status " << object()[id.rawId()].getStatusCode() << std::endl;
                                        }  // iphi
                                }   // ieta

                                for (int ix=0; ix<kEndcWedgesX; ix++) {
                                        for (int iy=0; iy<kEndcWedgesY; iy++) {
                                                if (! EEDetId::validDetId(ix+1,iy+1,thesign)) continue;
                                                EEDetId id(ix+1,iy+1,thesign);
                                                if (thesign==1) {
                                                        endc_p->Fill(ix+1,iy+1,object()[id.rawId()].getStatusCode());
                                                }
                                                else{ 
                                                        endc_m->Fill(ix+1,iy+1,object()[id.rawId()].getStatusCode());
                                                }
                                        }  // iy
                                }   // ix
                        }    // side

                        TLine* l = new TLine(0., 0., 0., 0.);
                        l->SetLineWidth(1);
                        padb->cd();
                        barrel->SetStats(0);
                        barrel->SetMaximum(14);
                        barrel->SetMinimum(0);
                        barrel->Draw("colz");
                        for(int i = 0; i <17; i++) {
                                Double_t x = 20.+ (i *20);
                                l = new TLine(x,-85.,x,86.);
                                l->Draw();
                        }
                        l = new TLine(0.,0.,360.,0.);
                        l->Draw();
                        int ixSectorsEE[202] = {
                                62, 62, 61, 61, 60, 60, 59, 59, 58, 58, 56, 56, 46, 46, 44, 44, 43, 43, 42, 42, 
                                41, 41, 40, 40, 41, 41, 42, 42, 43, 43, 44, 44, 46, 46, 56, 56, 58, 58, 59, 59, 
                                60, 60, 61, 61, 62, 62,  0,101,101, 98, 98, 96, 96, 93, 93, 88, 88, 86, 86, 81, 
                                81, 76, 76, 66, 66, 61, 61, 41, 41, 36, 36, 26, 26, 21, 21, 16, 16, 14, 14,  9,
                                9,  6,  6,  4,  4,  1,  1,  4,  4,  6,  6,  9,  9, 14, 14, 16, 16, 21, 21, 26, 
                                26, 36, 36, 41, 41, 61, 61, 66, 66, 76, 76, 81, 81, 86, 86, 88, 88, 93, 93, 96, 
                                96, 98, 98,101,101,  0, 62, 66, 66, 71, 71, 81, 81, 91, 91, 93,  0, 62, 66, 66, 
                                91, 91, 98,  0, 58, 61, 61, 66, 66, 71, 71, 76, 76, 81, 81,  0, 51, 51,  0, 44, 
                                41, 41, 36, 36, 31, 31, 26, 26, 21, 21,  0, 40, 36, 36, 11, 11,  4,  0, 40, 36, 
                                36, 31, 31, 21, 21, 11, 11,  9,  0, 46, 46, 41, 41, 36, 36,  0, 56, 56, 61, 61, 66, 66};

                                int iySectorsEE[202] = {
                                        51, 56, 56, 58, 58, 59, 59, 60, 60, 61, 61, 62, 62, 61, 61, 60, 60, 59, 59, 58, 
                                        58, 56, 56, 46, 46, 44, 44, 43, 43, 42, 42, 41, 41, 40, 40, 41, 41, 42, 42, 43, 
                                        43, 44, 44, 46, 46, 51,  0, 51, 61, 61, 66, 66, 76, 76, 81, 81, 86, 86, 88, 88, 
                                        93, 93, 96, 96, 98, 98,101,101, 98, 98, 96, 96, 93, 93, 88, 88, 86, 86, 81, 81, 
                                        76, 76, 66, 66, 61, 61, 41, 41, 36, 36, 26, 26, 21, 21, 16, 16, 14, 14,  9,  9, 
                                        6,  6,  4,  4,  1,  1,  4,  4,  6,  6,  9,  9, 14, 14, 16, 16, 21, 21, 26, 26, 
                                        36, 36, 41, 41, 51,  0, 46, 46, 41, 41, 36, 36, 31, 31, 26, 26,  0, 51, 51, 56, 
                                        56, 61, 61,  0, 61, 61, 66, 66, 71, 71, 76, 76, 86, 86, 88,  0, 62,101,  0, 61, 
                                        61, 66, 66, 71, 71, 76, 76, 86, 86, 88,  0, 51, 51, 56, 56, 61, 61,  0, 46, 46, 
                                        41, 41, 36, 36, 31, 31, 26, 26,  0, 40, 31, 31, 16, 16,  6,  0, 40, 31, 31, 16, 16,  6};

                                        padem->cd();
                                        endc_m->SetStats(0);
                                        endc_m->SetMaximum(14);
                                        endc_m->SetMinimum(0);
                                        endc_m->Draw("colz");
                                        for ( int i=0; i<201; i=i+1) {
                                                if ( (ixSectorsEE[i]!=0 || iySectorsEE[i]!=0) && 
                                                        (ixSectorsEE[i+1]!=0 || iySectorsEE[i+1]!=0) ) {
                                                                l->DrawLine(ixSectorsEE[i], iySectorsEE[i], 
                                                                        ixSectorsEE[i+1], iySectorsEE[i+1]);
                                                }
                                        }
                                        padep->cd();
                                        endc_p->SetStats(0);
                                        endc_p->SetMaximum(14);
                                        endc_p->SetMinimum(0);
                                        endc_p->Draw("colz");
                                        for ( int i=0; i<201; i=i+1) {
                                                if ( (ixSectorsEE[i]!=0 || iySectorsEE[i]!=0) && 
                                                        (ixSectorsEE[i+1]!=0 || iySectorsEE[i+1]!=0) ) {
                                                                l->DrawLine(ixSectorsEE[i], iySectorsEE[i], 
                                                                        ixSectorsEE[i+1], iySectorsEE[i+1]);
                                                }
                                        }
                                        canvas.SaveAs(filename.c_str());
                                        return filename;
        }
template<>
std::string cond::PayLoadInspector< ESGain >::plot ( std::string const &  filename,
std::string const &  ,
std::vector< int > const &  ,
std::vector< float > const &   
) const

Definition at line 50 of file ESGainPyWrapper.cc.

References f, alignmentValidation::fname, and AlCaHLTBitMon_QueryRunRegistry::string.

                                                                                   {
    std::string fname = filename + ".png";
    std::ofstream f(fname.c_str());
    return fname;
  }
template<>
std::string cond::PayLoadInspector< DTMtime >::plot ( std::string const &  filename,
std::string const &  ,
std::vector< int > const &  ,
std::vector< float > const &   
) const

Definition at line 48 of file DTMtimePyWrapper.cc.

References f, alignmentValidation::fname, and AlCaHLTBitMon_QueryRunRegistry::string.

                                                                                   {
    std::string fname = filename + ".png";
    std::ofstream f(fname.c_str());
    return fname;
  }
template<>
std::string cond::PayLoadInspector< HcalChannelQuality >::plot ( std::string const &  filename,
std::string const &  ,
std::vector< int > const &  ,
std::vector< float > const &   
) const

Definition at line 102 of file HcalChannelQualityPyWrapper.cc.

References svgfig::canvas(), HcalDetId::depth(), HcalObjRepresent::FillUnphysicalHEHFBins(), HcalForward, HcalDetId::ieta(), HcalDetId::iphi(), dbtoconf::object, HcalObjRepresent::setup(), HcalDetId::subdet(), and x.

        {
                std::vector<TH2F> graphData;
                setup(graphData, "ChannelStatus"); 

                std::stringstream x;
                // Change the titles of each individual histogram
                for (unsigned int d=0;d < graphData.size();++d){
                        graphData[d].Reset();
                        x << "1+log2(status) for HCAL depth " << d+1;

                        //BUG CAN BE HERE:
                        //if (ChannelStatus->depth[d]) 
                        graphData[d].SetTitle(x.str().c_str());  // replace "setTitle" with "SetTitle", since you are using TH2F objects instead of MonitorElements
                        x.str("");
                }

                HcalDetId hcal_id;
                int ieta, depth, iphi, channelBits;
                double logstatus;

                //main loop
                // get all containers with names
                HcalChannelQuality::tAllContWithNames allContainers = object().getAllContainers();

                // initializing iterators
                HcalChannelQuality::tAllContWithNames::const_iterator iter;
                std::vector<HcalChannelStatus>::const_iterator contIter;

                //run trough all pair containers
                for (iter = allContainers.begin(); iter != allContainers.end(); ++iter){
                        for (contIter = (*iter).second.begin(); contIter != (*iter).second.end(); ++contIter){
                                hcal_id = HcalDetId((uint32_t)(*contIter).rawId());

                                channelBits = (uint32_t)(*contIter).getValue();
                                if (channelBits == 0) 
                                        continue;

                                depth = hcal_id.depth();
                                if (depth<1 || depth>4) 
                                        continue;

                                ieta=hcal_id.ieta();
                                iphi=hcal_id.iphi();

                                if (hcal_id.subdet() == HcalForward)
                                        ieta>0 ? ++ieta : --ieta;

                                logstatus = log2(1.*channelBits)+1;
                                //FILLING GOES HERE:
                                graphData[depth-1].Fill(ieta,iphi,logstatus);

                                //FOR DEBUGGING:
                                //std::cout << "ieta: " << ieta << "; iphi: " << iphi << "; logstatus: " << logstatus << "; channelBits: " << channelBits<< std::endl;
                        }
                }
                FillUnphysicalHEHFBins(graphData);



                //Drawing...
                // use David's palette
                gStyle->SetPalette(1);
                const Int_t NCont = 999;
                gStyle->SetNumberContours(NCont);
                TCanvas canvas("CC map","CC map",840,369*4);

                TPad pad1("pad1","pad1", 0.0, 0.75, 1.0, 1.0);
                pad1.Draw();
                TPad pad2("pad2","pad2", 0.0, 0.5, 1.0, 0.75);
                pad2.Draw();
                TPad pad3("pad3","pad3", 0.0, 0.25, 1.0, 0.5);
                pad3.Draw();
                TPad pad4("pad4","pad4", 0.0, 0.0, 1.0, 0.25);
                pad4.Draw();


                pad1.cd();
                graphData[0].SetStats(0);
                graphData[0].Draw("colz");

                pad2.cd();
                graphData[1].SetStats(0);
                graphData[1].Draw("colz");

                pad3.cd();
                graphData[2].SetStats(0);
                graphData[2].Draw("colz");

                pad4.cd();
                graphData[3].SetStats(0);
                graphData[3].Draw("colz");


                std::stringstream ss;
                ss <<filename << ".png";

                canvas.SaveAs((ss.str()).c_str());

                return (ss.str()).c_str();
        }
template<>
std::string cond::PayLoadInspector< HcalGains >::plot ( std::string const &  filename,
std::string const &  ,
std::vector< int > const &  ,
std::vector< float > const &   
) const

Definition at line 151 of file HcalGainsPyWrapper.cc.

References cond::draw(), lut2db_cfg::filename, HcalObjRepresent::fillOneGain(), HcalObjRepresent::FillUnphysicalHEHFBins(), i, dbtoconf::object, and AlCaHLTBitMon_QueryRunRegistry::string.

        {
                 //void set(since, till, filename); {
                unsigned int numOfValues = 4;
                std::string plotname = "_Gain_";
                //filename = filename + "_Gain";


                typedef std::vector<TH2F> graphData;
                std::vector< graphData > graphDataVec(numOfValues);
                std::vector< graphData >::iterator bigIter;

                std::stringstream ss, plotname_i;
                HcalGains::tAllContWithNames allContainers = object().getAllContainers();

                int i = 0;
                for (bigIter = graphDataVec.begin(); bigIter != graphDataVec.end(); ++bigIter){
                        plotname_i << plotname << i ;
                        ss << filename << "_Gain_"<<i<<".png";
                        fillOneGain((*bigIter), allContainers, plotname_i.str(), i);
                        FillUnphysicalHEHFBins(*bigIter);
                        draw((*bigIter), ss.str());
                        ++i;
                        ss.str("");
                        plotname_i.str("");
                }
                return filename;
        }
template<>
std::string cond::PayLoadInspector< L1TriggerScaler >::summary ( void  ) const

Definition at line 41 of file L1TriggerScalerPyWrapper.cc.

References i, and dbtoconf::object.

                                                             {
    std::stringstream ss;
    ss << object().m_run.size() <<", ";
    if (!object().m_run.empty()) {
      ss << object().m_run.front().m_rn;
      ss << ", ";
      ss << object().m_run.front().m_lumisegment;
      ss << ", " << object().m_run.front().m_date;
 ss << ", " << object().m_run.front().m_date;

      for(size_t i=0; i<object().m_run.front().m_GTAlgoCounts.size(); i++ ){ 
      ss << "m_GTAlgoCounts["<<i<<"] = "<< object().m_run.front().m_GTAlgoCounts[i]<<std::endl;  
    }
      for(size_t i=0; i<object().m_run.front().m_GTAlgoRates.size(); i++ ){ 
      ss << "m_GTAlgoRates["<<i<<"] = "<< object().m_run.front().m_GTAlgoRates[i]<<std::endl;  
    }
    for(size_t i=0; i<object().m_run.front().m_GTAlgoPrescaling.size(); i++ ){ 
      ss << "m_GTAlgoPrescaling["<<i<<"] = "<< object().m_run.front().m_GTAlgoPrescaling[i]<<std::endl;  
    } 
    for(size_t i=0; i<object().m_run.front().m_GTTechCounts.size(); i++ ){ 
      ss << " m_GTTechCounts["<<i<<"] = "<< object().m_run.front().m_GTTechCounts[i]<<std::endl;  
    } 
    for(size_t i=0; i<object().m_run.front().m_GTTechRates.size(); i++ ){ 
      ss << " m_GTTechRates["<<i<<"] = "<< object().m_run.front().m_GTTechRates[i]<<std::endl;  
    } 
    for(size_t i=0; i<object().m_run.front().m_GTTechPrescaling.size(); i++ ){ 
      ss << " m_GTTechPrescaling["<<i<<"] = "<< object().m_run.front().m_GTTechPrescaling[i]<<std::endl;  
    } 
    for(size_t i=0; i<object().m_run.front().m_GTPartition0TriggerCounts.size(); i++ ){ 
      ss << " m_GTPartition0TriggerCounts["<<i<<"] = "<< object().m_run.front().m_GTPartition0TriggerCounts[i]<<std::endl;  
    } 
    for(size_t i=0; i<object().m_run.front().m_GTPartition0TriggerRates.size(); i++ ){ 
      ss << " m_GTPartition0TriggerRates["<<i<<"] = "<< object().m_run.front().m_GTPartition0TriggerRates[i]<<std::endl;  
    } 
    for(size_t i=0; i<object().m_run.front().m_GTPartition0DeadTime.size(); i++ ){ 
      ss << " m_GTPartition0DeadTime["<<i<<"] = "<< object().m_run.front().m_GTPartition0DeadTime[i]<<std::endl;  
    }
    for(size_t i=0; i<object().m_run.front().m_GTPartition0DeadTimeRatio.size(); i++ ){ 
      ss << " m_GTPartition0DeadTimeRatio["<<i<<"] = "<< object().m_run.front().m_GTPartition0DeadTimeRatio[i]<<std::endl;  
    } 
  
 
      ss << "; ";
      ss << object().m_run.back().m_rn;
      ss << ", ";
      ss << object().m_run.back().m_lumisegment;
      ss << ", " << object().m_run.back().m_date;

     for(size_t i=0; i<object().m_run.back().m_GTAlgoCounts.size(); i++ ){ 
      ss << "m_GTAlgoCounts["<<i<<"] = "<< object().m_run.back().m_GTAlgoCounts[i]<<std::endl;  
    }
      for(size_t i=0; i<object().m_run.back().m_GTAlgoRates.size(); i++ ){ 
      ss << "m_GTAlgoRates["<<i<<"] = "<< object().m_run.back().m_GTAlgoRates[i]<<std::endl;  
    }
    for(size_t i=0; i<object().m_run.back().m_GTAlgoPrescaling.size(); i++ ){ 
      ss << "m_GTAlgoPrescaling["<<i<<"] = "<< object().m_run.back().m_GTAlgoPrescaling[i]<<std::endl;  
    } 
    for(size_t i=0; i<object().m_run.back().m_GTTechCounts.size(); i++ ){ 
      ss << " m_GTTechCounts["<<i<<"] = "<< object().m_run.back().m_GTTechCounts[i]<<std::endl;  
    } 
    for(size_t i=0; i<object().m_run.back().m_GTTechRates.size(); i++ ){ 
      ss << " m_GTTechRates["<<i<<"] = "<< object().m_run.back().m_GTTechRates[i]<<std::endl;  
    } 
    for(size_t i=0; i<object().m_run.back().m_GTTechPrescaling.size(); i++ ){ 
      ss << " m_GTTechPrescaling["<<i<<"] = "<< object().m_run.back().m_GTTechPrescaling[i]<<std::endl;  
    } 
    for(size_t i=0; i<object().m_run.back().m_GTPartition0TriggerCounts.size(); i++ ){ 
      ss << " m_GTPartition0TriggerCounts["<<i<<"] = "<< object().m_run.back().m_GTPartition0TriggerCounts[i]<<std::endl;  
    } 
    for(size_t i=0; i<object().m_run.back().m_GTPartition0TriggerRates.size(); i++ ){ 
      ss << " m_GTPartition0TriggerRates["<<i<<"] = "<< object().m_run.back().m_GTPartition0TriggerRates[i]<<std::endl;  
    } 
    for(size_t i=0; i<object().m_run.back().m_GTPartition0DeadTime.size(); i++ ){ 
      ss << " m_GTPartition0DeadTime["<<i<<"] = "<< object().m_run.back().m_GTPartition0DeadTime[i]<<std::endl;  
    }
    for(size_t i=0; i<object().m_run.back().m_GTPartition0DeadTimeRatio.size(); i++ ){ 
      ss << " m_GTPartition0DeadTimeRatio["<<i<<"] = "<< object().m_run.back().m_GTPartition0DeadTimeRatio[i]<<std::endl;  
    } 
    }
    return ss.str();
  }
template<>
std::string cond::PayLoadInspector< EcalTPGWeightIdMap >::summary ( void  ) const

Definition at line 30 of file EcalTPGWeightIdMapPyWrapper.cc.

References Association::map, dbtoconf::object, w2, w3, and w4.

                                                                      {
                std::stringstream ss;

                ss<<std::endl;
                EcalTPGWeightIdMap::EcalTPGWeightMapItr it;
                uint32_t w0,w1,w2,w3,w4;
                const EcalTPGWeightIdMap::EcalTPGWeightMap map= object().getMap();
                for (it=map.begin();it!=map.end();++it) {
                        ss <<"WEIGHT "<<(*it).first<<std::endl;
                        (*it).second.getValues(w0,w1,w2,w3,w4);
                        ss <<std::hex<<"0x"<<w0<<" 0x"<<w1<<" 0x"<<w2<<" 0x"<<w3<<" 0x"<<w4<<" "<<std::endl;
                }
                return ss.str();
        }
template<>
std::string cond::PayLoadInspector< HcalPedestals >::summary ( void  ) const

Definition at line 93 of file HcalPedestalsPyWrapper.cc.

References PDRates::average, first, i, j, dbtoconf::object, edm::second(), findQualityFiles::size, and mathSSE::sqrt().

                                                                 {
                std::stringstream ss;
                unsigned int totalValues = 8;
                // get all containers with names
                HcalPedestals::tAllContWithNames allContainers = object().getAllContainers();

                // initializing iterators
                HcalPedestals::tAllContWithNames::const_iterator iter;
                std::vector<HcalPedestal>::const_iterator contIter;

                ss << "Total HCAL containers: " << allContainers.size() << std::endl;

                typedef std::pair<std::pair< std::vector<float>, std::vector<float> >, int> tPora;

                std::vector<tPora> vec(allContainers.size());

                std::vector<tPora>::iterator iMaz = vec.begin();

                float sum = 0.0, average = 0.0, std_dev = 0.0, sqr_sum = 0.0;
                int size = 0;

                //Run trough all 8 detector containers:
                for (iter = allContainers.begin(), iMaz = vec.begin(); iter != allContainers.end(); ++iter, ++iMaz){
                        ss << "---------------------------------------------" << std::endl;
                        ss << "Detector: " << (*iter).first << ";    Total values: "<< (*iter).second.size() << std::endl;
                        unsigned int j = 0;
                        iMaz->second = (*iter).second.size();
                        (iMaz->first).first = std::vector<float>(totalValues, 0.0);
                        (iMaz->first).second = std::vector<float>(totalValues, 0.0);
                        float capValue = 0.0;
                        //Run trough all values in container
                        for (contIter = (*iter).second.begin(); contIter != (*iter).second.end(); ++contIter){

                                //Run trough all values (8) in object:
                                for (unsigned int i = 0; i < totalValues; ++i){
                                        capValue = (*contIter).getValue(i);
                                        (iMaz->first).first[i] += capValue;
                                        (iMaz->first).second[i]+= (capValue * capValue);
                                        //ss << "[" << i << "] " << capValue << ", " << (iMaz->first).first[i] << ", " << (iMaz->first).second[i] << "; ";
                                }
                                //ss << std::endl;
                                ++j;
                        }

                        size = (*iMaz).second;
                        for (unsigned int i = 0; i < totalValues; ++i){
                                sum = ((*iMaz).first).first[i];
                                sqr_sum = ((*iMaz).first).second[i];
                                average = sum/size;
                                std_dev = sqrt( (sqr_sum/size) - (average * average) );
                                if (i >= 4){
                                ss  << "    PedestalWidth " << (i - 4) << " :"<< std::endl;
                                ss      << "          Average: " << average << "; "<< std::endl;
                                ss      << "          Standart deviation: " << std_dev << "; " << std::endl;                                    
                                }
                                else {
                                ss  << "    Pedestal " << i << " :"<< std::endl;
                                ss      << "          Average: " << average << "; "<< std::endl;
                                ss      << "          Standart deviation: " << std_dev << "; " << std::endl;
                                }
                        }       
                }
                //std::cout << ss.str();
                        return ss.str();
        }
template<>
std::string cond::PayLoadInspector< EcalGainRatios >::summary ( void  ) const

Definition at line 88 of file EcalGainRatiosPyWrapper.cc.

References EcalPyWrapperHelper< T >::printBarrelsEndcaps().

                                                            {
        std::stringstream ss;
        EcalGainRatiosHelper helper;
        ss << helper.printBarrelsEndcaps(object().barrelItems(), object().endcapItems());
        return ss.str();
  }
template<>
std::string cond::PayLoadInspector< HcalPFCorrs >::summary ( void  ) const

Definition at line 87 of file HcalPFCorrsPyWrapper.cc.

References PDRates::average, first, i, j, dbtoconf::object, edm::second(), findQualityFiles::size, and mathSSE::sqrt().

                                                               {
                std::stringstream ss;
                unsigned int totalValues = 1;
                // get all containers with names
                HcalPFCorrs::tAllContWithNames allContainers = object().getAllContainers();

                // initializing iterators
                HcalPFCorrs::tAllContWithNames::const_iterator iter;
                std::vector<HcalPFCorr>::const_iterator contIter;

                ss << "Total HCAL containers: " << allContainers.size() << std::endl;

                typedef std::pair<std::pair< std::vector<float>, std::vector<float> >, int> tPora;

                std::vector<tPora> vec(allContainers.size());

                std::vector<tPora>::iterator iMaz = vec.begin();

                float sum = 0.0, average = 0.0, std_dev = 0.0, sqr_sum = 0.0;
                int size = 0;

                //Run trough all 8 detector containers:
                for (iter = allContainers.begin(), iMaz = vec.begin(); iter != allContainers.end(); ++iter, ++iMaz){
                        ss << "---------------------------------------------" << std::endl;
                        ss << "Detector: " << (*iter).first << ";    Total values: "<< (*iter).second.size() << std::endl;
                        unsigned int j = 0;
                        iMaz->second = (*iter).second.size();
                        (iMaz->first).first = std::vector<float>(totalValues, 0.0);
                        (iMaz->first).second = std::vector<float>(totalValues, 0.0);
                        float capValue = 0.0;
                        //Run trough all values in container
                        for (contIter = (*iter).second.begin(); contIter != (*iter).second.end(); ++contIter){

                                //Run trough all values (8) in object:
                                for (unsigned int i = 0; i < totalValues; ++i){
                                        capValue = (*contIter).getValue();
                                        (iMaz->first).first[i] += capValue;
                                        (iMaz->first).second[i]+= (capValue * capValue);
                                        //ss << "[" << i << "] " << capValue << ", " << (iMaz->first).first[i] << ", " << (iMaz->first).second[i] << "; ";
                                }
                                //ss << std::endl;
                                ++j;
                        }

                        size = (*iMaz).second;
                        for (unsigned int i = 0; i < totalValues; ++i){
                                sum = ((*iMaz).first).first[i];
                                sqr_sum = ((*iMaz).first).second[i];
                                average = sum/size;
                                std_dev = sqrt( (sqr_sum/size) - (average * average) );

                                ss  << "   PFCorr " << " :"<< std::endl;
                                ss      << "          Average: " << average << "; "<< std::endl;
                                ss      << "          Standart deviation: " << std_dev << "; " << std::endl;                                    

                        }       
                }
                //std::cout << ss.str();
                        return ss.str();
        }
template<>
std::string cond::PayLoadInspector< DTLVStatus >::summary ( void  ) const

Definition at line 41 of file DTLVStatusPyWrapper.cc.

                                                        {
    std::stringstream ss;
    return ss.str();
  }
template<>
std::string cond::PayLoadInspector< EcalLaserAPDPNRatios >::summary ( void  ) const

Definition at line 97 of file EcalLaserAPDPNRatiosPyWrapper.cc.

References i, dbtoconf::object, EcalPyWrapperHelper< T >::printBarrelsEndcaps(), EcalLaserAPDPNRatios::EcalLaserTimeStamp::t1, EcalLaserAPDPNRatios::EcalLaserTimeStamp::t2, EcalLaserAPDPNRatios::EcalLaserTimeStamp::t3, cond::timestamp, edm::Timestamp::value(), and relativeConstraints::value.

                                                                  {
    std::stringstream ss;


                EcalLaserAPDPNRatiosHelper helper;
                ss << helper.printBarrelsEndcaps(object().getLaserMap().barrelItems(), object().getLaserMap().endcapItems());
                ss<< std::endl;


                const EcalLaserAPDPNRatios::EcalLaserTimeStampMap& laserTimeMap = 
                  object().getTimeMap();


                for (int i=0; i<92; i++) {
                  EcalLaserAPDPNRatios::EcalLaserTimeStamp timestamp = laserTimeMap[i];

                  
                  unsigned int x1= ((timestamp.t1).value() >> 32) ;
                  std::time_t tt1 = x1;


                  ss<<"T1["<<i<<"]=" << timestamp.t1.value()<<" "<< x1<< std::ctime(&tt1) ;

                  unsigned int x2= (timestamp.t2).value() >> 32;
                  std::time_t tt2 = x2;

                  ss<<"  T2["<<i<<"]=" << timestamp.t2.value()<< " "<<x2<<std::ctime(&tt2) ;

                  unsigned int x3= (timestamp.t3).value() >> 32 ;
                  std::time_t tt3 = x3;

                  ss  <<"  T3["<<i<<"]="  << timestamp.t3.value()<<" "<< x3<< std::ctime(&tt3) << std::endl;

                }

                return ss.str();
    return ss.str();
  }
template<>
std::string cond::PayLoadInspector< SiStripRunSummary >::summary ( void  ) const

Definition at line 41 of file SiStripRunSummaryPyWrapper.cc.

                                                               {
    std::stringstream ss;
    return ss.str();
  }
template<>
std::string cond::PayLoadInspector< DTTtrig >::summary ( void  ) const

Definition at line 41 of file DTTtrigPyWrapper.cc.

                                                     {
    std::stringstream ss;
    return ss.str();
  }
template<>
std::string cond::PayLoadInspector< RPCObVmon >::summary ( void  ) const

Definition at line 200 of file RPCObVmonPyWrapper.cc.

References builder_last_value_cfg::authPath, cond::DbSession::close(), cond::DbConnection::configuration(), cond::DbConnection::configure(), cond::DbConnection::createSession(), cond::DbSession::getTypedObject(), i, RPCGeomServ::name(), RPCObPVSSmap::ObIDMap_rpc, dbtoconf::object, cond::DbSession::open(), AlCaHLTBitMon_ParallelJobs::p, relativeConstraints::ring, cond::DbConnectionConfiguration::setAuthenticationPath(), cond::DbTransaction::start(), relativeConstraints::station, AlCaHLTBitMon_QueryRunRegistry::string, and cond::DbSession::transaction().

                                                            {

    //hardcoded values
    std::string authPath="/afs/cern.ch/cms/DB/conddb";
    std::string conString="oracle://cms_orcoff_prod/CMS_COND_31X_RPC";

    //frontend sends token instead of filename
    std::string token="[DB=00000000-0000-0000-0000-000000000000][CNT=RPCObPVSSmap][CLID=53B2D2D9-1F4E-9CA9-4D71-FFCCA123A454][TECH=00000B01][OID=0000000C-00000000]";

    //make connection object
    DbConnection dbConn;

    //set in configuration object authentication path
    dbConn.configuration().setAuthenticationPath(authPath);
    dbConn.configure();

    //create session object from connection
    DbSession dbSes=dbConn.createSession();

    //try to make connection
    dbSes.open(conString,true);
    
    //start a transaction (true=readOnly)
    dbSes.transaction().start(true);

    //get the actual object
    boost::shared_ptr<RPCObPVSSmap> pvssPtr;
    pvssPtr=dbSes.getTypedObject<RPCObPVSSmap>(token);

    //we have the object...
    std::vector<RPCObPVSSmap::Item> pvssCont=pvssPtr->ObIDMap_rpc;
    
    std::stringstream ss;
    
    std::vector<RPCObVmon::V_Item> const & vmon = object().ObVmon_rpc;
    
    ss <<"DetID\t\t"<<"V(V)\t"<<"Time\t"<<"Day\n";
    for(unsigned int i = 0; i < vmon.size(); ++i ){
      for(unsigned int p = 0; p < pvssCont.size(); ++p){
        if(vmon[i].dpid!=pvssCont[p].dpid || pvssCont[p].suptype!=0 || pvssCont[p].region!=0)continue;
        RPCDetId rpcId(pvssCont[p].region,pvssCont[p].ring,pvssCont[p].station,pvssCont[p].sector,pvssCont[p].layer,pvssCont[p].subsector,1);
        RPCGeomServ rGS(rpcId);
        std::string chName(rGS.name().substr(0,rGS.name().find("_Backward")));
        ss <<chName <<"\t"<<vmon[i].value<<"\t"<<vmon[i].time<<"\t"<<vmon[i].day<<"\n";
      }
    }
    
    dbSes.close();
    
    return ss.str();
  }
template<>
std::string cond::PayLoadInspector< CSCBadChambers >::summary ( void  ) const

How many bad chambers are there

Return the container of bad chambers

Is the given chamber flagged as bad?

Definition at line 13 of file CSCBadChambersPyWrapper.cc.

References CSCIndexer::chamberIndex(), CSCIndexer::detIdFromChamberIndex(), getHLTprescales::index, CSCIndexer::layerIndex(), and dbtoconf::object.

                                                                  {
                std::stringstream ss;
                CSCIndexer indexer;
                int numberOfChambers = object().numberOfChambers();

                std::vector<int> vContainerInts = object().container();
                std::vector<CSCDetId> vCSCDetIds;
                std::vector<int>::const_iterator iInt;
                //get vector of CSCDetId:
                for (iInt = vContainerInts.begin(); iInt != vContainerInts.end(); ++iInt){
                        vCSCDetIds.push_back(indexer.detIdFromChamberIndex(*iInt));
                }
                //bool isInBadChamber0 = object().isInBadChamber( const CSCDetId& id );

                //print data:
                ss << "---Total of bad Chambers: " << numberOfChambers << std::endl;
                ss << "--Bad chambers:" << std::endl;
                iInt = vContainerInts.begin();
                int index = 0;
                for (std::vector<CSCDetId>::const_iterator iCSCDetId = vCSCDetIds.begin(); iCSCDetId != vCSCDetIds.end(); ++iCSCDetId, ++iInt){
                        ss << index++ << ". "<< "Id[" << *iInt
                           << "]-> Chamber index: " << indexer.chamberIndex( *iCSCDetId )
                           << "; Layer index: " << indexer.layerIndex( *iCSCDetId ) 
                           << ";"<< std::endl;
                }
                
                return ss.str();
        }
template<>
std::string cond::PayLoadInspector< SiStripSummary >::summary ( void  ) const

Definition at line 81 of file SiStripSummaryPyWrapper.cc.

References dbtoconf::object.

                                                            {
    std::stringstream ss;
    ss << "Nr.Det " << object().getRegistryVectorEnd()-object().getRegistryVectorBegin()
       << "\nNr.Quantities " << object().getUserDBContent().size()
       << "\nNr.values " << object().getDataVectorEnd()-object().getDataVectorBegin()
       << "\nRunNr= " << object().getRunNr()
       << "\ntimeValue= " << object().getTimeValue();
    //ss << "names of DBquantities ";
    //std::vector<std::string>  listWhat= object().getUserDBContent();
    //for(size_t i=0;i<listWhat.size();++i)
    // ss << listWhat[i] << "\n";
    return ss.str(); 
  }
template<>
std::string cond::PayLoadInspector< DTRangeT0 >::summary ( void  ) const

Definition at line 41 of file DTRangeT0PyWrapper.cc.

                                                       {
    std::stringstream ss;
    return ss.str();
  }
template<>
std::string cond::PayLoadInspector< EcalTPGPedestals >::summary ( void  ) const

Definition at line 75 of file EcalTPGPedestalsPyWrapper.cc.

References EcalPyWrapperHelper< T >::printBarrelsEndcaps().

                                                              {
        std::stringstream ss;
        EcalTPGPedestalsHelper helper;
        ss << helper.printBarrelsEndcaps(object().barrelItems(), object().endcapItems());
        return ss.str();
  }
template<>
std::string cond::PayLoadInspector< CentralityTable >::summary ( void  ) const

Definition at line 15 of file CentralityTablePyWrapper.cc.

References CentralityTable::CBin::b, CentralityTable::CBin::bin_edge, j, CentralityTable::m_table, CentralityTable::CBin::n_coll, CentralityTable::CBin::n_part, dbtoconf::object, and asciidump::table.

                                                   {

    CentralityTable const & table = object();

    std::stringstream ss;

    ss<<"Bin \t";
    ss<<"Lower Boundary\t";
    ss<<"Npart \t";
    ss<<"sigma \t";
    ss<<"Ncoll \t";
    ss<<"sigma \t";
    ss<<"B \t";
    ss<<"sigma \t"<<std::endl;
    ss<<"__________________________________________________"<<std::endl;

    for(unsigned int j=0; j<table.m_table.size(); j++){

      const CentralityTable::CBin& thisBin = table.m_table[j];
      ss<<j<<" \t";
      ss<<thisBin.bin_edge <<"\t";
      ss<<thisBin.n_part.mean<<" \t";
      ss<<thisBin.n_part.var<<" \t";
      ss<<thisBin.n_coll.mean<<" \t";
      ss<<thisBin.n_coll.var<<" \t";
      ss<<thisBin.b.mean<<" \t";
      ss<<thisBin.b.var<<" \t"<<std::endl;
      ss<<"__________________________________________________"<<std::endl;

    }

    return ss.str();
  }
template<>
std::string cond::PayLoadInspector< EcalADCToGeVConstant >::summary ( void  ) const

Definition at line 43 of file EcalADCToGeVConstantPyWrapper.cc.

References dbtoconf::object.

                                                                  {
    std::stringstream ss;
    object().print(ss);
    return ss.str();
  }
template<>
std::string cond::PayLoadInspector< DTCCBConfig >::summary ( void  ) const

Definition at line 41 of file DTCCBConfigPyWrapper.cc.

                                                         {
    std::stringstream ss;
    return ss.str();
  }
template<>
std::string cond::PayLoadInspector< DTStatusFlag >::summary ( void  ) const

Definition at line 41 of file DTStatusFlagPyWrapper.cc.

                                                          {
    std::stringstream ss;
    return ss.str();
  }
template<>
std::string cond::PayLoadInspector< EcalFunParams >::summary ( void  ) const

Definition at line 56 of file EcalFunParamsPyWrapper.cc.

References gather_cfg::cout, and dbtoconf::object.

                                                           {
    std::cout << "EcalFunParamsPyWrapper summary " << std::endl;
    std::stringstream ss;
    ss << "EcalFunParamsPyWrapper nb of parameters : " << object().params().size();

    return ss.str();
  }
template<>
std::string cond::PayLoadInspector< RPCObPVSSmap >::summary ( void  ) const

Definition at line 32 of file RPCObPVSSmapPyWrapper.cc.

References i, and dbtoconf::object.

                                                          {
    std::stringstream ss;

    std::vector<RPCObPVSSmap::Item> const & vdetid = object().ObIDMap_rpc;


    for(unsigned int i = 0; i < vdetid.size(); ++i ){
      ss <<vdetid[i].dpid <<" "<<vdetid[i].region<<" "<<vdetid[i].ring<<" "<<vdetid[i].sector<<" "<<vdetid[i].station<<" "<<vdetid[i].layer<<" "<<vdetid[i].subsector<<" "<<vdetid[i].suptype<<" ";
    }

    return ss.str();
  }
template<>
std::string cond::PayLoadInspector< RPCObTemp >::summary ( void  ) const

Definition at line 180 of file RPCObTempPyWrapper.cc.

References builder_last_value_cfg::authPath, cond::DbSession::close(), cond::DbConnection::configuration(), cond::DbConnection::configure(), cond::DbConnection::createSession(), cond::DbSession::getTypedObject(), i, RPCGeomServ::name(), RPCObPVSSmap::ObIDMap_rpc, dbtoconf::object, cond::DbSession::open(), AlCaHLTBitMon_ParallelJobs::p, relativeConstraints::ring, cond::DbConnectionConfiguration::setAuthenticationPath(), cond::DbTransaction::start(), relativeConstraints::station, AlCaHLTBitMon_QueryRunRegistry::string, and cond::DbSession::transaction().

                                                       {
    std::stringstream ss;

    //hardcoded values
    std::string authPath="/afs/cern.ch/cms/DB/conddb";
    std::string conString="oracle://cms_orcoff_prod/CMS_COND_31X_RPC";

    //frontend sends token instead of filename
    std::string token="[DB=00000000-0000-0000-0000-000000000000][CNT=RPCObPVSSmap][CLID=53B2D2D9-1F4E-9CA9-4D71-FFCCA123A454][TECH=00000B01][OID=0000000C-00000000]";

    //make connection object
    DbConnection dbConn;

    //set in configuration object authentication path
    dbConn.configuration().setAuthenticationPath(authPath);
    dbConn.configure();

    //create session object from connection
    DbSession dbSes=dbConn.createSession();

    //try to make connection
    dbSes.open(conString,true);
    
    //start a transaction (true=readOnly)
    dbSes.transaction().start(true);

    //get the actual object
    boost::shared_ptr<RPCObPVSSmap> pvssPtr;
    pvssPtr=dbSes.getTypedObject<RPCObPVSSmap>(token);

    //we have the object...
    std::vector<RPCObPVSSmap::Item> pvssCont=pvssPtr->ObIDMap_rpc;

    std::vector<RPCObTemp::T_Item> const & tmon = object().ObTemp_rpc;

    ss <<"DetID\t\t"<<"T(C)\t"<<"Time\t"<<"Day\n";
    for(unsigned int i = 0; i < tmon.size(); ++i ){
      for(unsigned int p = 0; p < pvssCont.size(); ++p){
        if(tmon[i].dpid!=pvssCont[p].dpid || pvssCont[p].suptype!=4 || pvssCont[p].region!=0)continue;
        RPCDetId rpcId(pvssCont[p].region,pvssCont[p].ring,pvssCont[p].station,pvssCont[p].sector,pvssCont[p].layer,pvssCont[p].subsector,1);
        RPCGeomServ rGS(rpcId);
        std::string chName(rGS.name().substr(0,rGS.name().find("_Backward")));
        ss <<chName <<"\t"<<tmon[i].value<<"\t"<<tmon[i].time<<"\t"<<tmon[i].day<<"\n";
      }
    }

    dbSes.close();

    return ss.str();

  }
template<>
std::string cond::PayLoadInspector< SiStripThreshold >::summary ( void  ) const

Definition at line 41 of file SiStripThresholdPyWrapper.cc.

References dbtoconf::object.

                                                              {
    std::stringstream ss;
    object().printSummary(ss);
    return ss.str();
  }
template<>
std::string cond::PayLoadInspector< HcalLUTCorrs >::summary ( void  ) const

Definition at line 87 of file HcalLUTCorrsPyWrapper.cc.

References PDRates::average, first, i, j, dbtoconf::object, edm::second(), findQualityFiles::size, and mathSSE::sqrt().

                                                                {
                std::stringstream ss;
                unsigned int totalValues = 1;
                // get all containers with names
                HcalLUTCorrs::tAllContWithNames allContainers = object().getAllContainers();

                // initializing iterators
                HcalLUTCorrs::tAllContWithNames::const_iterator iter;
                std::vector<HcalLUTCorr>::const_iterator contIter;

                ss << "Total HCAL containers: " << allContainers.size() << std::endl;

                typedef std::pair<std::pair< std::vector<float>, std::vector<float> >, int> tPora;

                std::vector<tPora> vec(allContainers.size());

                std::vector<tPora>::iterator iMaz = vec.begin();

                float sum = 0.0, average = 0.0, std_dev = 0.0, sqr_sum = 0.0;
                int size = 0;

                //Run trough all 8 detector containers:
                for (iter = allContainers.begin(), iMaz = vec.begin(); iter != allContainers.end(); ++iter, ++iMaz){
                        ss << "---------------------------------------------" << std::endl;
                        ss << "Detector: " << (*iter).first << ";    Total values: "<< (*iter).second.size() << std::endl;
                        unsigned int j = 0;
                        iMaz->second = (*iter).second.size();
                        (iMaz->first).first = std::vector<float>(totalValues, 0.0);
                        (iMaz->first).second = std::vector<float>(totalValues, 0.0);
                        float capValue = 0.0;
                        //Run trough all values in container
                        for (contIter = (*iter).second.begin(); contIter != (*iter).second.end(); ++contIter){

                                //Run trough all values (8) in object:
                                for (unsigned int i = 0; i < totalValues; ++i){
                                        capValue = (*contIter).getValue();
                                        (iMaz->first).first[i] += capValue;
                                        (iMaz->first).second[i]+= (capValue * capValue);
                                        //ss << "[" << i << "] " << capValue << ", " << (iMaz->first).first[i] << ", " << (iMaz->first).second[i] << "; ";
                                }
                                //ss << std::endl;
                                ++j;
                        }

                        size = (*iMaz).second;
                        for (unsigned int i = 0; i < totalValues; ++i){
                                sum = ((*iMaz).first).first[i];
                                sqr_sum = ((*iMaz).first).second[i];
                                average = sum/size;
                                //here needs to take absolute value for sqrt:
                                std_dev = sqrt( fabs((sqr_sum / size) - (average * average)) );

                                ss  << "   LUTCorr " << " :"<< std::endl;
                                ss      << "          Average: " << average << "; "<< std::endl;
                                ss      << "          Standart deviation: " << std_dev << "; " << std::endl;                                    

                        }       
                }
                //std::cout << ss.str();
                        return ss.str();
        }
template<>
std::string cond::PayLoadInspector< FillInfo >::summary ( void  ) const

Definition at line 45 of file FillInfoPyWrapper.cc.

References dbtoconf::object.

                                                      {
    std::stringstream ss;
    ss << this->object();
    return ss.str();
  }
template<>
std::string cond::PayLoadInspector< EcalTPGLutIdMap >::summary ( void  ) const

Definition at line 30 of file EcalTPGLutIdMapPyWrapper.cc.

References i, lumiPlot::lut, Association::map, and dbtoconf::object.

                                                                   {
                std::stringstream ss;
                EcalTPGLutIdMap::EcalTPGLutMapItr it;
                const EcalTPGLutIdMap::EcalTPGLutMap map=object().getMap();

                ss<<std::endl;
                for (it=map.begin();it!=map.end();++it) {
                        ss <<"LUT "<<(*it).first<<std::endl;
                        const unsigned int * lut=(*it).second.getLut();
                        for (unsigned int i=0;i<1024;++i)  ss <<std::hex<<"0x"<<*lut++<<std::endl;
                }

                return ss.str();
        }
template<>
std::string cond::PayLoadInspector< EcalDCSTowerStatus >::summary ( void  ) const

Definition at line 182 of file EcalDCSTowerStatusPyWrapper.cc.

References EcalPyWrapperHelper< T >::printBarrelsEndcaps().

                                                                 {
        std::stringstream ss;
        EcalDCSTowerStatusHelper helper;
        ss << helper.printBarrelsEndcaps(object().barrelItems(), object().endcapItems());
        return ss.str();
   }
template<>
std::string cond::PayLoadInspector< HcalChannelQuality >::summary ( void  ) const

Definition at line 48 of file HcalChannelQualityPyWrapper.cc.

References HcalObjRepresent::getBitsSummary(), HcalObjRepresent::IntToBinary(), j, dbtoconf::object, and AlCaHLTBitMon_QueryRunRegistry::string.

                                                                      {
                std::stringstream ss;

                //setting map for representing errors
                std::string statusBitArray[20]; 
                short unsigned int bitMap[9];
                statusBitArray[0] = std::string("cell is off" );
                statusBitArray[1] = std::string("cell is masked/to be masked at RecHit Level" );
                statusBitArray[5] = std::string("cell is dead (from DQM algo)");
                statusBitArray[6] = std::string("cell is hot (from DQM algo)" );
                statusBitArray[7] = std::string("cell has stability error");
                statusBitArray[8] = std::string("cell has timing error" );
                statusBitArray[15] = std::string("cell is masked from the Trigger ");
                statusBitArray[18] = std::string("cell is always excluded from the CaloTower regardless of other bit settings.");
                statusBitArray[19] = std::string("cell is counted as problematic within the tower.");
                bitMap[0] = 0; //{0, 1, 5, 6, 7, 8, 15, 18, 19};
                bitMap[1] = 1;
                bitMap[2] = 5;
                bitMap[3] = 6;
                bitMap[4] = 7;
                bitMap[5] = 8;
                bitMap[6] = 15;
                bitMap[7] = 18;
                bitMap[8] = 19;

                // get all containers with names
                HcalChannelQuality::tAllContWithNames allContainers = object().getAllContainers();

                // initializing iterators
                HcalChannelQuality::tAllContWithNames::const_iterator iter;
                std::vector<HcalChannelStatus>::const_iterator contIter;
                ss << "Total HCAL containers: " << allContainers.size() << std::endl;

                //run trough all pair containers, print error values if any.
                for (iter = allContainers.begin(); iter != allContainers.end(); ++iter){
                        ss << "---------------------------------------------" << std::endl;
                        ss << "Detector: " << (*iter).first << ";    Total values: "<< (*iter).second.size() << std::endl;
                        unsigned int j = 0;
                        for (contIter = (*iter).second.begin(); contIter != (*iter).second.end(); ++contIter){

                                //if not 0, it have error, print it:
                                if ((*contIter).getValue() != 0){//HcalDetId::HcalDetId(uint32_t rawid)
                                        ss << "     Id["<< j << "]: " <<  
                                                " rawId: " << (uint32_t)(*contIter).rawId() << " "<< HcalDetId((uint32_t)(*contIter).rawId())<<"; Channel bits: " <<
                                                (uint32_t)(*contIter).getValue()<< "; Binary format: " << IntToBinary((uint32_t)(*contIter).getValue()) << "; Errors: "
                                                << getBitsSummary((uint32_t)((*contIter).getValue()), statusBitArray, bitMap);
                                }
                                ++j;
                        }
                }
                return ss.str();
        }
template<>
std::string cond::PayLoadInspector< DTMtime >::summary ( void  ) const

Definition at line 41 of file DTMtimePyWrapper.cc.

                                                     {
    std::stringstream ss;
    return ss.str();
  }
template<>
std::string cond::PayLoadInspector< RunNumber >::summary ( void  ) const

Definition at line 43 of file RunNumberPyWrapper.cc.

References i, and dbtoconf::object.

                                                       {
    std::stringstream ss;
    ss << object().m_runnumber.size() <<", ";
    if (!object().m_runnumber.empty()) {
      ss << object().m_runnumber.front().m_run;
      ss << ", ";
      ss << object().m_runnumber.front().m_name;
      ss << ", " << object().m_runnumber.front().m_start_time_str;
      ss << "; ";
      ss << ", " << object().m_runnumber.front().m_stop_time_str;
      ss << "; ";
      for (size_t i=0; i< object().m_runnumber.front().m_subdt_joined.size(); ++i){
      ss << ", " << object().m_runnumber.front().m_subdt_joined[i];
      ss << "; ";
      }
     
    }
    return ss.str();
   
  }
template<>
std::string cond::PayLoadInspector< EcalTPGLinearizationConst >::summary ( void  ) const

Definition at line 100 of file EcalTPGLinearizationConstPyWrapper.cc.

References EcalPyWrapperHelper< T >::printBarrelsEndcaps().

                                                                       {
    std::stringstream ss;
    EcalTPGLinearizationConstHelper helper;
    ss << helper.printBarrelsEndcaps(object().barrelItems(), object().endcapItems());
    return ss.str();
  }
template<>
std::string cond::PayLoadInspector< DTPerformance >::summary ( void  ) const

Definition at line 41 of file DTPerformancePyWrapper.cc.

                                                           {
    std::stringstream ss;
    return ss.str();
  }
template<>
std::string cond::PayLoadInspector< RunSummary >::summary ( void  ) const

Definition at line 41 of file RunSummaryPyWrapper.cc.

References i, and dbtoconf::object.

                                                        {
    std::stringstream ss;
      ss << "RUN: "<<object().m_run;
      ss << ", NAME: " <<object().m_name;
      ss << ", START TIME: " << object().m_start_time_str;
      ss << ", STOP TIME:" << object().m_stop_time_str;
      ss << ", LUMISECTIONS: " << object().m_lumisections;
      ss << ", HLT_KEY:  " << object().m_hltkey;
      ss << ", TRG_NEVENTS:  " << object().m_nevents;
      ss << ", TRG_RATE:  " << object().m_rate;
      ss << ", SUBDETS IB RUN: ";  
      for (size_t i=0; i<object().m_subdt_in.size() ; i++){
        if (object().m_subdt_in[i]==0) {
          ss<< "PIXEL, ";
        }
        if (object().m_subdt_in[i]==1) {
          ss<<"TRACKER, ";
        }
        if (object().m_subdt_in[i]==2) {
          ss<< "ECAL, " ;
        }
        if (object().m_subdt_in[i]==3) {
          ss<< "HCAL, ";
        }
        if (object().m_subdt_in[i]==4) {
          ss<<"DT," ;
        }  
        if (object().m_subdt_in[i]==5) {
          ss<<"CSC,";
        }   
        if (object().m_subdt_in[i]==6) {
          ss<<"RPC, ";
        }  
      }
      
    
    return ss.str();
  }
template<>
std::string cond::PayLoadInspector< EcalLinearCorrections >::summary ( void  ) const

Definition at line 97 of file EcalLinearCorrectionsPyWrapper.cc.

References i, dbtoconf::object, EcalPyWrapperHelper< T >::printBarrelsEndcaps(), cond::timestamp, and relativeConstraints::value.

                                                                   {
    std::stringstream ss;


                EcalLinearCorrectionsHelper helper;
                ss << helper.printBarrelsEndcaps(object().getValueMap().barrelItems(), object().getValueMap().endcapItems());
                ss<< std::endl;


                const EcalLinearCorrections::EcalTimeMap& laserTimeMap = 
                  object().getTimeMap();


                for (int i=0; i<92; i++) {
                  EcalLinearCorrections::EcalTimeMap timestamp = laserTimeMap[i];

                  
                  unsigned int x1= ((timestamp.t1).value() >> 32) ;
                  std::time_t tt1 = x1;


                  ss<<"T1["<<i<<"]=" << timestamp.t1.value()<<" "<< x1<< std::ctime(&tt1) ;

                  unsigned int x2= (timestamp.t2).value() >> 32;
                  std::time_t tt2 = x2;

                  ss<<"  T2["<<i<<"]=" << timestamp.t2.value()<< " "<<x2<<std::ctime(&tt2) ;

                  unsigned int x3= (timestamp.t3).value() >> 32 ;
                  std::time_t tt3 = x3;

                  ss  <<"  T3["<<i<<"]="  << timestamp.t3.value()<<" "<< x3<< std::ctime(&tt3) << std::endl;

                }

                return ss.str();
    return ss.str();
  }
template<>
std::string cond::PayLoadInspector< EcalTPGPhysicsConst >::summary ( void  ) const

Definition at line 33 of file EcalTPGPhysicsConstPyWrapper.cc.

References dbtoconf::object.

                                                                  {
        std::stringstream ss;
        EcalTPGPhysicsConstMap valuesMap = object().getMap();

        EcalTPGPhysicsConstMapIterator iValue = valuesMap.begin();
        ss << "---Barrels: " << std::endl; 
                ss << "EtSat: " << (*iValue).second.EtSat << std::endl;
                ss << "ttf_threshold_Low: " << (*iValue).second.ttf_threshold_Low << std::endl;
                ss << "ttf_threshold_High: " << (*iValue).second.ttf_threshold_High << std::endl;
                ss << "FG_lowThreshold: " << (*iValue).second.FG_lowThreshold << std::endl;
                ss << "FG_highThreshold: " << (*iValue).second.FG_highThreshold << std::endl;
                ss << "FG_lowRatio: " << (*iValue).second.FG_lowRatio << std::endl;
                ss << "FG_highRatio: " << (*iValue).second.FG_highRatio << std::endl;
        
        ++iValue;
        ss << "---Endcaps: " << std::endl; 
            ss << "EtSat: " << (*iValue).second.EtSat << std::endl;
                ss << "ttf_threshold_Low: " << (*iValue).second.ttf_threshold_Low << std::endl;
                ss << "ttf_threshold_High: " << (*iValue).second.ttf_threshold_High << std::endl;
                ss << "FG_lowThreshold: " << (*iValue).second.FG_lowThreshold << std::endl;
                ss << "FG_highThreshold: " << (*iValue).second.FG_highThreshold << std::endl;
                ss << "FG_lowRatio: " << (*iValue).second.FG_lowRatio << std::endl;
                ss << "FG_highRatio: " << (*iValue).second.FG_highRatio << std::endl;
        return ss.str();
   }
template<>
std::string cond::PayLoadInspector< EcalPedestals >::summary ( void  ) const

Definition at line 174 of file EcalPedestalsPyWrapper.cc.

References EcalPyWrapperHelper< T >::printBarrelsEndcaps().

                                                                 {
                std::stringstream ss;
                EcalPedestalsHelper helper;
                ss << helper.printBarrelsEndcaps(object().barrelItems(), object().endcapItems());
                return ss.str();
        }  // summary
template<>
std::string cond::PayLoadInspector< DTT0 >::summary ( void  ) const

Definition at line 41 of file DTT0PyWrapper.cc.

                                                  {
    std::stringstream ss;
    return ss.str();
  }
template<>
std::string cond::PayLoadInspector< EcalTPGCrystalStatus >::summary ( void  ) const

Definition at line 172 of file EcalTPGCrystalStatusPyWrapper.cc.

References EEDetId::IX_MAX, EEDetId::IY_MAX, kBarlRings, kBarlWedges, kEndcWedgesX, kEndcWedgesY, kSides, EBDetId::MAX_IETA, EBDetId::MAX_IPHI, and EEDetId::validDetId().

                                                                  {
    std::stringstream ss;
    //   EcalTPGCrystalStatusHelper helper;
    //   ss << helper.printBarrelsEndcaps(object().barrelItems(), object().endcapItems());
    const int kSides       = 2;
    const int kBarlRings   = EBDetId::MAX_IETA;
    const int kBarlWedges  = EBDetId::MAX_IPHI;
    const int kEndcWedgesX = EEDetId::IX_MAX;
    const int kEndcWedgesY = EEDetId::IY_MAX;

    int EB[2] = {0, 0}, EE[2] = {0, 0};
    for (int sign=0; sign < kSides; sign++) {
      int thesign = sign==1 ? 1:-1;

      for (int ieta=0; ieta<kBarlRings; ieta++) {
        for (int iphi=0; iphi<kBarlWedges; iphi++) {
          EBDetId id((ieta+1)*thesign, iphi+1);
          if(object()[id.rawId()].getStatusCode() > 0) EB[sign]++;
        }  // iphi
      }   // ieta

      for (int ix=0; ix<kEndcWedgesX; ix++) {
        for (int iy=0; iy<kEndcWedgesY; iy++) {
          if (! EEDetId::validDetId(ix+1,iy+1,thesign)) continue;
          EEDetId id(ix+1,iy+1,thesign);
          if(object()[id.rawId()].getStatusCode() > 0) EE[sign]++;
        }  // iy
      }   // ix
    }    // side
    ss << " number of masked Crystals  EB- " << EB[0] << " EB+ " <<  EB[1]
       << "   EE- " << EE[0] << " EE+ " <<  EE[1] << std::endl;
    return ss.str();
  }
template<>
std::string cond::PayLoadInspector< DTReadOutMapping >::summary ( void  ) const

Definition at line 41 of file DTReadOutMappingPyWrapper.cc.

                                                              {
    std::stringstream ss;
    return ss.str();
  }
template<>
std::string cond::PayLoadInspector< EcalTBWeights >::summary ( void  ) const

Definition at line 45 of file EcalTBWeightsPyWrapper.cc.

References EcalCondTools::dumpXML(), and h.

                                                           {
    std::stringstream ss; 
    EcalCondHeader h;
    ss<< EcalTBWeightsXMLTranslator::dumpXML(h,object());
    return ss.str();
  }
template<>
std::string cond::PayLoadInspector< EcalTPGTowerStatus >::summary ( void  ) const

Definition at line 39 of file EcalTPGTowerStatusPyWrapper.cc.

References dbtoconf::object.

                                                                {
    std::stringstream ss;

    const EcalTPGTowerStatusMap &towerMap = object().getMap();
    EcalTPGTowerStatusMapIterator it;
    int NbMaskedTT = 0;
    for(it = towerMap.begin(); it != towerMap.end(); ++it)
      if((*it).second > 0) NbMaskedTT++;
    ss <<"Barrel masked Trigger Towers " << NbMaskedTT <<std::endl;
    return ss.str();
  }
template<>
std::string cond::PayLoadInspector< BeamSpotObjects >::summary ( void  ) const

Definition at line 41 of file BeamSpotObjectsPyWrapper.cc.

References dbtoconf::object.

                                                                   {
                std::stringstream ss;
                object().print(ss);
                return ss.str();
        }
template<>
std::string cond::PayLoadInspector< SiStripBaseDelay >::summary ( void  ) const

Definition at line 40 of file SiStripBaseDelayPyWrapper.cc.

References dbtoconf::object.

                                                              {
    std::stringstream ss;
    object().printSummary(ss);
    return ss.str();
  }
template<>
std::string cond::PayLoadInspector< ESGain >::summary ( void  ) const

Definition at line 42 of file ESGainPyWrapper.cc.

References dbtoconf::object.

                                                    {
    std::stringstream ss;
    object().print(ss);
    return ss.str();
  }
template<typename DataT >
std::string cond::PayLoadInspector< DataT >::summary ( ) const [inline]

Definition at line 103 of file PayLoadInspector.h.

                              {
      std::ostringstream os;
      os << std::endl;
      return os.str();
    }
template<>
std::string cond::PayLoadInspector< HcalGainWidths >::summary ( void  ) const

Definition at line 93 of file HcalGainWidthsPyWrapper.cc.

References PDRates::average, first, i, j, dbtoconf::object, edm::second(), findQualityFiles::size, and mathSSE::sqrt().

                                                                  {
                std::stringstream ss;
                unsigned int totalValues = 4;
                // get all containers with names
                HcalGainWidths::tAllContWithNames allContainers = object().getAllContainers();

                // initializing iterators
                HcalGainWidths::tAllContWithNames::const_iterator iter;
                std::vector<HcalGainWidth>::const_iterator contIter;

                ss << "Total HCAL containers: " << allContainers.size() << std::endl;

                typedef std::pair<std::pair< std::vector<float>, std::vector<float> >, int> tPora;

                std::vector<tPora> vec(allContainers.size());

                std::vector<tPora>::iterator iMaz = vec.begin();

                float sum = 0.0, average = 0.0, std_dev = 0.0, sqr_sum = 0.0;
                int size = 0;

                //Run trough all 8 detector containers:
                for (iter = allContainers.begin(), iMaz = vec.begin(); iter != allContainers.end(); ++iter, ++iMaz){
                        ss << "---------------------------------------------" << std::endl;
                        ss << "Detector: " << (*iter).first << ";    Total values: "<< (*iter).second.size() << std::endl;
                        unsigned int j = 0;
                        iMaz->second = (*iter).second.size();
                        (iMaz->first).first = std::vector<float>(totalValues, 0.0);
                        (iMaz->first).second = std::vector<float>(totalValues, 0.0);
                        float capValue = 0.0;
                        //Run trough all values in container
                        for (contIter = (*iter).second.begin(); contIter != (*iter).second.end(); ++contIter){

                                //Run trough all values in object:
                                for (unsigned int i = 0; i < totalValues; ++i){
                                        capValue = (*contIter).getValue(i);
                                        (iMaz->first).first[i] += capValue;
                                        (iMaz->first).second[i]+= (capValue * capValue);
                                        //ss << "[" << i << "] " << capValue << ", " << (iMaz->first).first[i] << ", " << (iMaz->first).second[i] << "; ";
                                }
                                //ss << std::endl;
                                ++j;
                        }

                        size = (*iMaz).second;
                        for (unsigned int i = 0; i < totalValues; ++i){
                                sum = ((*iMaz).first).first[i];
                                sqr_sum = ((*iMaz).first).second[i];
                                average = sum/size;
                                //here needs to take absolute value for sqrt:
                                std_dev = sqrt( fabs((sqr_sum / size) - (average * average)) );

                                ss  << "    GainWidth " << i << " :"<< std::endl;
                                ss      << "          Average: " << average << "; "<< std::endl;
                                ss      << "          Standart deviation: " << std_dev << "; " << std::endl;
                        }       
                }
                //std::cout << ss.str();
                        return ss.str();
        }
template<>
std::string cond::PayLoadInspector< EcalTPGFineGrainEBIdMap >::summary ( void  ) const

Definition at line 30 of file EcalTPGFineGrainEBIdMapPyWrapper.cc.

References Association::map, and dbtoconf::object.

                                                                           {
                std::stringstream ss;

                EcalTPGFineGrainEBIdMap::EcalTPGFineGrainEBMapItr it;
                const EcalTPGFineGrainEBIdMap::EcalTPGFineGrainEBMap map= object().getMap();
                uint32_t ThresholdETLow, ThresholdETHigh, RatioLow, RatioHigh, LUT;
                ss<<std::endl;
                for (it=map.begin();it!=map.end();++it) {
                        ss <<"FG "<<(*it).first<<std::endl;
                        (*it).second.getValues(ThresholdETLow, ThresholdETHigh, RatioLow, RatioHigh, LUT);
                        ss <<std::hex<<"0x"<<ThresholdETLow<<" 0x"<<ThresholdETHigh<<" 0x"<<RatioLow<<" 0x"<<RatioHigh<<" 0x"<<LUT<<std::endl;
                }
                return ss.str();
        }
template<>
std::string cond::PayLoadInspector< SiStripPedestals >::summary ( void  ) const

Definition at line 41 of file SiStripPedestalsPyWrapper.cc.

References dbtoconf::object.

                                                              {
    std::stringstream ss;
    object().printSummary(ss);
    return ss.str();
  }
template<>
std::string cond::PayLoadInspector< SiStripNoises >::summary ( void  ) const

Definition at line 41 of file SiStripNoisesPyWrapper.cc.

References dbtoconf::object.

                                                           {
    std::stringstream ss;
    object().printSummary(ss);
    return ss.str();
  }
template<>
std::string cond::PayLoadInspector< HcalQIEData >::summary ( void  ) const

Definition at line 117 of file HcalQIEDataPyWrapper.cc.

References first, i, dbtoconf::object, evf::evtn::offset(), edm::second(), slope, and mathSSE::sqrt().

                                                               {
                std::stringstream ss;
                // get all containers with names
                HcalQIEData::tAllContWithNames allContainers = object().getAllContainers();

                // initializing iterators
                HcalQIEData::tAllContWithNames::const_iterator iter;
                std::vector<HcalQIECoder>::const_iterator contIter;

                ss << "Total HCAL containers: " << allContainers.size() << std::endl;

                typedef std::pair<std::pair< float, float >, int> tPora;

                //std::vector<tPora> vMaz(allContainers.size());
                //std::vector<tPora>::iterator iMaz = vMaz.begin();

                std::vector<tPora> vOffsets(allContainers.size());// for each container (total 8)
                std::vector<tPora> vSlopes(allContainers.size());// for each container (total 8)

                std::vector<tPora>::iterator iOffset = vOffsets.begin();
                std::vector<tPora>::iterator iSlope = vSlopes.begin();

                float offset = .0;
                float slope = .0;


                //Run trough all 8 detector containers:
                for (iter = allContainers.begin(); iter != allContainers.end(); ++iter, ++iOffset, ++iSlope){
                        iOffset->second = (*iter).second.size();// total number of values in detector
                        iSlope->second = (*iter).second.size();// total number of values in detector

                        (iOffset->first).first = .0;
                        (iOffset->first).second = .0;
                        (iSlope->first).first = .0;
                        (iSlope->first).second = .0;

                        //Run trough all values in container
                        unsigned int i = 0;
                        for (contIter = (*iter).second.begin(); contIter != (*iter).second.end(); ++contIter){

                                //Run trough all values in object:
                                for (unsigned int fCapId = 0; fCapId < 4; ++fCapId){
                                        for (unsigned int fRange = 0; fRange < 4; ++fRange){
                                                offset =  (*contIter).offset (fCapId, fRange);
                                                (iOffset->first).first += offset;
                                                (iOffset->first).second+= (offset * offset);

                                                slope = (*contIter).slope (fCapId, fRange);
                                                (iSlope->first).first += slope;
                                                (iSlope->first).second+= (slope * slope);
                                        }
                                }
                                ++i;
                                //ss << "[" << i << "] " << capValue << ", " << (iMaz->first).first[i] << ", " << (iMaz->first).second[i] << "; ";
                        }
                }
                //ss << std::endl;

                //got all the values, now do the work:
                iOffset = vOffsets.begin();
                iSlope = vSlopes.begin();
                float sumOffset = 0.0, averageOffset = 0.0, std_devOffset = 0.0, sqr_sumOffset = 0.0;
                int sizeOffset = 0;

                float sumSlope = 0.0, averageSlope = 0.0, std_devSlope = 0.0, sqr_sumSlope = 0.0;
                int sizeSlope = 0;

                sizeOffset = (*iOffset).second;
                sizeSlope = (*iSlope).second;


                
                unsigned int i = 0;
                for (iter = allContainers.begin(); iter != allContainers.end(); ++iter, ++i, ++iSlope, ++iOffset){

                        ss << "---------------------------------------------" << std::endl;
                        ss << "Detector: " << (*iter).first << ";    Total values: "<< (*iter).second.size() << std::endl;
                        sumOffset = ((*iOffset).first).first;
                        sqr_sumOffset = ((*iOffset).first).second;
                        averageOffset = sumOffset/sizeOffset;
                        //here needs to take absolute value for sqrt:
                        std_devOffset = sqrt( fabs((sqr_sumOffset / sizeOffset) - (averageOffset * averageOffset)) );

                        sumSlope = ((*iSlope).first).first;
                        sqr_sumSlope = ((*iSlope).first).second;
                        averageSlope = sumSlope/sizeSlope;
                        //here needs to take absolute value for sqrt:
                        std_devSlope = sqrt( fabs((sqr_sumSlope / sizeSlope) - (averageSlope * averageSlope)) );

                        ss  << "    Offset: " << std::endl;
                        ss      << "          Average: " << averageOffset << "; "<< std::endl;
                        ss      << "          Standart deviation: " << std_devOffset << "; " << std::endl;                                      
                        ss  << "    Slope: " << std::endl;
                        ss      << "          Average: " << averageSlope << "; "<< std::endl;
                        ss      << "          Standart deviation: " << std_devSlope << "; " << std::endl;
                }               
                //std::cout << ss.str();
                return ss.str();
        }
template<>
std::string cond::PayLoadInspector< SiStripDetVOff >::summary ( void  ) const

Definition at line 41 of file SiStripDetVOffPyWrapper.cc.

References dbtoconf::object.

                                                            {
    std::stringstream ss;
    object().printSummary(ss);
    ss << std::endl;
    object().printDebug(ss);
    return ss.str();
  }
template<>
std::string cond::PayLoadInspector< HcalTimeCorrs >::summary ( void  ) const

Definition at line 87 of file HcalTimeCorrsPyWrapper.cc.

References PDRates::average, first, i, j, dbtoconf::object, edm::second(), findQualityFiles::size, and mathSSE::sqrt().

                                                                 {
                std::stringstream ss;
                unsigned int totalValues = 1;
                // get all containers with names
                HcalTimeCorrs::tAllContWithNames allContainers = object().getAllContainers();

                // initializing iterators
                HcalTimeCorrs::tAllContWithNames::const_iterator iter;
                std::vector<HcalTimeCorr>::const_iterator contIter;

                ss << "Total HCAL containers: " << allContainers.size() << std::endl;

                typedef std::pair<std::pair< std::vector<float>, std::vector<float> >, int> tPora;

                std::vector<tPora> vec(allContainers.size());

                std::vector<tPora>::iterator iMaz = vec.begin();

                float sum = 0.0, average = 0.0, std_dev = 0.0, sqr_sum = 0.0;
                int size = 0;

                //Run trough all 8 detector containers:
                for (iter = allContainers.begin(), iMaz = vec.begin(); iter != allContainers.end(); ++iter, ++iMaz){
                        ss << "---------------------------------------------" << std::endl;
                        ss << "Detector: " << (*iter).first << ";    Total values: "<< (*iter).second.size() << std::endl;
                        unsigned int j = 0;
                        iMaz->second = (*iter).second.size();
                        (iMaz->first).first = std::vector<float>(totalValues, 0.0);
                        (iMaz->first).second = std::vector<float>(totalValues, 0.0);
                        float capValue = 0.0;
                        //Run trough all values in container
                        for (contIter = (*iter).second.begin(); contIter != (*iter).second.end(); ++contIter){

                                //Run trough all values (8) in object:
                                for (unsigned int i = 0; i < totalValues; ++i){
                                        capValue = (*contIter).getValue();
                                        (iMaz->first).first[i] += capValue;
                                        (iMaz->first).second[i]+= (capValue * capValue);
                                        //ss << "[" << i << "] " << capValue << ", " << (iMaz->first).first[i] << ", " << (iMaz->first).second[i] << "; ";
                                }
                                //ss << std::endl;
                                ++j;
                        }

                        size = (*iMaz).second;
                        for (unsigned int i = 0; i < totalValues; ++i){
                                sum = ((*iMaz).first).first[i];
                                sqr_sum = ((*iMaz).first).second[i];
                                average = sum/size;
                                //here needs to take absolute value for sqrt:
                                std_dev = sqrt( fabs((sqr_sum / size) - (average * average)) );

                                ss  << "   TimeCorr " << " :"<< std::endl;
                                ss      << "          Average: " << average << "; "<< std::endl;
                                ss      << "          Standart deviation: " << std_dev << "; " << std::endl;                                    

                        }       
                }
                //std::cout << ss.str();
                        return ss.str();
        }
template<>
std::string cond::PayLoadInspector< HcalValidationCorrs >::summary ( void  ) const

Definition at line 87 of file HcalValidationCorrsPyWrapper.cc.

References PDRates::average, first, i, j, dbtoconf::object, edm::second(), findQualityFiles::size, and mathSSE::sqrt().

                                                                       {
                std::stringstream ss;
                unsigned int totalValues = 1;
                // get all containers with names
                HcalValidationCorrs::tAllContWithNames allContainers = object().getAllContainers();

                // initializing iterators
                HcalValidationCorrs::tAllContWithNames::const_iterator iter;
                std::vector<HcalValidationCorr>::const_iterator contIter;

                ss << "Total HCAL containers: " << allContainers.size() << std::endl;

                typedef std::pair<std::pair< std::vector<float>, std::vector<float> >, int> tPora;

                std::vector<tPora> vec(allContainers.size());

                std::vector<tPora>::iterator iMaz = vec.begin();

                float sum = 0.0, average = 0.0, std_dev = 0.0, sqr_sum = 0.0;
                int size = 0;

                //Run trough all 8 detector containers:
                for (iter = allContainers.begin(), iMaz = vec.begin(); iter != allContainers.end(); ++iter, ++iMaz){
                        ss << "---------------------------------------------" << std::endl;
                        ss << "Detector: " << (*iter).first << ";    Total values: "<< (*iter).second.size() << std::endl;
                        unsigned int j = 0;
                        iMaz->second = (*iter).second.size();
                        (iMaz->first).first = std::vector<float>(totalValues, 0.0);
                        (iMaz->first).second = std::vector<float>(totalValues, 0.0);
                        float capValue = 0.0;
                        //Run trough all values in container
                        for (contIter = (*iter).second.begin(); contIter != (*iter).second.end(); ++contIter){

                                //Run trough all values (8) in object:
                                for (unsigned int i = 0; i < totalValues; ++i){
                                        capValue = (*contIter).getValue();
                                        (iMaz->first).first[i] += capValue;
                                        (iMaz->first).second[i]+= (capValue * capValue);
                                        //ss << "[" << i << "] " << capValue << ", " << (iMaz->first).first[i] << ", " << (iMaz->first).second[i] << "; ";
                                }
                                //ss << std::endl;
                                ++j;
                        }

                        size = (*iMaz).second;
                        for (unsigned int i = 0; i < totalValues; ++i){
                                sum = ((*iMaz).first).first[i];
                                sqr_sum = ((*iMaz).first).second[i];
                                average = sum/size;
                                //here needs to take absoValidatione value for sqrt:
                                std_dev = sqrt( fabs((sqr_sum / size) - (average * average)) );

                                ss  << "   ValidationCorr " << " :"<< std::endl;
                                ss      << "          Average: " << average << "; "<< std::endl;
                                ss      << "          Standart deviation: " << std_dev << "; " << std::endl;                                    

                        }       
                }
                //std::cout << ss.str();
                        return ss.str();
        }
template<>
std::string cond::PayLoadInspector< EcalFloatCondObjectContainer >::summary ( void  ) const

calculate mean and sigma

Definition at line 164 of file EcalFloatCondObjectContainerPyWrapper.cc.

References EEDetId::IX_MAX, EEDetId::IY_MAX, kBarlRings, kBarlWedges, kEndcWedgesX, kEndcWedgesY, kSides, EBDetId::MAX_IETA, EBDetId::MAX_IPHI, dbtoconf::object, EEDetId::validDetId(), and x.

                                                                          {

    std::stringstream ss;

    const int kSides       = 2;
    const int kBarlRings   = EBDetId::MAX_IETA;
    const int kBarlWedges  = EBDetId::MAX_IPHI;
    const int kEndcWedgesX = EEDetId::IX_MAX;
    const int kEndcWedgesY = EEDetId::IY_MAX;


    float mean_x_EB=0;
    float mean_xx_EB=0;
    int num_x_EB=0;

    float mean_x_EE=0;
    float mean_xx_EE=0;
    int num_x_EE=0;


    for (int sign=0; sign<kSides; sign++) {

       int thesign = sign==1 ? 1:-1;

       for (int ieta=0; ieta<kBarlRings; ieta++) {
         for (int iphi=0; iphi<kBarlWedges; iphi++) {
           EBDetId id((ieta+1)*thesign, iphi+1);
            float x= object()[id.rawId()];
            num_x_EB++;
            mean_x_EB=mean_x_EB+x;
            mean_xx_EB=mean_xx_EB+x*x;
         }
       }

       for (int ix=0; ix<kEndcWedgesX; ix++) {
         for (int iy=0; iy<kEndcWedgesY; iy++) {
           if (! EEDetId::validDetId(ix+1,iy+1,thesign)) continue;
           EEDetId id(ix+1,iy+1,thesign);
            float x=object()[id.rawId()];
            num_x_EE++;
            mean_x_EE=mean_x_EE+x;
            mean_xx_EE=mean_xx_EE+x*x;

         }//iy
       }//ix


    }

    mean_x_EB=mean_x_EB/num_x_EB;
    mean_x_EE=mean_x_EE/num_x_EE;
    mean_xx_EB=mean_xx_EB/num_x_EB;
    mean_xx_EE=mean_xx_EE/num_x_EE;
    float rms_EB=(mean_xx_EB-mean_x_EB*mean_x_EB);
    float rms_EE=(mean_xx_EE-mean_x_EE*mean_x_EE);

    ss << "ECAL BARREL Mean: "<< mean_x_EB <<" RMS: "<<  rms_EB << " Nchan: "<< num_x_EB<< std::endl
       << "ECAL Endcap Mean: "<< mean_x_EE <<" RMS: "<<  rms_EE << " Nchan: "<< num_x_EE<< std::endl ;


    return ss.str();
  }
template<>
std::string cond::PayLoadInspector< RPCObImon >::summary ( void  ) const

Definition at line 177 of file RPCObImonPyWrapper.cc.

References builder_last_value_cfg::authPath, cond::DbSession::close(), cond::DbConnection::configuration(), cond::DbConnection::configure(), cond::DbConnection::createSession(), cond::DbSession::getTypedObject(), i, RPCGeomServ::name(), RPCObPVSSmap::ObIDMap_rpc, dbtoconf::object, cond::DbSession::open(), AlCaHLTBitMon_ParallelJobs::p, relativeConstraints::ring, cond::DbConnectionConfiguration::setAuthenticationPath(), cond::DbTransaction::start(), relativeConstraints::station, AlCaHLTBitMon_QueryRunRegistry::string, and cond::DbSession::transaction().

                                                       {

    std::stringstream ss;
   
    //BEGIN OF NEW DB-SESSION PART
    //hardcoded values
    std::string authPath="/afs/cern.ch/cms/DB/conddb";
    std::string conString="oracle://cms_orcoff_prod/CMS_COND_31X_RPC";
    
    //frontend sends token instead of filename
    std::string token="[DB=00000000-0000-0000-0000-000000000000][CNT=RPCObPVSSmap][CLID=53B2D2D9-1F4E-9CA9-4D71-FFCCA123A454][TECH=00000B01][OID=0000000C-00000000]";
    
    //make connection object
    DbConnection dbConn;
    
    //set in configuration object authentication path
    dbConn.configuration().setAuthenticationPath(authPath);
    dbConn.configure();
    
    //create session object from connection
    DbSession dbSes=dbConn.createSession();
    
    //try to make connection
    dbSes.open(conString,true);
    
    //start a transaction (true=readOnly)
    //cond::DbTransaction dbTr=
    dbSes.transaction().start(true);
    
    //get the actual object
    boost::shared_ptr<RPCObPVSSmap> pvssPtr;
    pvssPtr=dbSes.getTypedObject<RPCObPVSSmap>(token);

    //we have the object...
    std::vector<RPCObPVSSmap::Item> pvssCont=pvssPtr->ObIDMap_rpc;
    //END OF NEW DB-SESSION PART

    std::vector<RPCObImon::I_Item> const & imon = object().ObImon_rpc;
    
    ss<<"DetID\t\t\tI(uA)\tTime\tDay\n";
    for(unsigned int i = 0; i < imon.size(); ++i ){
      for(unsigned int p = 0; p < pvssCont.size(); ++p){
        if(imon[i].dpid!=pvssCont[p].dpid || pvssCont[p].suptype!=0 || pvssCont[p].region!=0)continue;
        RPCDetId rpcId(pvssCont[p].region,pvssCont[p].ring,pvssCont[p].station,pvssCont[p].sector,pvssCont[p].layer,pvssCont[p].subsector,1);
        RPCGeomServ rGS(rpcId);
        std::string chName(rGS.name().substr(0,rGS.name().find("_Backward")));
        ss <<chName <<"\t"<<imon[i].value<<"\t"<<imon[i].time<<"\t"<<imon[i].day<<"\n";
      }
    }
    
    //close db session
    dbSes.close();
    
    return ss.str();
  }
template<>
std::string cond::PayLoadInspector< HcalRespCorrs >::summary ( void  ) const

Definition at line 87 of file HcalRespCorrsPyWrapper.cc.

References PDRates::average, first, i, j, dbtoconf::object, edm::second(), findQualityFiles::size, and mathSSE::sqrt().

                                                                 {
                std::stringstream ss;
                unsigned int totalValues = 1;
                // get all containers with names
                HcalRespCorrs::tAllContWithNames allContainers = object().getAllContainers();

                // initializing iterators
                HcalRespCorrs::tAllContWithNames::const_iterator iter;
                std::vector<HcalRespCorr>::const_iterator contIter;

                ss << "Total HCAL containers: " << allContainers.size() << std::endl;

                typedef std::pair<std::pair< std::vector<float>, std::vector<float> >, int> tPora;

                std::vector<tPora> vec(allContainers.size());

                std::vector<tPora>::iterator iMaz = vec.begin();

                float sum = 0.0, average = 0.0, std_dev = 0.0, sqr_sum = 0.0;
                int size = 0;

                //Run trough all 8 detector containers:
                for (iter = allContainers.begin(), iMaz = vec.begin(); iter != allContainers.end(); ++iter, ++iMaz){
                        ss << "---------------------------------------------" << std::endl;
                        ss << "Detector: " << (*iter).first << ";    Total values: "<< (*iter).second.size() << std::endl;
                        unsigned int j = 0;
                        iMaz->second = (*iter).second.size();
                        (iMaz->first).first = std::vector<float>(totalValues, 0.0);
                        (iMaz->first).second = std::vector<float>(totalValues, 0.0);
                        float capValue = 0.0;
                        //Run trough all values in container
                        for (contIter = (*iter).second.begin(); contIter != (*iter).second.end(); ++contIter){

                                //Run trough all values (8) in object:
                                for (unsigned int i = 0; i < totalValues; ++i){
                                        capValue = (*contIter).getValue();
                                        (iMaz->first).first[i] += capValue;
                                        (iMaz->first).second[i]+= (capValue * capValue);
                                        //ss << "[" << i << "] " << capValue << ", " << (iMaz->first).first[i] << ", " << (iMaz->first).second[i] << "; ";
                                }
                                //ss << std::endl;
                                ++j;
                        }

                        size = (*iMaz).second;
                        for (unsigned int i = 0; i < totalValues; ++i){
                                sum = ((*iMaz).first).first[i];
                                sqr_sum = ((*iMaz).first).second[i];
                                average = sum/size;
                                std_dev = sqrt( (sqr_sum/size) - (average * average) );

                                ss  << "   RespCorr " << " :"<< std::endl;
                                ss      << "          Average: " << average << "; "<< std::endl;
                                ss      << "          Standart deviation: " << std_dev << "; " << std::endl;                                    

                        }       
                }
                //std::cout << ss.str();
                        return ss.str();
        }
template<>
std::string cond::PayLoadInspector< HcalZSThresholds >::summary ( void  ) const

Definition at line 87 of file HcalZSThresholdsPyWrapper.cc.

References PDRates::average, first, i, j, dbtoconf::object, edm::second(), findQualityFiles::size, and mathSSE::sqrt().

                                                                    {
                std::stringstream ss;
                unsigned int totalValues = 1;
                // get all containers with names
                HcalZSThresholds::tAllContWithNames allContainers = object().getAllContainers();

                // initializing iterators
                HcalZSThresholds::tAllContWithNames::const_iterator iter;
                std::vector<HcalZSThreshold>::const_iterator contIter;

                ss << "Total HCAL containers: " << allContainers.size() << std::endl;

                typedef std::pair<std::pair< std::vector<float>, std::vector<float> >, int> tPora;

                std::vector<tPora> vec(allContainers.size());

                std::vector<tPora>::iterator iMaz = vec.begin();

                float sum = 0.0, average = 0.0, std_dev = 0.0, sqr_sum = 0.0;
                int size = 0;

                //Run trough all 8 detector containers:
                for (iter = allContainers.begin(), iMaz = vec.begin(); iter != allContainers.end(); ++iter, ++iMaz){
                        ss << "---------------------------------------------" << std::endl;
                        ss << "Detector: " << (*iter).first << ";    Total values: "<< (*iter).second.size() << std::endl;
                        unsigned int j = 0;
                        iMaz->second = (*iter).second.size();
                        (iMaz->first).first = std::vector<float>(totalValues, 0.0);
                        (iMaz->first).second = std::vector<float>(totalValues, 0.0);
                        int capValue = 0;
                        //Run trough all values in container
                        for (contIter = (*iter).second.begin(); contIter != (*iter).second.end(); ++contIter){

                                //Run trough all values (8) in object:
                                for (unsigned int i = 0; i < totalValues; ++i){
                                        capValue = (*contIter).getValue();
                                        (iMaz->first).first[i] += capValue;
                                        (iMaz->first).second[i]+= (capValue * capValue);
                                        //ss << "[" << i << "] " << capValue << ", " << (iMaz->first).first[i] << ", " << (iMaz->first).second[i] << "; ";
                                }
                                //ss << std::endl;
                                ++j;
                        }

                        size = (*iMaz).second;
                        for (unsigned int i = 0; i < totalValues; ++i){
                                sum = ((*iMaz).first).first[i];
                                sqr_sum = ((*iMaz).first).second[i];
                                average = sum/size;
                                //here needs to take absolute value for sqrt:
                                std_dev = sqrt( fabs((sqr_sum / size) - (average * average)) );

                                ss  << "   ZSThreshold " << " :"<< std::endl;
                                ss      << "          Average: " << average << "; "<< std::endl;
                                ss      << "          Standart deviation: " << std_dev << "; " << std::endl;                                    

                        }       
                }
                //std::cout << ss.str();
                        return ss.str();
        }
template<>
std::string cond::PayLoadInspector< RPCObGas >::summary ( void  ) const

Definition at line 200 of file RPCObGasPyWrapper.cc.

                                                      {

//     std::stringstream ss;
   
//     //BEGIN OF NEW DB-SESSION PART
//     //hardcoded values
//     std::string authPath="/afs/cern.ch/cms/DB/conddb";
//     std::string conString="oracle://cms_orcoff_prod/CMS_COND_31X_RPC";
    
//     //frontend sends token instead of filename
//     std::string token="[DB=00000000-0000-0000-0000-000000000000][CNT=RPCObPVSSmap][CLID=53B2D2D9-1F4E-9CA9-4D71-FFCCA123A454][TECH=00000B01][OID=0000000C-00000000]";
    
//     //make connection object
//     DbConnection dbConn;
    
//     //set in configuration object authentication path
//     dbConn.configuration().setAuthenticationPath(authPath);
//     dbConn.configure();
    
//     //create session object from connection
//     DbSession dbSes=dbConn.createSession();
    
//     //try to make connection
//     dbSes.open(conString,true);
    
//     //start a transaction (true=readOnly)
//     //cond::DbTransaction dbTr=
//     dbSes.transaction().start(true);
    
//     //get the actual object
//     boost::shared_ptr<RPCObPVSSmap> pvssPtr;
//     pvssPtr=dbSes.getTypedObject<RPCObPVSSmap>(token);

//     //we have the object...
//     std::vector<RPCObPVSSmap::Item> pvssCont=pvssPtr->ObIDMap_rpc;
//     //END OF NEW DB-SESSION PART

//     std::vector<RPCObGas::Item> const & gas = object().ObGas_rpc;
    
//     ss<<"DetID\t\t\tI(uA)\tTime\tDay\n";
//     for(unsigned int i = 0; i < gas.size(); ++i ){
//       for(unsigned int p = 0; p < pvssCont.size(); ++p){
//      if(gas[i].dpid!=pvssCont[p].dpid || pvssCont[p].suptype!=0 || pvssCont[p].region!=0)continue;
//      RPCDetId rpcId(pvssCont[p].region,pvssCont[p].ring,pvssCont[p].station,pvssCont[p].sector,pvssCont[p].layer,pvssCont[p].subsector,1);
//      RPCGeomServ rGS(rpcId);
//      std::string chName(rGS.name().substr(0,rGS.name().find("_Backward")));
//              ss <<chName <<"\t"<<gas[i].value<<"\t"<<gas[i].time<<"\t"<<gas[i].day<<"\n";
//       }
//     }
    
//     //close db session
//     dbSes.close();
    
//    return ss.str();

    return "";

  }
template<>
std::string cond::PayLoadInspector< EcalDQMTowerStatus >::summary ( void  ) const

Definition at line 206 of file EcalDQMTowerStatusPyWrapper.cc.

References EcalPyWrapperHelper< T >::printBarrelsEndcaps().

                                                                 {
        std::stringstream ss;
        EcalDQMTowerStatusHelper helper;
        ss << helper.printBarrelsEndcaps(object().barrelItems(), object().endcapItems());
        return ss.str();
   }
template<>
std::string cond::PayLoadInspector< HcalGains >::summary ( void  ) const

Definition at line 50 of file HcalGainsPyWrapper.cc.

References PDRates::average, first, i, j, dbtoconf::object, edm::second(), findQualityFiles::size, and mathSSE::sqrt().

                                                             {
                std::stringstream ss;

                // get all containers with names
                HcalGains::tAllContWithNames allContainers = object().getAllContainers();

                // initializing iterators
                HcalGains::tAllContWithNames::const_iterator iter;
                std::vector<HcalGain>::const_iterator contIter;

                ss << "Total HCAL containers: " << allContainers.size() << std::endl;

                int capIdSize = 4;
                float capValue = 0.0;
                typedef std::pair<std::pair< std::vector<float>, std::vector<float> >, int> tPora;

                std::vector<tPora> vec(allContainers.size());

                std::vector<tPora>::iterator iMaz = vec.begin();

                float sum = 0.0, average = 0.0, std_dev = 0.0, sqr_sum = 0.0;
                int size = 0;

                //Run trough all 8 detector containers:
                for (iter = allContainers.begin(), iMaz = vec.begin(); iter != allContainers.end(); ++iter, ++iMaz){
                        ss << "---------------------------------------------" << std::endl;
                        ss << "Detector: " << (*iter).first << ";    Total values: "<< (*iter).second.size() << std::endl;
                        unsigned int j = 0;
                        //ss << sizes.size() <<index;
                        //vec.push_back(std::pair<std::vector<float>(4, 0.0), 0>);
                        iMaz->second = (*iter).second.size();
                        (iMaz->first).first = std::vector<float>(4, 0.0);
                        (iMaz->first).second = std::vector<float>(4, 0.0);

                        //Run trough all values in container
                        for (contIter = (*iter).second.begin(); contIter != (*iter).second.end(); ++contIter){

                                //Run trough all values (4) in object:
                                for (int i = 0; i < capIdSize; ++i){
                                        capValue = (*contIter).getValue(i);
                                        (iMaz->first).first[i] += capValue;
                                        (iMaz->first).second[i]+= (capValue * capValue);
                                        //ss << "[" << i << "] " << capValue << ", " << (iMaz->first).first[i] << ", " << (iMaz->first).second[i] << "; ";
                                }
                                //ss << std::endl;
                                ++j;
                        }

                        size = (*iMaz).second;
                        //ss << k++ << ": size =  "<< size << "; ";
                        for (int i = 0; i < capIdSize; ++i){
                                sum = ((*iMaz).first).first[i];
                                sqr_sum = ((*iMaz).first).second[i];
                                average = sum/size;
                                std_dev = sqrt( (sqr_sum/size) - (average * average) );
                                ss  << "    Gain " << i << " :"<< std::endl;
                                ss      << "          Average: " << average << "; "<< std::endl;
                                ss      << "          Standart deviation: " << std_dev << "; " << std::endl;
                        }       
                }
                return ss.str();
        }
template<>
std::string cond::PayLoadInspector< SiStripConfObject >::summary ( void  ) const

Definition at line 41 of file SiStripConfObjectPyWrapper.cc.

References dbtoconf::object.

                                                               {
    std::stringstream ss;
    object().printSummary(ss);
    return ss.str();
  }
template<>
std::string cond::PayLoadInspector< AlCaRecoTriggerBits >::summary ( void  ) const

Definition at line 41 of file AlCaRecoTriggerBitsPyWrapper.cc.

References dbtoconf::object, query::result, and AlCaHLTBitMon_QueryRunRegistry::string.

                                                                 {
    // std::stringstream ss;
        std::string result = "empty map";
        if( object().m_alcarecoToTrig.size() > 0 ) {
                //      ss << "trigger bit : value \n";
                //      std::map<std::string, std::string>::const_iterator it = object().m_alcarecoToTrig.begin();

                //std::vector<std::string> strs;
                //boost::split(strs, object().m_alcarecoToTrig.begin()->second, boost::is_any_of(";"));
                result = object().m_alcarecoToTrig.begin()->first +" :\n"+ object().m_alcarecoToTrig.begin()->second;
                boost::replace_all(result, ";", ";\n");
                //ss << it->first << " : " << it->second << "\n";
        }
        return result;
  }
template<>
std::string cond::PayLoadInspector< DTDeadFlag >::summary ( void  ) const

Definition at line 41 of file DTDeadFlagPyWrapper.cc.

                                                        {
    std::stringstream ss;
    return ss.str();
  }
template<>
std::string cond::PayLoadInspector< SiStripLatency >::summary ( void  ) const

Definition at line 41 of file SiStripLatencyPyWrapper.cc.

References dbtoconf::object.

                                                            {
    std::stringstream ss;
    object().printSummary(ss);
    return ss.str();
  }
template<>
std::string cond::PayLoadInspector< SiStripApvGain >::summary ( void  ) const

Definition at line 41 of file SiStripApvGainPyWrapper.cc.

References dbtoconf::object.

                                                            {
    std::stringstream ss;
    object().printSummary(ss);
    return ss.str();
  }
template<>
std::string cond::PayLoadInspector< EcalTPGStripStatus >::summary ( void  ) const

Definition at line 45 of file EcalTPGStripStatusPyWrapper.cc.

References gather_cfg::cout, and dbtoconf::object.

                                                                {
    std::stringstream ss;
    const EcalTPGStripStatusMap &stripMap = object().getMap();
    std::cout << " tower map size " << stripMap.size() << std::endl;
    ss <<" Endcap : Number of masked Trigger Strips " << stripMap.size() << std::endl;
    return ss.str();
  }
template<>
string cond::PayLoadInspector< Alignments >::summary ( void  ) const

Definition at line 49 of file EcalAlignmentPyWrapper.cc.

References dbtoconf::object.

                                                     {

    stringstream ss;   
    ss << "   Id    x   y   z   phi   theta   psi "  << endl;
    for ( vector<AlignTransform>::const_iterator it = object().m_align.begin();
          it != object().m_align.end(); it++ ) {
      ss << hex << (*it).rawId()
         << " " << (*it).translation().x()
         << " " << (*it).translation().y()
         << " " << (*it).translation().z()
         << " " << (*it).rotation().getPhi()
         << " " << (*it).rotation().getTheta() 
         << " " << (*it).rotation().getPsi() 
         << endl;
    }
    return ss.str();
  }
template<>
std::string cond::PayLoadInspector< EcalChannelStatus >::summary ( void  ) const

Definition at line 292 of file EcalChannelStatusPyWrapper.cc.

References cond::ecalcond::bad(), cond::getTotalErrors(), and dbtoconf::object.

                                                                     {
                const std::vector<EcalChannelStatusCode> barrelItems = object().barrelItems();
                const std::vector<EcalChannelStatusCode> endcapItems = object().endcapItems();
                std::stringstream ss;

                ss << std::endl << "------Barrel Items: " << std::endl;
                ss << "---Total: " << barrelItems.size() << std::endl;
                ss << "---With errors: " << ecalcond::bad(barrelItems) << std::endl;
                ss << getTotalErrors(barrelItems);

                ss << std::endl << "------Endcap Items: " << std::endl;
                ss << "---Total: " << endcapItems.size() << std::endl;
                ss << "---With errors: " << ecalcond::bad(endcapItems) << std::endl;
                ss << getTotalErrors(endcapItems);

                //for (std::vector<EcalChannelStatusCode>::const_iterator barIter = barrelItems.begin(); barIter != barrelItems.end(); ++barIter){
                //      stcode = barIter->getStatusCode();
                //      if (stcode !=0){
                //              barrelId = EBDetId::detIdFromDenseIndex(count);
                //              ss << "Id[" << count << "] RawId:[" << barrelId.rawId() << "]" 
                //               << "; Ieta:" << barrelId.ieta() <<
                //              "; Iphi:" << barrelId.iphi()<<
                //              "; Ism:" << barrelId.ism()<<
                //              "; Ic:" << barrelId.ic()<<
                //              "; Errors:" << StCodeToStr(barIter->getStatusCode(), vBarrWithErr, barrelId);
                //      }
                //      ++count;
                //}

                //EEDetId endcapId;
                //ss << std::endl << "------Endcap Items: " << std::endl;
                //ss << "---Total: " << endcapItems.size() << std::endl;
                //ss << "---With errors: " << ecalcond::bad(endcapItems) << std::endl;
                //count = 0;
                //for (std::vector<EcalChannelStatusCode>::const_iterator endcapIter = endcapItems.begin(); endcapIter != endcapItems.end(); ++endcapIter){
                //      stcode = endcapIter->getStatusCode();
                //      if (stcode !=0){
                //              endcapId = EEDetId::detIdFromDenseIndex(count);
                //              ss << "Id[" << count << "] RawId:[" << endcapId.rawId() << "]" 
                //               << "; Zside:" << endcapId.zside() <<
                //              "; Ix:" << endcapId.ix()<<
                //              "; Iy:" << endcapId.iy()<<
                //              "; Errors:" << StCodeToStr(endcapIter->getStatusCode());
                //      }
                //      ++count;
                //}

                //ss << StCodeToStr(0xFFF09);

                return ss.str();
        }
template<>
std::string cond::PayLoadInspector< EcalDAQTowerStatus >::summary ( void  ) const

Definition at line 158 of file EcalDAQTowerStatusPyWrapper.cc.

References EcalPyWrapperHelper< T >::printBarrelsEndcaps().

                                                                 {
        std::stringstream ss;
        EcalDAQTowerStatusHelper helper;
        ss << helper.printBarrelsEndcaps(object().barrelItems(), object().endcapItems());
        return ss.str();
   }
template<>
std::string cond::PayLoadInspector< HcalLutMetadata >::summary ( void  ) const

Definition at line 107 of file HcalLutMetadataPyWrapper.cc.

References PDRates::average, first, i, j, dbtoconf::object, edm::second(), findQualityFiles::size, and mathSSE::sqrt().

                                                                   {
                std::stringstream ss;

                unsigned int totalValues = 3;

                // get all containers with names
                HcalLutMetadata::tAllContWithNames allContainers = object().getAllContainers();

                // initializing iterators
                HcalLutMetadata::tAllContWithNames::const_iterator iter;
                std::vector<HcalLutMetadatum>::const_iterator contIter;

                ss << "Total HCAL containers: " << allContainers.size() << std::endl;

                typedef std::pair<std::pair< std::vector<float>, std::vector<float> >, int> tPora;

                std::vector<tPora> vec(allContainers.size());

                std::vector<tPora>::iterator iMaz = vec.begin();

                float sum = 0.0, average = 0.0, std_dev = 0.0, sqr_sum = 0.0;
                int size = 0;

                //Run trough all 8 detector containers:
                for (iter = allContainers.begin(), iMaz = vec.begin(); iter != allContainers.end(); ++iter, ++iMaz){
                        ss << "---------------------------------------------" << std::endl;
                        ss << "Detector: " << (*iter).first << ";    Total values: "<< (*iter).second.size() << std::endl;
                        unsigned int j = 0;
                        iMaz->second = (*iter).second.size();
                        (iMaz->first).first = std::vector<float>(totalValues, 0.0);
                        (iMaz->first).second = std::vector<float>(totalValues, 0.0);
                        float capValue = 0.0;
                        //Run trough all values in container
                        for (contIter = (*iter).second.begin(); contIter != (*iter).second.end(); ++contIter){

                                //Run trough all values in object:
                                for (unsigned int i = 0; i < totalValues; ++i){

                                        //GET VALUE:
                                        switch(i){
                                                case 0:
                                                        capValue = (*contIter).getRCalib();
                                                        break;
                                                case 1:
                                                        capValue = (*contIter).getLutGranularity();
                                                        break;
                                                case 2:
                                                        capValue = (*contIter).getOutputLutThreshold();
                                                        break;
                                                default:
                                                        throw("Trying to access not existing value!");
                                        }

                                        //capValue = (*contIter).getValue(i);
                                        (iMaz->first).first[i] += capValue;
                                        (iMaz->first).second[i]+= (capValue * capValue);
                                        //ss << "[" << i << "] " << capValue << ", " << (iMaz->first).first[i] << ", " << (iMaz->first).second[i] << "; ";
                                }
                                //ss << std::endl;
                                ++j;
                        }

                        size = (*iMaz).second;
                        for (unsigned int i = 0; i < totalValues; ++i){
                                sum = ((*iMaz).first).first[i];
                                sqr_sum = ((*iMaz).first).second[i];
                                average = sum/size;
                                //here needs to take absolute value for sqrt:
                                std_dev = sqrt( fabs((sqr_sum / size) - (average * average)) );

                                switch(i){
                                        case 0:
                                                ss  << "    LutMetadata RecHit calibration:"<< std::endl;
                                                break;
                                        case 1:
                                                ss  << "    LutMetadata LUT granularity:"<< std::endl;
                                                break;
                                        case 2:
                                                ss  << "    LutMetadata output LUT threshold :"<< std::endl;
                                                break;
                                        default:
                                                throw("Trying to access not existing value!");
                                }

                                ss      << "          Average: " << average << "; "<< std::endl;
                                ss      << "          Standart deviation: " << std_dev << "; " << std::endl;
                        }       
                }
                //std::cout << ss.str();
                return ss.str();
        }
template<>
std::string cond::PayLoadInspector< EcalMappingElectronics >::summary ( void  ) const

Definition at line 41 of file EcalMappingElectronicsPyWrapper.cc.

                                                                    {
    std::stringstream ss;
    return ss.str();
  }
template<>
std::string cond::PayLoadInspector< RunInfo >::summary ( void  ) const

Definition at line 49 of file RunInfoPyWrapper.cc.

References i, and dbtoconf::object.

                                                     {
    std::stringstream ss;
    ss << "RUN: "<<object().m_run;
    ss << ", START TIME: " << object().m_start_time_str;
    ss << ", STOP TIME:" << object().m_stop_time_str;
    ss << ", START CURRENT:  " << object().m_start_current;
    ss << ", STOP CURRENT:  " << object().m_stop_current;
    ss << ", AVG CURRENT:  " << object().m_avg_current;
    ss << ", MIN CURRENT:  " << object().m_min_current;
    ss << ", MAX CURRENT:  " << object().m_max_current;
    ss << ", RUN INTERVALL IN MICROSECONDS: "<< object().m_run_intervall_micros;  /*
     ss << ", ALL CURRENT VALUE FROM STOP TO START (BACKWARD) :" ;
    for (size_t i=0; i< object().m_current.size() ; i++){
      ss<< object().m_current[i] << ", ";
    } 
                                                                                 */    
    ss << ", FED IN :" ;
    for (size_t i=0; i<object().m_fed_in.size(); i++){
      ss<< object().m_fed_in[i] << ", "; 
    }  
      
  return ss.str();
}
template<>
std::string cond::PayLoadInspector< EcalDQMChannelStatus >::summary ( void  ) const

Definition at line 202 of file EcalDQMChannelStatusPyWrapper.cc.

References EcalPyWrapperHelper< T >::printBarrelsEndcaps().

                                                                        {
                std::stringstream ss;
                EcalDQMChannelStatusHelper helper;
                ss << helper.printBarrelsEndcaps(object().barrelItems(), object().endcapItems());
                return ss.str();
        }
template<>
std::string cond::PayLoadInspector< EcalWeightXtalGroups >::summary ( void  ) const

Definition at line 43 of file EcalWeightXtalGroupsPyWrapper.cc.

                                                                  {
    std::stringstream ss;
    return ss.str();
  }
template<>
std::string cond::PayLoadInspector< DTHVStatus >::summary ( void  ) const

Definition at line 41 of file DTHVStatusPyWrapper.cc.

                                                        {
    std::stringstream ss;
    return ss.str();
  }
template<>
std::string cond::PayLoadInspector< DTTPGParameters >::summary ( void  ) const

Definition at line 41 of file DTTPGParametersPyWrapper.cc.

                                                             {
    std::stringstream ss;
    return ss.str();
  }
template<>
std::string cond::PayLoadInspector< SiStripFedCabling >::summary ( void  ) const

Definition at line 41 of file SiStripFedCablingPyWrapper.cc.

References dbtoconf::object.

                                                               {
    std::stringstream ss;
    object().printSummary(ss);
    return ss.str();
  }
template<>
std::string cond::PayLoadInspector< SiStripBackPlaneCorrection >::summary ( void  ) const

Definition at line 40 of file SiStripBackPlaneCorrectionPyWrapper.cc.

References dbtoconf::object.

                                                                        {
    std::stringstream ss;
    object().printSummary(ss);
    return ss.str();
  }
template<>
std::string cond::PayLoadInspector< SiStripBadStrip >::summary ( void  ) const

Definition at line 41 of file SiStripBadStripPyWrapper.cc.

References dbtoconf::object.

                                                             {
    std::stringstream ss;
    object().printSummary(ss);
    return ss.str();
  }
template<>
std::string cond::PayLoadInspector< SiStripLorentzAngle >::summary ( void  ) const

Definition at line 40 of file SiStripLorentzAnglePyWrapper.cc.

References dbtoconf::object.

                                                                 {
    std::stringstream ss;
    object().printSummary(ss);
    return ss.str();
  }
template<>
std::string cond::PayLoadInspector< EcalTimeOffsetConstant >::summary ( void  ) const

Definition at line 27 of file EcalTimeOffsetConstantPyWrapper.cc.

References dbtoconf::object.

                                                                    {
    std::stringstream ss;
    ss <<" Barrel and endcap Time Offset" << std::endl;
    ss << " EB " << object().getEBValue()
       << " EE " << object().getEEValue() << std::endl;
    return ss.str();
  }
template<>
std::string cond::PayLoadInspector< RPCObVmon >::summary_adv ( std::string const &  opt_str,
std::vector< int > const &  vInts,
std::vector< float > const &  vFloats,
std::vector< std::string > const &  vStrings 
) const

Definition at line 182 of file RPCObVmonPyWrapper.cc.

                                                                                                    {
        
                std::stringstream ss;
                std::vector<std::string>::const_iterator iStr;
                ss << "Strings got: " << std::endl;
                for (iStr = vStrings.begin(); iStr != vStrings.end(); ++ iStr){
                        ss << *iStr << std::endl;
                }
                return ss.str();
        }
template<typename DataT >
std::string cond::PayLoadInspector< DataT >::summary_adv ( std::string const &  ,
std::vector< int > const &  ,
std::vector< float > const &  ,
std::vector< std::string > const &   
) const [inline]

Definition at line 121 of file PayLoadInspector.h.

                                                                                                               {return "";}
template<>
std::string cond::PayLoadInspector< RPCObGas >::trend_plot ( std::string const &  filename,
std::string const &  opt_string,
std::vector< int > const &  nts,
std::vector< float > const &  floats,
std::vector< std::string > const &  strings 
) const

Definition at line 424 of file RPCObGasPyWrapper.cc.

                                                                                                 {

//     std::stringstream ss("");
    
//     if(strings.size()<2)
//       return ("Error!Not enough data for initializing connection for making plots!(from template<> std::string PayLoadInspector<BeamSpotObjects>::trend_plot)");
   
//     std::vector<std::string>::const_iterator strIt=strings.begin();

//     std::string conString=(*strIt);strIt++;
//     std::string authPath=(*strIt);strIt++;
 
//     //BEGIN OF NEW DB-SESSION PART

//     //make connection object
//     DbConnection dbConn;
    
//     //set in configuration object authentication path
//     dbConn.configuration().setAuthenticationPath(authPath);
//     dbConn.configure();
    
//     //create session object from connection
//     DbSession dbSes=dbConn.createSession();
    
//     //try to make connection
//     dbSes.open(conString,true);
    
//     //start a transaction (true=readOnly)
//     dbSes.transaction().start(true);
    
//     std::string pvssToken="[DB=00000000-0000-0000-0000-000000000000][CNT=RPCObPVSSmap][CLID=53B2D2D9-1F4E-9CA9-4D71-FFCCA123A454][TECH=00000B01][OID=0000000C-00000000]";
//     //get the actual object
//     boost::shared_ptr<RPCObGas> gasPtr;
//     boost::shared_ptr<RPCObPVSSmap> pvssPtr;
//     pvssPtr=dbSes.getTypedObject<RPCObPVSSmap>(pvssToken);

//     //we get the objects...
//     std::vector<RPCObPVSSmap::Item> pvssCont=pvssPtr->ObIDMap_rpc,pvssZero;

//     for(unsigned int p=0;p<pvssCont.size();p++){
//       if(pvssCont[p].suptype!=0)
//      pvssZero.push_back(pvssCont[p]);
//     }
    
//     std::string token;
//     std::vector<float> vecI;vecI.assign(floats.size(),0.);
//     int elCount(0);

//     for(;strIt!=strings.end();++strIt){
      
//       token=(*strIt);
//       gasPtr=dbSes.getTypedObject<RPCObGas>(token);      
//       std::vector<RPCObGas::Item> const & gas = gasPtr->ObGas_rpc;

//       float iCount(0.);
//       for(unsigned int i=0;i<gas.size();i++){
//      for(unsigned int p=0;p<pvssZero.size();p++){
//        if(gas[i].dpid!=pvssZero[p].dpid || pvssZero[p].region!=0)continue;
//        iCount++;
//        vecI[elCount]+=gas[i].value;
//      }
//       }
//       if(iCount!=0)
//      vecI[elCount]/=iCount;
//       elCount++;
//     }
    
//     //END OF NEW DB-SESSION PART
    
//     dbSes.close();
    
//     std::vector<unsigned long long> lngs ;
//     for(std::vector<float>::const_iterator fIt=floats.begin();fIt!=floats.end();fIt++){
//       lngs.push_back((unsigned long long)*fIt);
//       //      std::cout<<*fIt<<" "<<(long double)*fIt<<" "<<(unsigned long long)*fIt<<" "<<vecI[0]<<" "<<(unsigned long long)vecI[0]<<std::endl;
//     }
//     std::vector<unsigned long long> const longs=lngs;

//     //    TGraph trend(vecI.size(),static_cast<const float *>(&longs[0]),static_cast<const float *>(&vecI[0]));
//     std::cout<<(int)longs[longs.size()-1]-longs[0]<<std::endl;
//     TH1F trend("trend","trend",(int)longs[longs.size()-1]-longs[0],longs[0],longs[longs.size()-1]);
//     //TH1F trend("trend","trend",floats.size(),static_cast<const float* >(&floats[0]));
//     trend.GetXaxis()->SetTimeDisplay(1);
//     trend.GetXaxis()->SetTimeFormat("%d/%m/%y %H:%M");
//     trend.SetLineColor(2);
//     trend.SetLineWidth(2);
//     trend.GetYaxis()->SetTitle("<I> (#muA)");

//     std::cout<<"Bins "<<trend.GetNbinsX()<<std::endl;
//     for(unsigned int fill=0;fill<=longs.size();fill++){
//       trend.SetBinContent(longs[fill]-longs[0],vecI[fill]);
//       std::cout<<fill<<" "<<floats[fill]<<" "<<longs[fill]-longs[0]<<" "<<vecI[fill]<<std::endl;
//     }

//     float min(*(floats.begin())),max(*(floats.end()-1));
//     float scaleToggle((max-min)/max);
//     TCanvas c("Itrend","Itrend",1200,700);

//     if(scaleToggle>=0.1)
//       c.SetLogx(1);

//     trend.Draw(/*"LA*"*/);

//     TLegend leg(0.65,0.91,0.99,0.99);
//     leg.AddEntry(&trend,"Gas trend","lpf");

//     leg.Draw("");

//     ss.str("");
//     ss<<filename<<".C";
//     c.SaveAs((ss.str()).c_str());

//     return ss.str();

    return "";
    
  }
template<>
std::string cond::PayLoadInspector< RPCObVmon >::trend_plot ( std::string const &  filename,
std::string const &  opt_string,
std::vector< int > const &  nts,
std::vector< float > const &  floats,
std::vector< std::string > const &  strings 
) const

Definition at line 447 of file RPCObVmonPyWrapper.cc.

References builder_last_value_cfg::authPath, trackerHits::c, cond::DbSession::close(), cond::DbConnection::configuration(), cond::DbConnection::configure(), cond::DbConnection::createSession(), asciidump::elCount, cond::DbSession::getTypedObject(), i, create_public_lumi_plots::leg, max(), min, RPCObPVSSmap::ObIDMap_rpc, RPCObVmon::ObVmon_rpc, cond::DbSession::open(), AlCaHLTBitMon_ParallelJobs::p, cond::DbConnectionConfiguration::setAuthenticationPath(), cond::DbTransaction::start(), AlCaHLTBitMon_QueryRunRegistry::string, and cond::DbSession::transaction().

                                                                                                 {

    std::stringstream ss("");
    
    if(strings.size()<2)
      return ("Error!Not enough data for initializing connection for making plots!(from template<> std::string PayLoadInspector<BeamSpotObjects>::trend_plot)");
   
    std::vector<std::string>::const_iterator strIt=strings.begin();

    std::string conString=(*strIt);strIt++;
    std::string authPath=(*strIt);strIt++;
 
    //BEGIN OF NEW DB-SESSION PART

    //make connection object
    DbConnection dbConn;
    
    //set in configuration object authentication path
    dbConn.configuration().setAuthenticationPath(authPath);
    dbConn.configure();
    
    //create session object from connection
    DbSession dbSes=dbConn.createSession();
    
    //try to make connection
    dbSes.open(conString,true);
    
    //start a transaction (true=readOnly)
    dbSes.transaction().start(true);
    
    std::string pvssToken="[DB=00000000-0000-0000-0000-000000000000][CNT=RPCObPVSSmap][CLID=53B2D2D9-1F4E-9CA9-4D71-FFCCA123A454][TECH=00000B01][OID=0000000C-00000000]";
    //get the actual object
    boost::shared_ptr<RPCObVmon> vmonPtr;
    boost::shared_ptr<RPCObPVSSmap> pvssPtr;
    pvssPtr=dbSes.getTypedObject<RPCObPVSSmap>(pvssToken);

    //we get the objects...
    std::vector<RPCObPVSSmap::Item> pvssCont=pvssPtr->ObIDMap_rpc,pvssZero;

    for(unsigned int p=0;p<pvssCont.size();p++){
      if(pvssCont[p].suptype!=0)
        pvssZero.push_back(pvssCont[p]);
    }
    
    std::string token;
    std::vector<float> vecI;vecI.assign(floats.size(),0.);
    int elCount(0);

    for(;strIt!=strings.end();++strIt){
      
      token=(*strIt);
      vmonPtr=dbSes.getTypedObject<RPCObVmon>(token);      
      std::vector<RPCObVmon::V_Item> const & vmon = vmonPtr->ObVmon_rpc;

      float iCount(0.);
      for(unsigned int i=0;i<vmon.size();i++){
        for(unsigned int p=0;p<pvssZero.size();p++){
          if(vmon[i].dpid!=pvssZero[p].dpid || pvssZero[p].region!=0)continue;
          iCount++;
          vecI[elCount]+=vmon[i].value;
        }
      }
      if(iCount!=0)
        vecI[elCount]/=iCount;
      elCount++;
    }
    
    //END OF NEW DB-SESSION PART
    
    dbSes.close();
    
    TGraph trend(vecI.size(),static_cast<const float *>(&floats[0]),static_cast<const float *>(&vecI[0]));
    trend.SetLineColor(2);
    trend.SetLineWidth(2);
    trend.GetYaxis()->SetTitle("<V> (V)");

    float min(*(floats.begin())),max(*(floats.end()-1));
    float scaleToggle((max-min)/max);
    TCanvas c("Itrend","Itrend",1200,700);

    if(scaleToggle>=0.1)
      c.SetLogx(1);

    trend.Draw("LA*");

    TLegend leg(0.65,0.91,0.99,0.99);
    leg.AddEntry(&trend,"Vmon trend","lpf");

    leg.Draw("");

    ss.str("");
    ss<<filename<<".C";
    c.SaveAs((ss.str()).c_str());

    return ss.str();
    
  }
template<>
std::string cond::PayLoadInspector< BeamSpotObjects >::trend_plot ( std::string const &  filename,
std::string const &  opt_string,
std::vector< int > const &  ints,
std::vector< float > const &  floats,
std::vector< std::string > const &  strings 
) const

Definition at line 61 of file BeamSpotObjectsPyWrapper.cc.

References builder_last_value_cfg::authPath, svgfig::canvas(), cond::DbSession::close(), cond::DbConnection::configuration(), cond::DbConnection::configure(), gather_cfg::cout, cond::DbConnection::createSession(), cond::DbSession::getTypedObject(), create_public_lumi_plots::leg, max(), min, cond::DbSession::open(), query::result, cond::DbConnectionConfiguration::setAuthenticationPath(), cond::DbTransaction::start(), AlCaHLTBitMon_QueryRunRegistry::string, and cond::DbSession::transaction().

        {
                std::stringstream ss("");

                if (strings.size() < 2)
                        return ("Error! Not enough data for initializing connection for making plots! (from \
                                        template<>\
                                        std::string PayLoadInspector<BeamSpotObjects>::trend_plot)");

                std::vector<std::string>::const_iterator iter_beg = strings.begin();

                std::string conString= (*iter_beg); 
                ++iter_beg;
                std::string authPath = (*iter_beg);
                ++iter_beg;

                //make connection object
                DbConnection dbConn;

                //set in configuration object authentication path
                dbConn.configuration().setAuthenticationPath(authPath);
                dbConn.configure();

                //create session object from connection
                DbSession dbSes=dbConn.createSession();

                //try to make connection
                dbSes.open(conString,true);

                //start a transaction (true=readOnly)
                dbSes.transaction().start(true);

                //get the actual object
                boost::shared_ptr<BeamSpotObjects> ptrBeamSpot;

                //iter_beg now stands on first token in the vector
                std::string token;

                std::vector<float> vecX;
                std::vector<float> vecY;
                std::vector<float> vecZ;
                for (std::vector<float>::const_iterator iter_float = floats.begin() ;iter_beg != strings.end();++iter_beg, ++iter_float){
                        token = (*iter_beg);
                        //std::cout << token << " ";
                        
                        ptrBeamSpot = dbSes.getTypedObject<BeamSpotObjects>(token);

                        //get data from the objects:
                        vecX.push_back(ptrBeamSpot->GetX());
                        vecY.push_back(ptrBeamSpot->GetY());
                        vecZ.push_back(ptrBeamSpot->GetZ());
                        std::cout << "since: "<<(*iter_float)<< " X: "<< ptrBeamSpot->GetX() << " Y: "<< ptrBeamSpot->GetY() << " Z: " << ptrBeamSpot->GetZ() << std::endl;


                }
                
                //close db session
                dbSes.close();

                TCanvas canvas("iC","iC",1200,1200); 
                //canvas.UseCurrentStyle();
                //gStyle->SetPalette(1);
                std::cout << *(floats.end() -1) << "   " << *(floats.begin());
                float max = *(floats.end() -1);
                float min =  *(floats.begin());

                unsigned int lineWidth = 2;
                unsigned int startColor = 2;

                float result = ((max - min) / max) ;
                if ( result >= 0.1 ){
                        canvas.SetLogx(1);
                }
                std::cout << "result: " << result << std::endl;

        
        //1)
                TGraph graphdataX(vecX.size(), static_cast<const float *>(&floats[0]), static_cast<const float *>(&vecX[0]));
                //graphdataX.GetXaxis()->SetRangeUser(*(floats.begin()),*(floats.end() -1));
                //graphdataX.GetXaxis()-> SetLabelSize(0.03);
                graphdataX.SetLineColor(startColor++);
                graphdataX.SetLineWidth(lineWidth);

        //2)
                TGraph graphdataY(vecY.size(), static_cast<const float *>(&floats[0]), static_cast<const float *>(&vecY[0]));
                //graphdataY.GetXaxis()->SetRangeUser(*(floats.begin()),*(floats.end() -1));
                //graphdataY.GetXaxis()-> SetLabelSize(0.03);
                graphdataY.SetLineColor(startColor++);
                graphdataY.SetLineWidth(lineWidth);

        //3)
                TGraph graphdataZ(vecZ.size(), static_cast<const float *>(&floats[0]), static_cast<const float *>(&vecZ[0]));
                //graphdataZ.GetXaxis()->SetRangeUser(*(floats.begin()),*(floats.end() -1));
                //graphdataZ.GetXaxis()-> SetLabelSize(0.03);
                graphdataZ.SetLineColor(startColor++);
                graphdataZ.SetLineWidth(lineWidth);


                TMultiGraph mg;
                std::stringstream plotTitle;
                plotTitle.precision(0);
                plotTitle << std::fixed;
                //plotTitle << "BeamSpot trend graph. X0 = black, Y0 = red, Z0 = green; since(first="
                plotTitle << "BeamSpot trend graph (first="
                                        <<(double)min 
                        << ", last=" 
                        << (double) max 
                        << ", total="
                        << floats.size()
                        <<");since;value";
                mg.SetTitle( plotTitle.str().c_str());

                //graphdataX.GetXaxis()->SetBinLabel(2,"mylabel");
                //graphdataY.GetXaxis()->SetBinLabel(2,"mylabel");
                //graphdataZ.GetXaxis()->SetBinLabel(2,"mylabel");

                mg.Add(&graphdataX);
                mg.Add(&graphdataY);
                mg.Add(&graphdataZ);
                

                //float size1 = mg.GetXaxis()-> GetBinWidth();
                //std::cout <<" BinWidth: " << size1 << std::endl;

                mg.Draw("LA*");

                TLegend leg(0.7,0.7,0.9,0.9,"Beam Spot Legend");
                leg.AddEntry(&graphdataX,"X_{0}","lpf");
                leg.AddEntry(&graphdataY,"Y_{0}","lpf");
                leg.AddEntry(&graphdataZ,"Z_{0}","lpf");

                leg.Draw();

                ss.str("");
                ss << filename << ".png";
                canvas.SaveAs((ss.str()).c_str());
                return ss.str();
        }
template<>
std::string cond::PayLoadInspector< RPCObTemp >::trend_plot ( std::string const &  filename,
std::string const &  opt_string,
std::vector< int > const &  nts,
std::vector< float > const &  floats,
std::vector< std::string > const &  strings 
) const

Definition at line 451 of file RPCObTempPyWrapper.cc.

References builder_last_value_cfg::authPath, cond::DbSession::close(), cond::DbConnection::configuration(), cond::DbConnection::configure(), cond::DbConnection::createSession(), asciidump::elCount, cond::DbSession::getTypedObject(), i, RPCObPVSSmap::ObIDMap_rpc, cond::DbSession::open(), AlCaHLTBitMon_ParallelJobs::p, cond::DbConnectionConfiguration::setAuthenticationPath(), cond::DbTransaction::start(), AlCaHLTBitMon_QueryRunRegistry::string, groupFilesInBlocks::temp, and cond::DbSession::transaction().

                                                                                                 {

    std::stringstream ss("");
    
    if(strings.size()<2)
      return ("Error!Not enough data for initializing connection for making plots!(from template<> std::string PayLoadInspector<BeamSpotObjects>::trend_plot)");
   
    std::vector<std::string>::const_iterator strIt=strings.begin();

    std::string conString=(*strIt);strIt++;
    std::string authPath=(*strIt);strIt++;
 
    //BEGIN OF NEW DB-SESSION PART

    //make connection object
    DbConnection dbConn;
    
    //set in configuration object authentication path
    dbConn.configuration().setAuthenticationPath(authPath);
    dbConn.configure();
    
    //create session object from connection
    DbSession dbSes=dbConn.createSession();
    
    //try to make connection
    dbSes.open(conString,true);
    
    //start a transaction (true=readOnly)
    dbSes.transaction().start(true);
    
    std::string pvssToken="[DB=00000000-0000-0000-0000-000000000000][CNT=RPCObPVSSmap][CLID=53B2D2D9-1F4E-9CA9-4D71-FFCCA123A454][TECH=00000B01][OID=0000000C-00000000]";
    //get the actual object
    boost::shared_ptr<RPCObTemp> tempPtr;
    boost::shared_ptr<RPCObPVSSmap> pvssPtr;
    pvssPtr=dbSes.getTypedObject<RPCObPVSSmap>(pvssToken);

    //we get the objects...
    std::vector<RPCObPVSSmap::Item> pvssCont=pvssPtr->ObIDMap_rpc,pvssZero;

    for(unsigned int p=0;p<pvssCont.size();p++){
      if(pvssCont[p].suptype!=4)
        pvssZero.push_back(pvssCont[p]);
    }
    
    std::string token;
    std::vector<float> vecI;vecI.assign(floats.size(),0.);
    int elCount(0);

    for(;strIt!=strings.end();++strIt){
      
      token=(*strIt);
      tempPtr=dbSes.getTypedObject<RPCObTemp>(token);      
      std::vector<RPCObTemp::T_Item> const & temp = tempPtr->ObTemp_rpc;

      float iCount(0.);
      for(unsigned int i=0;i<temp.size();i++){
        for(unsigned int p=0;p<pvssZero.size();p++){
          if(temp[i].dpid!=pvssZero[p].dpid || pvssZero[p].region!=0)continue;
          iCount++;
          vecI[elCount]+=temp[i].value;
        }
      }
      if(iCount!=0)
        vecI[elCount]/=iCount;
      elCount++;
    }
    
    //END OF NEW DB-SESSION PART
    
    dbSes.close();
    
    return ss.str();
    
  }
template<typename DataT >
std::string cond::PayLoadInspector< DataT >::trend_plot ( std::string const &  ,
std::string const &  ,
std::vector< int > const &  ,
std::vector< float > const &  ,
std::vector< std::string > const &   
) const [inline]

Definition at line 116 of file PayLoadInspector.h.

                                                                                                              {return "";}
template<>
std::string cond::PayLoadInspector< RPCObImon >::trend_plot ( std::string const &  filename,
std::string const &  opt_string,
std::vector< int > const &  nts,
std::vector< float > const &  floats,
std::vector< std::string > const &  strings 
) const

Definition at line 428 of file RPCObImonPyWrapper.cc.

References builder_last_value_cfg::authPath, trackerHits::c, cond::DbSession::close(), cond::DbConnection::configuration(), cond::DbConnection::configure(), gather_cfg::cout, cond::DbConnection::createSession(), asciidump::elCount, lumiContext::fill, cond::DbSession::getTypedObject(), i, create_public_lumi_plots::leg, max(), min, RPCObPVSSmap::ObIDMap_rpc, RPCObImon::ObImon_rpc, cond::DbSession::open(), AlCaHLTBitMon_ParallelJobs::p, cond::DbConnectionConfiguration::setAuthenticationPath(), cond::DbTransaction::start(), AlCaHLTBitMon_QueryRunRegistry::string, and cond::DbSession::transaction().

                                                                                                 {

    std::stringstream ss("");
    
    if(strings.size()<2)
      return ("Error!Not enough data for initializing connection for making plots!(from template<> std::string PayLoadInspector<BeamSpotObjects>::trend_plot)");
   
    std::vector<std::string>::const_iterator strIt=strings.begin();

    std::string conString=(*strIt);strIt++;
    std::string authPath=(*strIt);strIt++;
 
    //BEGIN OF NEW DB-SESSION PART

    //make connection object
    DbConnection dbConn;
    
    //set in configuration object authentication path
    dbConn.configuration().setAuthenticationPath(authPath);
    dbConn.configure();
    
    //create session object from connection
    DbSession dbSes=dbConn.createSession();
    
    //try to make connection
    dbSes.open(conString,true);
    
    //start a transaction (true=readOnly)
    dbSes.transaction().start(true);
    
    std::string pvssToken="[DB=00000000-0000-0000-0000-000000000000][CNT=RPCObPVSSmap][CLID=53B2D2D9-1F4E-9CA9-4D71-FFCCA123A454][TECH=00000B01][OID=0000000C-00000000]";
    //get the actual object
    boost::shared_ptr<RPCObImon> imonPtr;
    boost::shared_ptr<RPCObPVSSmap> pvssPtr;
    pvssPtr=dbSes.getTypedObject<RPCObPVSSmap>(pvssToken);

    //we get the objects...
    std::vector<RPCObPVSSmap::Item> pvssCont=pvssPtr->ObIDMap_rpc,pvssZero;

    for(unsigned int p=0;p<pvssCont.size();p++){
      if(pvssCont[p].suptype!=0)
        pvssZero.push_back(pvssCont[p]);
    }
    
    std::string token;
    std::vector<float> vecI;vecI.assign(floats.size(),0.);
    int elCount(0);

    for(;strIt!=strings.end();++strIt){
      
      token=(*strIt);
      imonPtr=dbSes.getTypedObject<RPCObImon>(token);      
      std::vector<RPCObImon::I_Item> const & imon = imonPtr->ObImon_rpc;

      float iCount(0.);
      for(unsigned int i=0;i<imon.size();i++){
        for(unsigned int p=0;p<pvssZero.size();p++){
          if(imon[i].dpid!=pvssZero[p].dpid || pvssZero[p].region!=0)continue;
          iCount++;
          vecI[elCount]+=imon[i].value;
        }
      }
      if(iCount!=0)
        vecI[elCount]/=iCount;
      elCount++;
    }
    
    //END OF NEW DB-SESSION PART
    
    dbSes.close();
    
    std::vector<unsigned long long> lngs ;
    for(std::vector<float>::const_iterator fIt=floats.begin();fIt!=floats.end();fIt++){
      lngs.push_back((unsigned long long)*fIt);
      //      std::cout<<*fIt<<" "<<(long double)*fIt<<" "<<(unsigned long long)*fIt<<" "<<vecI[0]<<" "<<(unsigned long long)vecI[0]<<std::endl;
    }
    std::vector<unsigned long long> const longs=lngs;

    //    TGraph trend(vecI.size(),static_cast<const float *>(&longs[0]),static_cast<const float *>(&vecI[0]));
    std::cout<<(int)longs[longs.size()-1]-longs[0]<<std::endl;
    TH1F trend("trend","trend",(int)longs[longs.size()-1]-longs[0],longs[0],longs[longs.size()-1]);
    //TH1F trend("trend","trend",floats.size(),static_cast<const float* >(&floats[0]));
    trend.GetXaxis()->SetTimeDisplay(1);
    trend.GetXaxis()->SetTimeFormat("%d/%m/%y %H:%M");
    trend.SetLineColor(2);
    trend.SetLineWidth(2);
    trend.GetYaxis()->SetTitle("<I> (#muA)");

    std::cout<<"Bins "<<trend.GetNbinsX()<<std::endl;
    for(unsigned int fill=0;fill<=longs.size();fill++){
      trend.SetBinContent(longs[fill]-longs[0],vecI[fill]);
      std::cout<<fill<<" "<<floats[fill]<<" "<<longs[fill]-longs[0]<<" "<<vecI[fill]<<std::endl;
    }

    float min(*(floats.begin())),max(*(floats.end()-1));
    float scaleToggle((max-min)/max);
    TCanvas c("Itrend","Itrend",1200,700);

    if(scaleToggle>=0.1)
      c.SetLogx(1);

    trend.Draw(/*"LA*"*/);

    TLegend leg(0.65,0.91,0.99,0.99);
    leg.AddEntry(&trend,"Imon trend","lpf");

    leg.Draw("");

    ss.str("");
    ss<<filename<<".C";
    c.SaveAs((ss.str()).c_str());

    return ss.str();
    
  }

Member Data Documentation

template<typename DataT >
ora::Object cond::PayLoadInspector< DataT >::m_object [private]
template<typename DataT >
cond::DbSession cond::PayLoadInspector< DataT >::m_session [private]

Definition at line 150 of file PayLoadInspector.h.

Referenced by cond::PayLoadInspector< DataT >::load().

template<typename DataT >
cond::Time_t cond::PayLoadInspector< DataT >::m_since [private]
template<typename DataT >
std::string cond::PayLoadInspector< DataT >::m_token [private]