The Gaudi Framework  v36r6 (b1ee9983)
Gaudi::Utils::Histos::Table Class Reference

#include <GaudiUtils/HistoTableFormat.h>

Collaboration diagram for Gaudi::Utils::Histos::Table:

Public Member Functions

 Table (const int ID=0)
 constructor from enum More...
 
 Table (const std::string &format, const std::string &header="", const std::string &footer="")
 Constructor from the format, header and footer. More...
 
template<class HISTO , class STREAM , class TERMINATOR >
STREAM & printList (HISTO first, HISTO last, STREAM &stream, TERMINATOR term) const
 print the simple sequence of histograms as table More...
 
template<class HISTO , class STREAM , class TERMINATOR >
STREAM & printMap (HISTO first, HISTO last, const std::string &fmt, const std::string &hval, STREAM &stream, TERMINATOR term) const
 print as table the content of the accociative map (key->histogram) with the key, convertible to std::string More...
 
const std::stringheader () const
 the table header More...
 
const std::stringfooter () const
 the table footer More...
 
const std::stringformat () const
 the format More...
 
void setHeader (std::string v)
 set new header More...
 
void setFooter (std::string v)
 set new footer More...
 
void setFormat (std::string v)
 set new format More...
 
std::string toString (const AIDA::IHistogram1D *histo) const
 make the string representation according to the default format More...
 
std::string toString (const AIDA::IProfile1D *histo) const
 make the string representation according to the default format More...
 
std::string toString (const AIDA::IHistogram1D *histo, const std::string &ID, const std::string &fmt) const
 format a full row in table, including ID, label, path or any other "extra" identifier More...
 
std::string toString (const AIDA::IProfile1D *histo, const std::string &ID, const std::string &fmt) const
 format a full row in table, including ID, label, path or any other "extra" identifier More...
 

Public Attributes

std::string m_header
 the table header More...
 
std::string m_footer
 the table footer More...
 
std::string m_format
 the defautl format More...
 

Detailed Description

Simple class for the customizeble printout of the histogram tables

Author
Vanya BELYAEV ibely.nosp@m.aev@.nosp@m.physi.nosp@m.cs.s.nosp@m.yr.ed.nosp@m.u
Date
2007-08-07

Definition at line 437 of file HistoTableFormat.h.

Constructor & Destructor Documentation

◆ Table() [1/2]

Gaudi::Utils::Histos::Table::Table ( const int  ID = 0)

constructor from enum

Definition at line 371 of file HistoTableFormat.cpp.

◆ Table() [2/2]

Gaudi::Utils::Histos::Table::Table ( const std::string format,
const std::string header = "",
const std::string footer = "" 
)

Constructor from the format, header and footer.

Definition at line 376 of file HistoTableFormat.cpp.

377  : m_header( header ), m_footer( footer ), m_format( format ) {}

Member Function Documentation

◆ footer()

const std::string& Gaudi::Utils::Histos::Table::footer ( ) const
inline

the table footer

Definition at line 488 of file HistoTableFormat.h.

488 { return m_footer; }

◆ format()

const std::string& Gaudi::Utils::Histos::Table::format ( ) const
inline

the format

Definition at line 491 of file HistoTableFormat.h.

491 { return m_format; }

◆ header()

const std::string& Gaudi::Utils::Histos::Table::header ( ) const
inline

the table header

Definition at line 485 of file HistoTableFormat.h.

485 { return m_header; }

◆ printList()

template<class HISTO , class STREAM , class TERMINATOR >
STREAM& Gaudi::Utils::Histos::Table::printList ( HISTO  first,
HISTO  last,
STREAM &  stream,
TERMINATOR  term 
) const
inline

print the simple sequence of histograms as table

Parameters
firstbegin-iterator for the sequence
lastend-iterator for the sequence
streamthe stream to be used for printout
termthe terminmator for the stream

Definition at line 453 of file HistoTableFormat.h.

453  {
454  if ( !header().empty() ) { stream << header() << term; }
455  Gaudi::Utils::Histos::printList( first, last, format(), stream, term );
456  if ( !footer().empty() ) { stream << footer() << term; }
457  return stream;
458  }

◆ printMap()

template<class HISTO , class STREAM , class TERMINATOR >
STREAM& Gaudi::Utils::Histos::Table::printMap ( HISTO  first,
HISTO  last,
const std::string fmt,
const std::string hval,
STREAM &  stream,
TERMINATOR  term 
) const
inline

print as table the content of the accociative map (key->histogram) with the key, convertible to std::string

The default format is used for histogram prinout

Parameters
first'begin'-iterator for the mapping sequence
last'end'-iterator for the mapping sequence
fmt'short' format for the table printout
hvalthe name of the "key"-column
streamthe stream for printout
termstream terminator

Definition at line 474 of file HistoTableFormat.h.

475  {
476  if ( !hval.empty() || !header().empty() ) {
477  stream << Gaudi::Utils::Histos::format( hval, header(), fmt ) << term;
478  }
479  return Gaudi::Utils::Histos::printMap( first, last, fmt, format(), stream, term );
480  }

◆ setFooter()

void Gaudi::Utils::Histos::Table::setFooter ( std::string  v)
inline

set new footer

Definition at line 499 of file HistoTableFormat.h.

499 { m_footer = std::move( v ); }

◆ setFormat()

void Gaudi::Utils::Histos::Table::setFormat ( std::string  v)
inline

set new format

Definition at line 502 of file HistoTableFormat.h.

