1 #define GAUDIKERNEL_CHRONOENTITY_CPP 1
21 #include "boost/format.hpp"
35 const double minute = 60 *
second ;
36 const double hour = 60 * minute ;
37 const double day = 24 * hour ;
38 const double week = 7 * day ;
39 const double month = 30 * day ;
40 const double year = 365 * day ;
133 (
const double total ,
134 const double minimal ,
137 const double maximal ,
138 const unsigned long number )
const
144 long double unit = 1.0 ;
150 else if( total /
second < 500 )
151 { unit =
second ; fmt %
" [s]" ; }
152 else if( total / minute < 500 )
153 { unit = minute ; fmt %
"[min]" ; }
154 else if( total / hour < 500 )
155 { unit = hour ; fmt %
" [h]" ; }
156 else if( total / day < 10 )
157 { unit = day ; fmt %
"[day]" ; }
158 else if( total / week < 5 )
159 { unit = week ; fmt %
" [w]" ; }
160 else if( total / month < 20 )
161 { unit = month ; fmt %
"[mon]" ; }
163 { unit = year ; fmt %
" [y]" ; }
165 fmt % (double) (total / unit) % number;
170 boost::format fmt1(
"Ave/Min/Max=%2$5.3g(+-%3$5.3g)/%4$5.3g/%5$5.3g%1$s");
175 else if( mean /
second < 500 )
176 { unit =
second ; fmt1 %
" [s]" ; }
177 else if( mean / minute < 500 )
178 { unit = minute ; fmt1 %
"[min]" ; }
179 else if( mean / hour < 500 )
180 { unit = hour ; fmt1 %
" [h]" ; }
181 else if( mean / day < 10 )
182 { unit = day ; fmt1 %
"[day]" ; }
183 else if( mean / week < 5 )
184 { unit = week ; fmt1 %
" [w]" ; }
185 else if( mean / month < 20 )
186 { unit = month ; fmt1 %
"[mon]" ; }
188 { unit = year ; fmt1 %
" [y]" ; }
190 fmt1 % (double) ( mean / unit ) % (double) ( rms / unit )
191 % (double) ( minimal / unit ) % (double) ( maximal / unit );
206 ( &e ==
this ) ?
false :
232 using namespace boost::io ;
233 _fmt.exceptions ( all_error_bits ^ ( too_many_args_bit | too_few_args_bit ) ) ;
256 default : stat = &m_user ; break ;
260 % ( stat -> nEntries () )
261 % ( stat -> flag () / _unit )
262 % ( stat -> flagMean () / _unit )
263 % ( stat -> flagRMS () / _unit )
264 % ( stat -> flagMeanErr () / _unit )
265 % ( stat -> flagMin () / _unit )
266 % ( stat -> flagMax () / _unit ) ;