16 #include "AIDA/IHistogram1D.h"
17 #include "AIDA/IHistogram2D.h"
18 #include "AIDA/IHistogram3D.h"
19 #include "AIDA/IProfile1D.h"
20 #include "AIDA/IProfile2D.h"
39 #pragma warning(disable:2259)
41 #include "boost/format.hpp"
42 #include "boost/lexical_cast.hpp"
56 static const std::string s_invalidLocation =
"<UNKNOWN LOCATION>" ;
60 (
const AIDA::IHistogram* aida )
62 if ( 0 == aida ) {
return s_invalidLocation ; }
64 if ( 0 ==
object ) {
return s_invalidLocation ; }
65 IRegistry* registry =
object->registry() ;
66 if ( 0 == registry ) {
return s_invalidLocation ; }
72 const AIDA::IHistogram1D* aida ,
77 (
const AIDA::IHistogram1D* aida ,
81 (
" ID=%|-25|%|30t| \"%|.45s|\" %|79t| Ents/All=%|5|/%|-5|<X>/sX=%|.5|/%|-.5|" ) ;
83 fmt % (aida->allEntries()-aida->extraEntries()) % aida->allEntries() ;
84 fmt % aida->mean() % aida->rms() ;
91 const AIDA::IHistogram2D* aida ,
96 (
const AIDA::IHistogram2D* aida ,
100 (
" ID=%|-25|%|30t| \"%|.45s|\" %|79t| Ents/All=%|5|/%|-5|<X>/sX=%|.5|/%|-.5|,<Y>/sY=%|.5|/%|-.5|" ) ;
102 fmt % (aida->allEntries()-aida->extraEntries()) % aida->allEntries() ;
103 fmt % aida->meanX() % aida->rmsX() ;
104 fmt % aida->meanY() % aida->rmsY() ;
111 const AIDA::IHistogram3D* aida ,
116 (
const AIDA::IHistogram3D* aida ,
120 (
" ID=%|-25|%|30t| \"%|.45s|\" %|79t| Ents/All=%|5|/%|-5|<X>/sX=%|.5|/%|-.5|,<Y>/sY=%|.5|/%|-.5|,<Z>/sZ=%|.5|/%|-.5|" ) ;
122 fmt % (aida->allEntries()-aida->extraEntries()) % aida->allEntries() ;
123 fmt % aida->meanX() % aida->rmsX() ;
124 fmt % aida->meanY() % aida->rmsY() ;
125 fmt % aida->meanZ() % aida->rmsZ() ;
132 const AIDA::IProfile1D* aida ,
137 (
const AIDA::IProfile1D* aida ,
141 (
" ID=%|-25|%|30t| \"%|.55s|\" %|79t| Ents/All=%|5|/%|-5|<X>/sX=%|.5|/%|-.5|" ) ;
143 fmt % (aida->allEntries()-aida->extraEntries()) % aida->allEntries() ;
144 fmt % aida->mean() % aida->rms() ;
151 const AIDA::IProfile2D* aida ,
156 (
const AIDA::IProfile2D* aida ,
160 (
" ID=%|-25|%|30t| \"%|.55s|\" %|79t| Ents/All=%|5|/%|-5|<X>/sX=%|.5|/%|-.5|,<Y>/sY=%|.5|/%|-.5|" );
162 fmt % (aida->allEntries()-aida->extraEntries()) % aida->allEntries() ;
163 fmt % aida->meanX() % aida->rmsX() ;
164 fmt % aida->meanY() % aida->rmsY() ;
191 items.
end() != iitem ; ++iitem )
193 if ( items.
begin() != iitem ) { str +=
"," ; }
195 if ( 0 == item ) { continue ; }
196 str += item->
name() ;
197 if ( 0 != item->
ndim() )
198 { str +=
'[' + boost::lexical_cast<
std::string>( item->
ndim() ) +
']'; }
199 if ( item->
hasIndex() ) { str +=
"/V" ; }
209 (
"Title=\"%|.39s|\" %|48t|#items=%|-3|%|50t|{%|.81s|}" ) ;
210 fmt % tuple->
title() ;
212 fmt % _print( tuple->
items() ) ;