502 { m_format = std::move( v ); }

◆ setHeader()

void Gaudi::Utils::Histos::Table::setHeader ( std::string  v)
inline

set new header

Definition at line 496 of file HistoTableFormat.h.

496 { m_header = std::move( v ); }

◆ toString() [1/4]

std::string Gaudi::Utils::Histos::Table::toString ( const AIDA::IHistogram1D *  histo) const

make the string representation according to the default format

Definition at line 381 of file HistoTableFormat.cpp.

381  {
383 }

◆ toString() [2/4]

std::string Gaudi::Utils::Histos::Table::toString ( const AIDA::IHistogram1D *  histo,
const std::string ID,
const std::string fmt 
) const

format a full row in table, including ID, label, path or any other "extra" identifier

using namespace Gaudi::Utils::Histos ;
const Table& table = ... ;
const AIDA::IHistogram1D* histo = ... ;
// define short format
const std::string fmt1 = " |%1$-30.30s %|33t| %2" ;
info () << table.toString ( "My Histo" , histo , fmt ) ;
Parameters
histopointer to the histogram
IDhistorgam ID, title, label or other extra infomration
fmt"short" format used for the table
Returns
formatted row

Definition at line 389 of file HistoTableFormat.cpp.

390  {
391  return Gaudi::Utils::Histos::format( histo, ID, fmt, format() );
392 }

◆ toString() [3/4]

std::string Gaudi::Utils::Histos::Table::toString ( const AIDA::IProfile1D *  histo) const

make the string representation according to the default format

Definition at line 398 of file HistoTableFormat.cpp.

398  {
400 }

◆ toString() [4/4]

std::string Gaudi::Utils::Histos::Table::toString ( const AIDA::IProfile1D *  histo,
const std::string ID,
const std::string fmt 
) const

format a full row in table, including ID, label, path or any other "extra" identifier

using namespace Gaudi::Utils::Histos ;
const Table& table = ... ;
const AIDA::IProfile1D* histo = ... ;
// define short format
const std::string fmt1 = " |%1$-30.30s %|33t| %2" ;
info () << table.toString ( "My Histo" , histo , fmt ) ;
Parameters
histopointer to the histogram
IDhistorgam ID, title, label or other extra infomration
fmt"short" format used for the table
Returns
formatted row

Definition at line 406 of file HistoTableFormat.cpp.

407  {
408  return Gaudi::Utils::Histos::format( histo, ID, fmt, format() );
409 }

Member Data Documentation

◆ m_footer

std::string Gaudi::Utils::Histos::Table::m_footer

the table footer

Definition at line 567 of file HistoTableFormat.h.

◆ m_format

std::string Gaudi::Utils::Histos::Table::m_format

the defautl format

Definition at line 569 of file HistoTableFormat.h.

◆ m_header

std::string Gaudi::Utils::Histos::Table::m_header

the table header

Definition at line 565 of file HistoTableFormat.h.


The documentation for this class was generated from the following files:
Write.stream
stream
Definition: Write.py:32
std::string
STL class.
std::move
T move(T... args)
HistoEx.histo
histo
Definition: HistoEx.py:105
Gaudi::Utils::Histos::Formats::header
GAUDI_API std::string header(const int ID=Default)
get the recommended header by enum
Definition: HistoTableFormat.cpp:186
Gaudi::Utils::Histos::Table::m_format
std::string m_format
the defautl format
Definition: HistoTableFormat.h:569
Gaudi::Utils::Histos::printMap
STREAM & printMap(HISTO begin, HISTO end, const std::string &fmt1, const std::string &fmt2, STREAM &stream, TERMINATOR term)
Print the "associative sequence" (e.g.
Definition: HistoTableFormat.h:365
Gaudi::Utils::Histos::Table
Definition: HistoTableFormat.h:437
HistoDumpEx.v
v
Definition: HistoDumpEx.py:27
Gaudi::Utils::Histos::Table::format
const std::string & format() const
the format
Definition: HistoTableFormat.h:491
Gaudi::Utils::Histos::Formats::format
GAUDI_API std::string format(const int ID=Default)
get the format by enum
Definition: HistoTableFormat.cpp:153
Gaudi::Utils::Histos::Table::m_footer
std::string m_footer
the table footer
Definition: HistoTableFormat.h:567
Gaudi::Utils::Histos::printList
STREAM & printList(HISTO first, HISTO last, const std::string &fmt, STREAM &stream, TERMINATOR term)
print the simple sequence (list-like) of histograms as table
Definition: HistoTableFormat.h:287
fmt
std::string::empty
T empty(T... args)
Gaudi::Utils::Histos::Table::m_header
std::string m_header
the table header
Definition: HistoTableFormat.h:565
Gaudi::Utils::Histos::Table::header
const std::string & header() const
the table header
Definition: HistoTableFormat.h:485
Gaudi::Utils::Histos
Definition: Fill.h:36
Gaudi::Utils::Histos::Table::footer
const std::string & footer() const
the table footer
Definition: HistoTableFormat.h:488
Gaudi::Utils::Histos::format
GAUDI_API std::string format(const AIDA::IHistogram1D *histo, const std::string &fmt)
Make the string representation of the histogram according to the specified format.
Definition: HistoTableFormat.cpp:233
Gaudi::Utils::Histos::Table::toString
std::string toString(const AIDA::IHistogram1D *histo) const
make the string representation according to the default format
Definition: HistoTableFormat.cpp:381