15 #include <TEfficiency.h> 
   17 #include "dqm_core/exceptions.h" 
   18 #include "dqm_core/AlgorithmManager.h" 
   19 #include "dqm_core/Result.h" 
   57 execute( 
const std::string& 
name, 
const TObject& 
data, 
const dqm_core::AlgorithmConfig& )
 
   62   const TH1* 
h = 
dynamic_cast<const TH1*
>( &
data );
 
   63   const TGraph* 
g = 
dynamic_cast<const TGraph*
>( &
data );
 
   64   const TEfficiency* 
e = 
dynamic_cast<const TEfficiency*
>( &
data );
 
   65   if( 
h == 0 && 
g == 0 && 
e==0 ) {
 
   66     throw dqm_core::BadConfig( ERS_HERE, 
name, 
"Cannot cast data to type TH1, TGraph, or TEfficiency" );
 
   69   std::map<std::string,double> 
tags;
 
   71     tags[
"Mean"] = 
h->GetMean();
 
   72     tags[
"MeanError"] = 
h->GetMeanError();
 
   73     tags[
"RMS"]  = 
h->GetRMS();
 
   74     tags[
"RMSError"]  = 
h->GetRMSError();
 
   78     tags[
"XMean"] = 
g->GetMean(1);
 
   79     tags[
"YMean"] = 
g->GetMean(2);
 
   80     tags[
"XRMS"]  = 
g->GetRMS(1);
 
   81     tags[
"YRMS"]  = 
g->GetRMS(2);
 
   85     tags[
"Mean"] = 
e->GetCopyPassedHisto()->GetMean();
 
   86     tags[
"MeanError"] = 
e->GetCopyPassedHisto()->GetMeanError();
 
   87     tags[
"RMS"] = 
e->GetCopyPassedHisto()->GetRMS();
 
   88     tags[
"RMSError"] = 
e->GetCopyPassedHisto()->GetRMSError();
 
  105   message += 
"Description: Extracts data (ex., mean, RMS) from an object without performing\n";
 
  106   message += 
"             any assessment; the status is always \"Undefined\"\n";
 
  107   message += 
"Parameters: none\n";