12 #include "AIDA/IHistogram1D.h" 13 #include "AIDA/IHistogram2D.h" 14 #include "AIDA/IHistogram3D.h" 15 #include "AIDA/IProfile1D.h" 16 #include "AIDA/IProfile2D.h" 23 #include <fmt/format.h> 24 #include <fmt/ostream.h> 40 static const std::string s_invalidLocation =
"<UNKNOWN LOCATION>";
44 if ( !aida ) {
return s_invalidLocation; }
45 const DataObject*
object = dynamic_cast<const DataObject*>( aida );
46 if ( !
object ) {
return s_invalidLocation; }
48 if ( !
registry ) {
return s_invalidLocation; }
58 fmt::format(
"\"{:.45}\"", aida->title() ), ( aida->allEntries() - aida->extraEntries() ),
59 aida->allEntries(), aida->mean(), aida->rms() );
67 return fmt::format(
" ID={:25} {:47} Ents/All={:>5}/{:<5}<X>/sX={:.5g}/{:<.5g},<Y>/sY={:.5g}/{:<.5g}",
69 ( aida->allEntries() - aida->extraEntries() ), aida->allEntries(), aida->meanX(), aida->rmsX(),
70 aida->meanY(), aida->rmsY() );
79 " ID={:25} {:47} Ents/All={:>5}/{:<5}<X>/sX={:.5g}/{:<.5g},<Y>/sY={:.5g}/{:<.5g},<Z>/sZ={:.5g}/{:<.5g}",
81 aida->allEntries(), aida->meanX(), aida->rmsX(), aida->meanY(), aida->rmsY(), aida->meanZ(), aida->rmsZ() );
90 fmt::format(
"\"{:.45}\"", aida->title() ), ( aida->allEntries() - aida->extraEntries() ),
91 aida->allEntries(), aida->mean(), aida->rms() );
99 return fmt::format(
" ID={:25} {:47} Ents/All={:>5}/{:<5}<X>/sX={:.5g}/{:<.5g},<Y>/sY={:.5g}/{:<.5g}",
101 ( aida->allEntries() - aida->extraEntries() ), aida->allEntries(), aida->meanX(), aida->rmsX(),
102 aida->meanY(), aida->rmsY() );
107 stat.
print( ost,
true, tag );
118 for (
const auto& item :
items ) {
119 if ( !item ) {
continue; }
120 if ( !str.
empty() ) { str +=
","; }
122 if ( 0 != item->ndim() ) { str +=
'[' +
std::to_string( item->ndim() ) +
']'; }
123 if ( item->hasIndex() ) { str +=
"/V"; }
static std::string print(const INTuple *tuple, const GaudiAlg::TupleID &ID)
Definition of the MsgStream class used to transmit messages.
GAUDI_API std::string format(const char *,...)
MsgStream format utility "a la sprintf(...)".
static std::string print(const StatEntity &stat, const std::string &tag)
static void print(MsgStream &stream, const AIDA::IHistogram3D *aida, const GaudiAlg::HistoID &ID)
std::string toString(const TYPE &obj)
the generic implementation of the type conversion to the string
static std::string toString(const AIDA::IHistogram1D *aida, const GaudiAlg::HistoID &ID)
virtual const std::string & title() const =0
Object title.
static void print(MsgStream &stream, const AIDA::IProfile1D *aida, const GaudiAlg::HistoID &ID)
NTuple interface class definition.
GAUDI_API LiteralID idAsString() const
Return ID as string, for both numeric and literal IDs.
static const std::string & location(const AIDA::IHistogram *aida)
The IRegistry represents the entry door to the environment any data object residing in a transient da...
collection of useful utilities to print certain objects (currently used for implementation in class G...
static std::string toString(const AIDA::IHistogram3D *aida, const GaudiAlg::HistoID &ID)
static void print(MsgStream &stream, const AIDA::IHistogram1D *aida, const GaudiAlg::HistoID &ID)
std::ostream & print(std::ostream &o, bool tableFormat, std::string_view name, bool flag=true, std::string_view fmtHead="%|-48.48s|%|27t|") const
static void print(MsgStream &stream, const AIDA::IProfile2D *aida, const GaudiAlg::HistoID &ID)
static void print(MsgStream &stream, const AIDA::IHistogram2D *aida, const GaudiAlg::HistoID &ID)
static std::string toString(const AIDA::IHistogram2D *aida, const GaudiAlg::HistoID &ID)
virtual ItemContainer & items()=0
Access item container.
static std::string toString(const AIDA::IProfile1D *aida, const GaudiAlg::HistoID &ID)
backward compatible StatEntity class.
A DataObject is the base class of any identifiable object on any data store.
static std::string toString(const AIDA::IProfile2D *aida, const GaudiAlg::HistoID &ID)
ID class for Histogram and Ntuples.
MsgStream & endmsg(MsgStream &s)
MsgStream Modifier: endmsg. Calls the output method of the MsgStream.