47{
49
50 if(
object.
IsA()->InheritsFrom(
"TH1" ) ) {
52 } else {
53 throw dqm_core::BadConfig( ERS_HERE, name, "does not inherit from TH1" );
54 }
55
57
58 if (
histogram->GetEffectiveEntries() < minstat ) {
59 dqm_core::Result *
result =
new dqm_core::Result(dqm_core::Result::Undefined);
60 result->tags_[
"InsufficientEffectiveEntries"] =
histogram->GetEffectiveEntries();
62 }
63
64 double gthreshold;
65 double rthreshold;
66
68
69 try {
72 }
73 catch ( dqm_core::Exception & ex ) {
74 throw dqm_core::BadConfig( ERS_HERE, name, ex.what(), ex );
75 }
76 ERS_DEBUG(1,"Axis for skewness calculation:"<<axis);
77
78 Double_t skewness =
histogram->GetSkewness( axis );
79 Double_t skewness_e =
histogram->GetSkewness( axis + 10 );
80
81 dqm_core::Result*
result =
new dqm_core::Result();
82 ERS_DEBUG(1,"Skewness = "<<skewness<<" +- "<<skewness_e);
83 result->tags_[
"Skewness"] = skewness;
84 result->tags_[
"ApproxStandardError"]=skewness_e;
85
87 result->status_ = dqm_core::Result::Green;
89 result->status_ = dqm_core::Result::Yellow;
90 } else {
91 result->status_ = dqm_core::Result::Red;
92 }
93
95
96}
bool CompareSkewnessTest(const std::string &type, double value, double threshold)
#define IsA
Declare the TObject style functions.