|
Gaudi Framework, version v21r6 |
| Home | Generated: 11 Nov 2009 |
Classes | |
| class | Table |
| Simple class for the customizeble printout of the histogram tables. More... | |
Namespaces | |
| namespace | Formats |
| The 15 format fields are predefined now:. | |
Functions | |
| GAUDI_API void | fill (AIDA::IHistogram1D *histo, const double value, const double weight=1.0) |
| simple function to fill AIDA::IHistogram1D objects | |
| GAUDI_API void | fill (AIDA::IHistogram2D *histo, const double valueX, const double valueY, const double weight=1.0) |
| simple function to fill AIDA::IHistogram2D objects | |
| GAUDI_API void | fill (AIDA::IHistogram3D *histo, const double valueX, const double valueY, const double valueZ, const double weight=1.0) |
| simple function to fill AIDA::IHistogram3D objects | |
| GAUDI_API void | fill (AIDA::IProfile1D *histo, const double valueX, const double valueY, const double weight=1.0) |
| simple function to fill AIDA::IProfile1D objects | |
| GAUDI_API void | fill (AIDA::IProfile2D *histo, const double valueX, const double valueY, const double valueZ, const double weight=1.0) |
| simple function to fill AIDA::IProfile2D objects | |
| GAUDI_API std::string | htitle (const AIDA::IBaseHistogram *histo, const std::string &title="") |
| get the title | |
| GAUDI_API std::string | htitle (const AIDA::IHistogram *histo, const std::string &title="") |
| get the title | |
| GAUDI_API std::string | htitle (const AIDA::IHistogram1D *histo, const std::string &title="") |
| get the title | |
| GAUDI_API std::string | htitle (const AIDA::IHistogram2D *histo, const std::string &title="") |
| get the title | |
| GAUDI_API std::string | htitle (const AIDA::IHistogram3D *histo, const std::string &title="") |
| get the title | |
| GAUDI_API std::string | htitle (const AIDA::IProfile *histo, const std::string &title="") |
| get the title | |
| GAUDI_API std::string | htitle (const AIDA::IProfile1D *histo, const std::string &title="") |
| get the title | |
| GAUDI_API std::string | htitle (const AIDA::IProfile2D *histo, const std::string &title="") |
| get the title | |
| GAUDI_API AIDA::IBaseHistogram * | toBase (AIDA::IHistogram1D *histo) |
| GAUDI_API AIDA::IBaseHistogram * | toBase (AIDA::IHistogram2D *histo) |
| GAUDI_API AIDA::IBaseHistogram * | toBase (AIDA::IHistogram3D *histo) |
| GAUDI_API AIDA::IBaseHistogram * | toBase (AIDA::IProfile1D *histo) |
| GAUDI_API AIDA::IBaseHistogram * | toBase (AIDA::IProfile2D *histo) |
| GAUDI_API std::ostream & | histoDump (const AIDA::IHistogram1D *histo, std::ostream &stream, const std::size_t width=80, const std::size_t height=50, const bool errors=false) |
| dump the text representation of the histogram | |
| GAUDI_API std::string | histoDump (const AIDA::IHistogram1D *histo, const std::size_t width=80, const std::size_t height=50, const bool errors=false) |
| dump the text representation of the histogram | |
| GAUDI_API std::ostream & | histoDump (const AIDA::IProfile1D *histo, std::ostream &stream, const std::size_t width=80, const std::size_t height=50, const bool spread=true) |
| dump the text representation of 1D-profile | |
| GAUDI_API std::string | histoDump (const AIDA::IProfile1D *histo, const std::size_t width=80, const std::size_t height=50, const bool spread=true) |
| dump the text representation of the 1D-profile | |
| GAUDI_API std::ostream & | histoDump (const TProfile *histo, std::ostream &stream, const std::size_t width=80, const std::size_t height=50) |
| dump the text representation of the Profile | |
| GAUDI_API std::string | histoDump (const TProfile *histo, const std::size_t width=80, const std::size_t height=50) |
| dump the text representation of the histogram | |
| GAUDI_API std::ostream & | histoDump (const TH1 *histo, std::ostream &stream, const std::size_t width=80, const std::size_t height=50, const bool errors=false) |
| dump the text representation of the histogram | |
| GAUDI_API std::string | histoDump (const TH1 *histo, const std::size_t width=80, const std::size_t height=50, const bool errors=false) |
| dump the text representation of the histogram | |
| GAUDI_API std::string | path (const AIDA::IBaseHistogram *aida) |
| get the path in THS for AIDA histogram | |
| GAUDI_API std::string | format (const AIDA::IHistogram1D *histo, const std::string &fmt) |
| Make the string representation of the historgam according to the specified format. | |
| GAUDI_API std::string | format (const AIDA::IHistogram1D *histo, const std::string &ID, const std::string &fmt1, const std::string &fmt2) |
| format a full row in table, including ID, label, path or any other "extra" identifier in string form | |
| template<class HISTO, class STREAM, class TERMINATOR> | |
| STREAM & | printList (HISTO first, HISTO last, const std::string &fmt, STREAM &stream, TERMINATOR term) |
| print the simple sequence (list-like) of histograms as table | |
| template<class LIST, class STREAM, class TERMINATOR> | |
| STREAM & | printList (const LIST &histos, const std::string &fmt, STREAM &stream, TERMINATOR term) |
| print the simple container of histograms as table | |
| template<class HISTO, class STREAM, class TERMINATOR> | |
| STREAM & | printMap (HISTO begin, HISTO end, const std::string &fmt1, const std::string &fmt2, STREAM &stream, TERMINATOR term) |
| Print the "associative sequence" (e.g. | |
| template<class MAP, class STREAM, class TERMINATOR> | |
| STREAM & | printMap (const MAP &histos, const std::string &fmt1, const std::string &fmt2, STREAM &stream, TERMINATOR term) |
| Print the "associative sequence" (e.g. | |
| GAUDI_API std::string | format (const std::string &val1, const std::string &val2, const std::string &fmt) |
| helper method to merge the headers for short format table | |
| void Gaudi::Utils::Histos::fill | ( | AIDA::IProfile2D * | histo, | |
| const double | valueX, | |||
| const double | valueY, | |||
| const double | valueZ, | |||
| const double | weight = 1.0 | |||
| ) |
simple function to fill AIDA::IProfile2D objects
| histo | pointer to the histogram | |
| valueX | value to be added to the histogram | |
| valueY | value to be added to the histogram | |
| valueZ | value to be added to the histogram | |
| weight | the "weight" assciated with this entry |
Definition at line 115 of file Fill.cpp.
00120 { 00121 if ( 0 != histo ) { histo -> fill ( valueX , valueY , valueZ , weight ) ; } 00122 }
| void Gaudi::Utils::Histos::fill | ( | AIDA::IProfile1D * | histo, | |
| const double | valueX, | |||
| const double | valueY, | |||
| const double | weight = 1.0 | |||
| ) |
simple function to fill AIDA::IProfile1D objects
| histo | pointer to the histogram | |
| valueX | value to be added to the histogram | |
| valueY | value to be added to the histogram | |
| weight | the "weight" assciated with this entry |
Definition at line 95 of file Fill.cpp.
00099 { 00100 if ( 0 != histo ) { histo -> fill ( valueX , valueY , weight ) ; } 00101 }
| void Gaudi::Utils::Histos::fill | ( | AIDA::IHistogram3D * | histo, | |
| const double | valueX, | |||
| const double | valueY, | |||
| const double | valueZ, | |||
| const double | weight = 1.0 | |||
| ) |
simple function to fill AIDA::IHistogram3D objects
| histo | pointer to the histogram | |
| valueX | value to be added to the histogram | |
| valueY | value to be added to the histogram | |
| valueZ | value to be added to the histogram | |
| weight | the "weight" assciated with this entry |
Definition at line 75 of file Fill.cpp.
00080 { 00081 if ( 0 != histo ) { histo -> fill ( valueX , valueY , valueZ , weight ) ; } 00082 }
| void Gaudi::Utils::Histos::fill | ( | AIDA::IHistogram2D * | histo, | |
| const double | valueX, | |||
| const double | valueY, | |||
| const double | weight = 1.0 | |||
| ) |
simple function to fill AIDA::IHistogram2D objects
| histo | pointer to the histogram | |
| valueX | value to be added to the histogram | |
| valueY | value to be added to the histogram | |
| weight | the "weight" assciated with this entry |
Definition at line 55 of file Fill.cpp.
00059 { 00060 if ( 0 != histo ) { histo -> fill ( valueX , valueY , weight ) ; } 00061 }
| void Gaudi::Utils::Histos::fill | ( | AIDA::IHistogram1D * | histo, | |
| const double | value, | |||
| const double | weight = 1.0 | |||
| ) |
| std::string Gaudi::Utils::Histos::format | ( | const std::string & | val1, | |
| const std::string & | val2, | |||
| const std::string & | fmt | |||
| ) |
helper method to merge the headers for short format table
Definition at line 272 of file HistoTableFormat.cpp.
00275 { 00276 using namespace boost::io ; 00277 boost::format _fmt ( fmt ) ; 00278 // allow various number of arguments 00279 _fmt.exceptions ( all_error_bits ^ ( too_many_args_bit | too_few_args_bit ) ) ; 00280 // 00281 _fmt 00282 % val1 // format ID 00283 % val2 ; // format the histogram 00284 // 00285 return _fmt.str() ; 00286 }
| std::string Gaudi::Utils::Histos::format | ( | const AIDA::IHistogram1D * | histo, | |
| const std::string & | ID, | |||
| const std::string & | fmt1, | |||
| const std::string & | fmt2 | |||
| ) |
format a full row in table, including ID, label, path or any other "extra" identifier in string form
using namespace Gaudi::Utils::Histos const AIDA::IHistogram1D* histo = ... ; // define short format const std::string fmt1 = " |%1$-30.30s %|33t| %2" ; // define format for the histogram const std::string fmt2 = ... ; info () << format ( "My Histo" , histo , fmt1 , fmt2 ) << endmsg ;
| histo | pointer to the histogram | |
| ID | historgam ID, title, label or other extra information | |
| fmt1 | "short" format used for the table | |
| fmt2 | format used for the histogram printout |
Definition at line 252 of file HistoTableFormat.cpp.
00256 { 00257 using namespace boost::io ; 00258 boost::format _fmt ( fmt1 ) ; 00259 // allow various number of arguments 00260 _fmt.exceptions ( all_error_bits ^ ( too_many_args_bit | too_few_args_bit ) ) ; 00261 // 00262 _fmt 00263 % ID // format ID 00264 % format ( histo , fmt2 ) ; // format the histogram 00265 // 00266 return _fmt.str() ; 00267 }
| std::string Gaudi::Utils::Histos::format | ( | const AIDA::IHistogram1D * | histo, | |
| const std::string & | fmt | |||
| ) |
Make the string representation of the historgam according to the specified format.
The method could be used to access/print various quantities
using namespace Gaudi::Utils::Histos ; const AIDA::IHistogram1D* histo = ... ; // print title in a free format: std::cout << format ( histo , "%2%" ) << std::endl ; // print the path in HTS in a free format: std::cout << format ( histo , " path in HTS: %1% " ) << std::endl ; // print the formatted nEntries/Overflow/Underflow: std::cout << format ( histo , " #nEntries/Overflow/Underflow=%3%/%4%/%5%" ) << std::endl ; // print the formatted Mean+-ErrorMean: std::cout << format ( histo , " Mean+-Error=(%8%+-%9%)" ) << std::endl ; // print the skewness and kurtosis: std::cout << format ( histo , " Skewness/Kurtosis=%12%/%14% " ) << std::endl ;
| histo | reference to the histogram | |
| fmt | the printout format |
Definition at line 203 of file HistoTableFormat.cpp.
00205 { 00206 if ( 0 == histo ) { return "<NULL>" ; } 00207 using namespace Gaudi::Utils ; 00208 using namespace boost::io ; 00209 boost::format _fmt ( fmt ) ; 00210 // allow various number of arguments 00211 _fmt.exceptions ( all_error_bits ^ ( too_many_args_bit | too_few_args_bit ) ) ; 00212 00213 _fmt 00214 % ( "\"" + path ( histo ) + "\"" ) // 1) histogram path 00215 % ( "\"" + histo -> title () + "\"" ) // 2) title 00216 % histo -> allEntries () // 3) # entries 00217 % histo -> binEntries ( AIDA::IAxis::UNDERFLOW_BIN ) // 4) # underflow 00218 % histo -> binEntries ( AIDA::IAxis::OVERFLOW_BIN ) // 5) # overflow 00219 % histo -> equivalentBinEntries () // 6) equivalent entries 00220 % histo -> sumBinHeights () // 7) integral 00221 % histo -> mean () // 8) mean value 00222 % HistoStats:: meanErr ( histo ) // 9) error in mean 00223 % histo -> rms () // 10) rms 00224 % HistoStats::rmsErr ( histo ) // 11) error in rms 00225 % HistoStats::skewness ( histo ) // 12) skewness 00226 % HistoStats::skewnessErr ( histo ) // 13) error in skewness 00227 % HistoStats::kurtosis ( histo ) // 14) kurtosis 00228 % HistoStats::kurtosisErr ( histo ) // 15) error in kurtosis 00229 // 00230 % histo -> sumAllBinHeights () // 16) full integral (in and out range) 00231 % HistoStats::sumAllBinHeightErr ( histo ) // 17) error on 16 00232 % HistoStats::sumBinHeightErr ( histo ) // 18) error on 7 00233 // 00234 % ( 100 * HistoStats::underflowEntriesFrac ( histo ) ) // 19) fraction of underflow entries 00235 % ( 100 * HistoStats::underflowEntriesFracErr ( histo ) ) // 20) error on 19 00236 % ( 100 * HistoStats::overflowEntriesFrac ( histo ) ) // 21) fraction of overflow entries 00237 % ( 100 * HistoStats::overflowEntriesFracErr ( histo ) ) // 22) error on 21 00238 // 00239 % HistoStats::underflowIntegralFrac ( histo ) // 23) fraction of underflow integral 00240 % HistoStats::underflowIntegralFracErr ( histo ) // 24) error on 23 00241 % HistoStats::overflowIntegralFrac ( histo ) // 25) fraction of overflow intergal 00242 % HistoStats::overflowIntegralFracErr ( histo ) ; // 26) error on 25 00243 // 00244 return _fmt.str() ; 00245 }
| std::string Gaudi::Utils::Histos::histoDump | ( | const TH1 * | histo, | |
| const std::size_t | width = 80, |
|||
| const std::size_t | height = 50, |
|||
| const bool | errors = false | |||
| ) |
dump the text representation of the histogram
| histo | (INPUT) the histogram | |
| width | (INPUT) the maximal column width | |
| height | (INPUT) the propsoed coulmn height | |
| erorrs | (INPUT) print/plot errors |
Definition at line 942 of file HistoDump.cpp.
00946 { 00947 std::ostringstream stream ; 00948 histoDump ( histo , stream , width , height , errors ); 00949 return stream.str() ; 00950 }
| std::ostream & Gaudi::Utils::Histos::histoDump | ( | const TH1 * | histo, | |
| std::ostream & | stream, | |||
| const std::size_t | width = 80, |
|||
| const std::size_t | height = 50, |
|||
| const bool | errors = false | |||
| ) |
dump the text representation of the histogram
| histo | (INPUT) the histogram | |
| stream | (OUTUT) the stream | |
| width | (INPUT) the maximal column width | |
| height | (INPUT) the proposed coulmn height | |
| errors | (INPUT) print/plot errors |
Definition at line 814 of file HistoDump.cpp.
00819 { 00820 const TProfile* profile = dynamic_cast<const TProfile*> ( histo ) ; 00821 if ( 0 != profile ) 00822 { return histoDump ( profile , stream , width , height ) ; } 00823 // 00824 stream << std::endl ; 00825 if ( 0 == histo ) { return stream ; } // RETURN 00826 Histo hist ; 00827 StatusCode sc = _getHisto ( histo , hist ) ; 00828 if ( sc.isFailure() ) { return stream ; } // RETURN 00829 // 00830 stream 00831 << boost::format ( " Histo Name : \"%s\"") 00832 % histo -> GetName () 00833 << std::endl 00834 << boost::format ( " Histo Title : \"%s\"") 00835 % histo -> GetTitle () 00836 << std::endl 00837 << std::endl ; 00838 // 00839 stream 00840 << boost::format ( " Mean : %11.5g +- %-10.4g ") 00841 % histo -> GetMean () 00842 % histo -> GetMeanError () 00843 << std::endl 00844 << boost::format ( " Rms : %11.5g +- %-10.4g ") 00845 % histo -> GetRMS () 00846 % histo -> GetRMSError () 00847 << std::endl 00848 << boost::format ( " Skewness : %11.5g ") 00849 % histo -> GetSkewness () 00850 << std::endl 00851 << boost::format ( " Kurtosis : %11.5g ") 00852 % histo -> GetKurtosis () 00853 << std::endl 00854 << std::endl ; 00855 // 00856 stream 00857 << boost::format ( " Entries :\n | %=11s | %=11s | %=11s | %=11s | %=11s |") 00858 % "All" 00859 % "Underflow" 00860 % "Overflow" 00861 % "#Equivalent" 00862 % "Integral" 00863 << std::endl 00864 << boost::format ( " | %=11.5g | %=11.5g | %=11.5g | %=11.5g | %=11.5g |") 00865 % histo -> GetEntries () 00866 % histo -> GetBinContent ( 0 ) 00867 % histo -> GetBinContent ( histo->GetNbinsX() + 1 ) 00868 % histo -> GetEffectiveEntries () 00869 % histo -> Integral () 00870 << std::endl 00871 << std::endl ; 00872 // 00873 return dumpText ( hist , width , height , errors , stream ) ; 00874 }
| std::string Gaudi::Utils::Histos::histoDump | ( | const TProfile * | histo, | |
| const std::size_t | width = 80, |
|||
| const std::size_t | height = 50 | |||
| ) |
dump the text representation of the histogram
| histo | (INPUT) the histogram | |
| width | (INPUT) the maximal column width | |
| height | (INPUT) the propsoed coulmn height | |
| erorrs | (INPUT) print/plot errors |
Definition at line 962 of file HistoDump.cpp.
00965 { 00966 std::ostringstream stream ; 00967 histoDump ( histo , stream , width , height ); 00968 return stream.str() ; 00969 }
| std::ostream & Gaudi::Utils::Histos::histoDump | ( | const TProfile * | histo, | |
| std::ostream & | stream, | |||
| const std::size_t | width = 80, |
|||
| const std::size_t | height = 50 | |||
| ) |
dump the text representation of the Profile
| histo | (INPUT) the histogram | |
| stream | (OUTUT) the stream | |
| width | (INPUT) the maximal column width | |
| height | (INPUT) the proposed coulmn height | |
| spread | (INPUT) print/plot rms versus erorr |
Definition at line 887 of file HistoDump.cpp.
00891 { 00892 stream << std::endl ; 00893 if ( 0 == histo ) { return stream ; } // RETURN 00894 Histo hist ; 00895 StatusCode sc = _getHisto ( histo , hist , true ) ; 00896 if ( sc.isFailure() ) { return stream ; } // RETURN 00897 // 00898 stream 00899 << boost::format ( " Profile Name : \"%s\"") 00900 % histo -> GetName () 00901 << std::endl 00902 << boost::format ( " Profile Title : \"%s\"") 00903 % histo -> GetTitle () 00904 << std::endl 00905 << std::endl ; 00906 // 00907 stream 00908 << boost::format ( " Mean : %11.5g ") % histo -> GetMean () 00909 << std::endl 00910 << boost::format ( " Rms : %11.5g ") % histo -> GetRMS () 00911 << std::endl 00912 << std::endl ; 00913 // 00914 stream 00915 << boost::format ( " Entries :\n | %=11s | %=11s | %=11s | %=11s |") 00916 % "All" 00917 % "Underflow" 00918 % "Overflow" 00919 % "Integral" 00920 << std::endl 00921 << boost::format ( " | %=11.5g | %=11.5g | %=11.5g | %=11.5g |") 00922 % histo -> GetEntries () 00923 % histo -> GetBinContent ( 0 ) 00924 % histo -> GetBinContent ( histo->GetNbinsX() + 1 ) 00925 % histo -> Integral () 00926 << std::endl 00927 << std::endl ; 00928 // 00929 return dumpText ( hist , width , height , true , stream ) ; 00930 }
| std::string Gaudi::Utils::Histos::histoDump | ( | const AIDA::IProfile1D * | histo, | |
| const std::size_t | width = 80, |
|||
| const std::size_t | height = 50, |
|||
| const bool | spread = true | |||
| ) |
dump the text representation of the 1D-profile
| histo | (INPUT) the histogram | |
| width | (INPUT) the maximal column width | |
| height | (INPUT) the proposed column height | |
| spread | (INPUT) print/plto spread vs rms |
Definition at line 793 of file HistoDump.cpp.
00797 { 00798 std::ostringstream stream ; 00799 histoDump ( histo , stream , width , height , spread ); 00800 return stream.str() ; 00801 }
| std::ostream & Gaudi::Utils::Histos::histoDump | ( | const AIDA::IProfile1D * | histo, | |
| std::ostream & | stream, | |||
| const std::size_t | width = 80, |
|||
| const std::size_t | height = 50, |
|||
| const bool | spread = true | |||
| ) |
dump the text representation of 1D-profile
| histo | (INPUT) the 1D-profile | |
| stream | (OUTUT) the stream | |
| width | (INPUT) the maximal column width | |
| height | (INPUT) the proposed column height | |
| spread | (INPUT) print/plot spread/rms ? |
Definition at line 718 of file HistoDump.cpp.
00723 { 00724 stream << std::endl ; 00725 if ( 0 == histo ) { return stream ; } // RETURN 00726 Histo hist ; 00727 StatusCode sc = _getHisto ( histo , hist , spread ) ; 00728 if ( sc.isFailure() ) { return stream ; } // RETURN 00729 // 00730 stream 00731 << boost::format ( " Histo TES : \"%s\"") % path ( histo ) 00732 << std::endl 00733 << boost::format ( " Histo Title : \"%s\"") % histo->title() 00734 << std::endl 00735 << std::endl ; 00736 // 00737 stream 00738 << boost::format ( " Mean : %11.5g ") % histo->mean() 00739 << std::endl 00740 << boost::format ( " Rms : %11.5g ") % histo->rms () 00741 << std::endl 00742 << std::endl ; 00743 // 00744 stream 00745 << boost::format ( " Entries :\n | %=9s | %=9s | %=9s | %9s | %=11s | %=11s |") 00746 % "All" 00747 % "In Range" 00748 % "Underflow" 00749 % "Overflow" 00750 // % "#Equivalent" 00751 % "Integral" 00752 % "Total" 00753 << std::endl 00754 << boost::format ( " | %=9d | %=9d | %=9d | %=9d | %=11.5g | %=11.5g |") 00755 % histo -> allEntries () 00756 % histo -> entries () 00757 % histo -> binEntries ( AIDA::IAxis::UNDERFLOW_BIN ) 00758 % histo -> binEntries ( AIDA::IAxis::OVERFLOW_BIN ) 00759 // % histo -> equivalentBinEntries () 00760 % histo -> sumBinHeights () 00761 % histo -> sumAllBinHeights () 00762 << std::endl 00763 << std::endl ; 00764 // 00765 const AIDA::IAnnotation& a = histo->annotation () ; 00766 if ( 0 != a.size() ) 00767 { 00768 stream << " Annotation" << std::endl ; 00769 for ( int i = 0 ; i < a.size() ; ++i ) 00770 { 00771 stream 00772 << boost::format ( " | %-25.25s : %-45.45s | ") 00773 % a.key ( i ) 00774 % a.value ( i ) 00775 << std::endl ; 00776 } 00777 stream << std::endl ; 00778 } 00779 // 00780 return dumpText ( hist , width , height , true , stream ) ; 00781 }
| std::string Gaudi::Utils::Histos::histoDump | ( | const AIDA::IHistogram1D * | histo, | |
| const std::size_t | width = 80, |
|||
| const std::size_t | height = 50, |
|||
| const bool | errors = false | |||
| ) |
dump the text representation of the histogram
| histo | (INPUT) the histogram | |
| width | (INPUT) the maximal column width | |
| height | (INPUT) the proposed column height | |
| erorrs | (INPUT) print/plot errors |
Definition at line 696 of file HistoDump.cpp.
00700 { 00701 std::ostringstream stream ; 00702 histoDump ( histo , stream , width , height , errors ); 00703 return stream.str() ; 00704 }
| std::ostream & Gaudi::Utils::Histos::histoDump | ( | const AIDA::IHistogram1D * | histo, | |
| std::ostream & | stream, | |||
| const std::size_t | width = 80, |
|||
| const std::size_t | height = 50, |
|||
| const bool | errors = false | |||
| ) |
dump the text representation of the histogram
| histo | (INPUT) the histogram | |
| stream | (OUTUT) the stream | |
| width | (INPUT) the maximal column width | |
| height | (INPUT) the proposed column height | |
| errors | (INPUT) print/plot errors |
Definition at line 607 of file HistoDump.cpp.
00612 { 00613 stream << std::endl ; 00614 if ( 0 == histo ) { return stream ; } // RETURN 00615 Histo hist ; 00616 StatusCode sc = _getHisto ( histo , hist ) ; 00617 if ( sc.isFailure() ) { return stream ; } // RETURN 00618 // 00619 stream 00620 << boost::format ( " Histo TES : \"%s\"") % path ( histo ) 00621 << std::endl 00622 << boost::format ( " Histo Title : \"%s\"") % histo->title() 00623 << std::endl 00624 << std::endl ; 00625 // 00626 stream 00627 << boost::format ( " Mean : %11.5g +- %-10.4g ") 00628 % Gaudi::Utils::HistoStats::mean ( histo ) 00629 % Gaudi::Utils::HistoStats::meanErr ( histo ) 00630 << std::endl 00631 << boost::format ( " Rms : %11.5g +- %-10.4g ") 00632 % Gaudi::Utils::HistoStats::rms ( histo ) 00633 % Gaudi::Utils::HistoStats::rmsErr ( histo ) 00634 << std::endl 00635 << boost::format ( " Skewness : %11.5g +- %-10.4g ") 00636 % Gaudi::Utils::HistoStats::skewness ( histo ) 00637 % Gaudi::Utils::HistoStats::skewnessErr ( histo ) 00638 << std::endl 00639 << boost::format ( " Kurtosis : %11.5g +- %-10.4g ") 00640 % Gaudi::Utils::HistoStats::kurtosis ( histo ) 00641 % Gaudi::Utils::HistoStats::kurtosisErr ( histo ) 00642 << std::endl 00643 << std::endl ; 00644 // 00645 stream 00646 << boost::format ( " Entries :\n | %=9s | %=9s | %=9s | %9s | %=11s | %=11s | %=11s |") 00647 % "All" 00648 % "In Range" 00649 % "Underflow" 00650 % "Overflow" 00651 % "#Equivalent" 00652 % "Integral" 00653 % "Total" 00654 << std::endl 00655 << boost::format ( " | %=9d | %=9d | %=9d | %=9d | %=11.5g | %=11.5g | %=11.5g |") 00656 % histo -> allEntries () 00657 % histo -> entries () 00658 % histo -> binEntries ( AIDA::IAxis::UNDERFLOW_BIN ) 00659 % histo -> binEntries ( AIDA::IAxis::OVERFLOW_BIN ) 00660 % histo -> equivalentBinEntries () 00661 % histo -> sumBinHeights () 00662 % histo -> sumAllBinHeights () 00663 << std::endl 00664 << std::endl ; 00665 // 00666 const AIDA::IAnnotation& a = histo->annotation () ; 00667 if ( 0 != a.size() ) 00668 { 00669 stream << " Annotation" << std::endl ; 00670 for ( int i = 0 ; i < a.size() ; ++i ) 00671 { 00672 stream 00673 << boost::format ( " | %-25.25s : %-45.45s | ") 00674 % a.key ( i ) 00675 % a.value ( i ) 00676 << std::endl ; 00677 } 00678 stream << std::endl ; 00679 } 00680 // 00681 return dumpText ( hist , width , height , errors , stream ) ; 00682 }
| std::string Gaudi::Utils::Histos::htitle | ( | const AIDA::IProfile2D * | histo, | |
| const std::string & | title = "" | |||
| ) |
| std::string Gaudi::Utils::Histos::htitle | ( | const AIDA::IProfile1D * | histo, | |
| const std::string & | title = "" | |||
| ) |
| std::string Gaudi::Utils::Histos::htitle | ( | const AIDA::IProfile * | histo, | |
| const std::string & | title = "" | |||
| ) |
| std::string Gaudi::Utils::Histos::htitle | ( | const AIDA::IHistogram3D * | histo, | |
| const std::string & | title = "" | |||
| ) |
| std::string Gaudi::Utils::Histos::htitle | ( | const AIDA::IHistogram2D * | histo, | |
| const std::string & | title = "" | |||
| ) |
| std::string Gaudi::Utils::Histos::htitle | ( | const AIDA::IHistogram1D * | histo, | |
| const std::string & | title = "" | |||
| ) |
| std::string Gaudi::Utils::Histos::htitle | ( | const AIDA::IHistogram * | histo, | |
| const std::string & | title = "" | |||
| ) |
| std::string Gaudi::Utils::Histos::htitle | ( | const AIDA::IBaseHistogram * | histo, | |
| const std::string & | title = "" | |||
| ) |
| std::string Gaudi::Utils::Histos::path | ( | const AIDA::IBaseHistogram * | aida | ) |
get the path in THS for AIDA histogram
Definition at line 185 of file HistoTableFormat.cpp.
00186 { 00187 if ( 0 == aida ) { return "" ; } // RETURN 00188 const DataObject* object = dynamic_cast<const DataObject*>( aida ) ; 00189 if ( 0 == object ) { return "" ; } // RETURN 00190 IRegistry* registry = object->registry() ; 00191 if ( 0 == registry ) { return "" ; } // RETURN 00192 std::string _path = registry->identifier() ; 00193 std::string::size_type n = _path.find("/stat/") ; 00194 if ( 0 == n ) { return std::string(_path,6) ; } // RETURN 00195 return _path ; // RETURN 00196 }
| STREAM& Gaudi::Utils::Histos::printList | ( | const LIST & | histos, | |
| const std::string & | fmt, | |||
| STREAM & | stream, | |||
| TERMINATOR | term | |||
| ) | [inline] |
print the simple container of histograms as table
using namespace Gaudi::Utils::Histos ; SEQUENCE histos = ... ; // print a table with three columns: path, title and #entries printList ( histos , " | %1$|-40.40s | %2$-30.30s | %3$=7d | " , std::cout , '\n' ) ;
| histos | the sequence of histograms | |
| stream | the stream to be used for printout | |
| term | the terminmator for the stream | |
| fmt | the format to be used |
Definition at line 269 of file HistoTableFormat.h.
00273 { 00274 return printList 00275 ( histos.begin () , histos.end () , fmt , stream , term ) ; 00276 }
| STREAM& Gaudi::Utils::Histos::printList | ( | HISTO | first, | |
| HISTO | last, | |||
| const std::string & | fmt, | |||
| STREAM & | stream, | |||
| TERMINATOR | term | |||
| ) | [inline] |
print the simple sequence (list-like) of histograms as table
SEQUENCE histos = ... ; // print a table with three colums path, title and #entries Gaudi::Utils::Histos::printList ( histos.begin () , histos.end () , " | %1$|-40.40s | %2$-30.30s | %3$=7d | " , std::cout , '\n' ) ;
| first | begin-iterator for the sequence | |
| last | end-iterator for the sequence | |
| stream | the stream to be used for printout | |
| term | the terminmator for the stream | |
| fmt | the format to be used |
Definition at line 233 of file HistoTableFormat.h.
00238 { 00239 for ( ; first != last ; ++first ) 00240 { stream << format ( *first , fmt ) << term ; } // print table rows 00241 return stream ; // RETURN 00242 }
| STREAM& Gaudi::Utils::Histos::printMap | ( | const MAP & | histos, | |
| const std::string & | fmt1, | |||
| const std::string & | fmt2, | |||
| STREAM & | stream, | |||
| TERMINATOR | term | |||
| ) | [inline] |
Print the "associative sequence" (e.g.
part of std:map) of histograms as table:
using namespace Gaudi::Utils::Histos ; const std::map<std::string,AIDA::IHistogram1D*>& m = ... ; printMap ( m , "| %1$-10.10s | %2% " , // short format Gaudi::Utils::Histos::Formats::histoFormatOnly , always() , endmsg ) ;
Print only mean and rms:
using namespace Gaudi::Utils::Histos ; const std::map<GaudiAlg::ID,AIDA::IHistogram1D*>& m = ... ; printMap ( m , "| %1$-10.10s | %2% " , // short format " %8$10.5g+-%10$-10.5g|", // mean+-rms always() , endmsg ) ;
| begin | 'begin'-iterator for the mapping sequence | |
| end | 'end'-iterator for the mapping sequence | |
| fmt1 | 'short' format for the table printout | |
| fmt3 | format for the printout of the histogram | |
| stream | the stream for printout | |
| term | stream terminator |
Definition at line 385 of file HistoTableFormat.h.
00390 { 00391 return printMap 00392 ( histos.begin () , histos.end() , fmt1 , fmt2 , stream , term ) ; 00393 }
| STREAM& Gaudi::Utils::Histos::printMap | ( | HISTO | begin, | |
| HISTO | end, | |||
| const std::string & | fmt1, | |||
| const std::string & | fmt2, | |||
| STREAM & | stream, | |||
| TERMINATOR | term | |||
| ) | [inline] |
Print the "associative sequence" (e.g.
part of std:map) of histograms as table:
using namespace Gaudi::Utils::Histos ; const std::map<std::string,AIDA::IHistogram1D*>& m = ... ; printMap ( m.begin () , m.end () , "| %1$-10.10s | %2% " , // short format Gaudi::Utils::Histos::Formats::histoFormatOnly , always() , endmsg ) ;
Print only mean and rms:
using namespace Gaudi::Utils::Histos ; const std::map<GaudiAlg::ID,AIDA::IHistogram1D*>& m = ... ; printMap ( m.begin () , m.end () , "| %1$-10.10s | %2% " , // short format " %8$10.5g+-%10$-10.5g|", // mean+-rms always() , endmsg ) ;
| begin | 'begin'-iterator for the mapping sequence | |
| end | 'end'-iterator for the mapping sequence | |
| fmt1 | 'short' format for the table printout | |
| fmt3 | format for the printout of the histogram | |
| stream | the stream for printout | |
| term | stream terminator |
Definition at line 324 of file HistoTableFormat.h.
00330 { 00331 for ( ; begin != end ; ++begin ) 00332 { 00333 stream << format 00334 ( begin -> second , // the histogram 00335 begin -> first , // the key 00336 fmt1 , fmt2 ) << term ; 00337 } 00338 return stream ; 00339 }
| AIDA::IBaseHistogram * Gaudi::Utils::Histos::toBase | ( | AIDA::IProfile2D * | histo | ) |
| AIDA::IBaseHistogram * Gaudi::Utils::Histos::toBase | ( | AIDA::IProfile1D * | histo | ) |
| AIDA::IBaseHistogram * Gaudi::Utils::Histos::toBase | ( | AIDA::IHistogram3D * | histo | ) |
| AIDA::IBaseHistogram * Gaudi::Utils::Histos::toBase | ( | AIDA::IHistogram2D * | histo | ) |
| AIDA::IBaseHistogram * Gaudi::Utils::Histos::toBase | ( | AIDA::IHistogram1D * | histo | ) |