|
Gaudi Framework, version v21r9 |
| Home | Generated: 3 May 2010 |
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.
| 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.
| 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.
| 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.
| 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 950 of file HistoDump.cpp.
00954 { 00955 std::ostringstream stream ; 00956 histoDump_ ( histo , stream , width , height , errors ); 00957 return stream.str() ; 00958 }
| 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 970 of file HistoDump.cpp.
00973 { 00974 std::ostringstream stream ; 00975 histoDump_ ( histo , stream , width , height ); 00976 return stream.str() ; 00977 }
| 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 801 of file HistoDump.cpp.
00805 { 00806 std::ostringstream stream ; 00807 histoDump_ ( histo , stream , width , height , spread ); 00808 return stream.str() ; 00809 }
| 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 704 of file HistoDump.cpp.
00708 { 00709 std::ostringstream stream ; 00710 histoDump_ ( histo , stream , width , height , errors ); 00711 return stream.str() ; 00712 }
| 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 822 of file HistoDump.cpp.
00827 { 00828 const TProfile* profile = dynamic_cast<const TProfile*> ( histo ) ; 00829 if ( 0 != profile ) 00830 { return histoDump_ ( profile , stream , width , height ) ; } 00831 // 00832 stream << std::endl ; 00833 if ( 0 == histo ) { return stream ; } // RETURN 00834 Histo hist ; 00835 StatusCode sc = _getHisto ( histo , hist ) ; 00836 if ( sc.isFailure() ) { return stream ; } // RETURN 00837 // 00838 stream 00839 << boost::format ( " Histo Name : \"%s\"") 00840 % histo -> GetName () 00841 << std::endl 00842 << boost::format ( " Histo Title : \"%s\"") 00843 % histo -> GetTitle () 00844 << std::endl 00845 << std::endl ; 00846 // 00847 stream 00848 << boost::format ( " Mean : %11.5g +- %-10.4g ") 00849 % histo -> GetMean () 00850 % histo -> GetMeanError () 00851 << std::endl 00852 << boost::format ( " Rms : %11.5g +- %-10.4g ") 00853 % histo -> GetRMS () 00854 % histo -> GetRMSError () 00855 << std::endl 00856 << boost::format ( " Skewness : %11.5g ") 00857 % histo -> GetSkewness () 00858 << std::endl 00859 << boost::format ( " Kurtosis : %11.5g ") 00860 % histo -> GetKurtosis () 00861 << std::endl 00862 << std::endl ; 00863 // 00864 stream 00865 << boost::format ( " Entries :\n | %=11s | %=11s | %=11s | %=11s | %=11s |") 00866 % "All" 00867 % "Underflow" 00868 % "Overflow" 00869 % "#Equivalent" 00870 % "Integral" 00871 << std::endl 00872 << boost::format ( " | %=11.5g | %=11.5g | %=11.5g | %=11.5g | %=11.5g |") 00873 % histo -> GetEntries () 00874 % histo -> GetBinContent ( 0 ) 00875 % histo -> GetBinContent ( histo->GetNbinsX() + 1 ) 00876 % histo -> GetEffectiveEntries () 00877 % histo -> Integral () 00878 << std::endl 00879 << std::endl ; 00880 // 00881 return dumpText ( hist , width , height , errors , stream ) ; 00882 }
| 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 895 of file HistoDump.cpp.
00899 { 00900 stream << std::endl ; 00901 if ( 0 == histo ) { return stream ; } // RETURN 00902 Histo hist ; 00903 StatusCode sc = _getHisto ( histo , hist , true ) ; 00904 if ( sc.isFailure() ) { return stream ; } // RETURN 00905 // 00906 stream 00907 << boost::format ( " Profile Name : \"%s\"") 00908 % histo -> GetName () 00909 << std::endl 00910 << boost::format ( " Profile Title : \"%s\"") 00911 % histo -> GetTitle () 00912 << std::endl 00913 << std::endl ; 00914 // 00915 stream 00916 << boost::format ( " Mean : %11.5g ") % histo -> GetMean () 00917 << std::endl 00918 << boost::format ( " Rms : %11.5g ") % histo -> GetRMS () 00919 << std::endl 00920 << std::endl ; 00921 // 00922 stream 00923 << boost::format ( " Entries :\n | %=11s | %=11s | %=11s | %=11s |") 00924 % "All" 00925 % "Underflow" 00926 % "Overflow" 00927 % "Integral" 00928 << std::endl 00929 << boost::format ( " | %=11.5g | %=11.5g | %=11.5g | %=11.5g |") 00930 % histo -> GetEntries () 00931 % histo -> GetBinContent ( 0 ) 00932 % histo -> GetBinContent ( histo->GetNbinsX() + 1 ) 00933 % histo -> Integral () 00934 << std::endl 00935 << std::endl ; 00936 // 00937 return dumpText ( hist , width , height , true , stream ) ; 00938 }
| 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 726 of file HistoDump.cpp.
00731 { 00732 stream << std::endl ; 00733 if ( 0 == histo ) { return stream ; } // RETURN 00734 Histo hist ; 00735 StatusCode sc = _getHisto ( histo , hist , spread ) ; 00736 if ( sc.isFailure() ) { return stream ; } // RETURN 00737 // 00738 stream 00739 << boost::format ( " Histo TES : \"%s\"") % path ( histo ) 00740 << std::endl 00741 << boost::format ( " Histo Title : \"%s\"") % histo->title() 00742 << std::endl 00743 << std::endl ; 00744 // 00745 stream 00746 << boost::format ( " Mean : %11.5g ") % histo->mean() 00747 << std::endl 00748 << boost::format ( " Rms : %11.5g ") % histo->rms () 00749 << std::endl 00750 << std::endl ; 00751 // 00752 stream 00753 << boost::format ( " Entries :\n | %=9s | %=9s | %=9s | %9s | %=11s | %=11s |") 00754 % "All" 00755 % "In Range" 00756 % "Underflow" 00757 % "Overflow" 00758 // % "#Equivalent" 00759 % "Integral" 00760 % "Total" 00761 << std::endl 00762 << boost::format ( " | %=9d | %=9d | %=9d | %=9d | %=11.5g | %=11.5g |") 00763 % histo -> allEntries () 00764 % histo -> entries () 00765 % histo -> binEntries ( AIDA::IAxis::UNDERFLOW_BIN ) 00766 % histo -> binEntries ( AIDA::IAxis::OVERFLOW_BIN ) 00767 // % histo -> equivalentBinEntries () 00768 % histo -> sumBinHeights () 00769 % histo -> sumAllBinHeights () 00770 << std::endl 00771 << std::endl ; 00772 // 00773 const AIDA::IAnnotation& a = histo->annotation () ; 00774 if ( 0 != a.size() ) 00775 { 00776 stream << " Annotation" << std::endl ; 00777 for ( int i = 0 ; i < a.size() ; ++i ) 00778 { 00779 stream 00780 << boost::format ( " | %-25.25s : %-45.45s | ") 00781 % a.key ( i ) 00782 % a.value ( i ) 00783 << std::endl ; 00784 } 00785 stream << std::endl ; 00786 } 00787 // 00788 return dumpText ( hist , width , height , true , stream ) ; 00789 }
| 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 615 of file HistoDump.cpp.
00620 { 00621 stream << std::endl ; 00622 if ( 0 == histo ) { return stream ; } // RETURN 00623 Histo hist ; 00624 StatusCode sc = _getHisto ( histo , hist ) ; 00625 if ( sc.isFailure() ) { return stream ; } // RETURN 00626 // 00627 stream 00628 << boost::format ( " Histo TES : \"%s\"") % path ( histo ) 00629 << std::endl 00630 << boost::format ( " Histo Title : \"%s\"") % histo->title() 00631 << std::endl 00632 << std::endl ; 00633 // 00634 stream 00635 << boost::format ( " Mean : %11.5g +- %-10.4g ") 00636 % Gaudi::Utils::HistoStats::mean ( histo ) 00637 % Gaudi::Utils::HistoStats::meanErr ( histo ) 00638 << std::endl 00639 << boost::format ( " Rms : %11.5g +- %-10.4g ") 00640 % Gaudi::Utils::HistoStats::rms ( histo ) 00641 % Gaudi::Utils::HistoStats::rmsErr ( histo ) 00642 << std::endl 00643 << boost::format ( " Skewness : %11.5g +- %-10.4g ") 00644 % Gaudi::Utils::HistoStats::skewness ( histo ) 00645 % Gaudi::Utils::HistoStats::skewnessErr ( histo ) 00646 << std::endl 00647 << boost::format ( " Kurtosis : %11.5g +- %-10.4g ") 00648 % Gaudi::Utils::HistoStats::kurtosis ( histo ) 00649 % Gaudi::Utils::HistoStats::kurtosisErr ( histo ) 00650 << std::endl 00651 << std::endl ; 00652 // 00653 stream 00654 << boost::format ( " Entries :\n | %=9s | %=9s | %=9s | %9s | %=11s | %=11s | %=11s |") 00655 % "All" 00656 % "In Range" 00657 % "Underflow" 00658 % "Overflow" 00659 % "#Equivalent" 00660 % "Integral" 00661 % "Total" 00662 << std::endl 00663 << boost::format ( " | %=9d | %=9d | %=9d | %=9d | %=11.5g | %=11.5g | %=11.5g |") 00664 % histo -> allEntries () 00665 % histo -> entries () 00666 % histo -> binEntries ( AIDA::IAxis::UNDERFLOW_BIN ) 00667 % histo -> binEntries ( AIDA::IAxis::OVERFLOW_BIN ) 00668 % histo -> equivalentBinEntries () 00669 % histo -> sumBinHeights () 00670 % histo -> sumAllBinHeights () 00671 << std::endl 00672 << std::endl ; 00673 // 00674 const AIDA::IAnnotation& a = histo->annotation () ; 00675 if ( 0 != a.size() ) 00676 { 00677 stream << " Annotation" << std::endl ; 00678 for ( int i = 0 ; i < a.size() ; ++i ) 00679 { 00680 stream 00681 << boost::format ( " | %-25.25s : %-45.45s | ") 00682 % a.key ( i ) 00683 % a.value ( i ) 00684 << std::endl ; 00685 } 00686 stream << std::endl ; 00687 } 00688 // 00689 return dumpText ( hist , width , height , errors , stream ) ; 00690 }
| 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 | ) |