00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00026 #include "StatisticsTargets.ih"
00027
00028
00029
00030 #define prefix_ inline
00031
00032
00033
00034
00035
00036 template <class Stream, class Area, class Level>
00037 prefix_ senf::detail::StatisticsLogger<Stream,Area,Level>::
00038 StatisticsLogger(std::string const & label_)
00039 : label (label_.empty() ? "" : label_ + " ")
00040 {}
00041
00042
00043
00044 template <class Stream>
00045 prefix_ std::auto_ptr< senf::detail::StatisticsLogger<Stream,void,void> >
00046 senf::StatisticsLogger(std::string const & label)
00047 {
00048 return std::auto_ptr< detail::StatisticsLogger<Stream,void,void> >(
00049 new detail::StatisticsLogger<Stream,void,void>(label));
00050 }
00051
00052 template <class Stream, class Area>
00053 prefix_ std::auto_ptr< senf::detail::StatisticsLogger<Stream,Area,void> >
00054 senf::StatisticsLogger(std::string const & label)
00055 {
00056 return std::auto_ptr< detail::StatisticsLogger<Stream,Area,void> >(
00057 new detail::StatisticsLogger<Stream,Area,void>(label));
00058 }
00059
00060 template <class Stream, class Area, class Level>
00061 prefix_ std::auto_ptr< senf::detail::StatisticsLogger<Stream,Area,Level> >
00062 senf::StatisticsLogger(std::string const & label)
00063 {
00064 return std::auto_ptr< detail::StatisticsLogger<Stream,Area,Level> >(
00065 new detail::StatisticsLogger<Stream,Area,Level>(label));
00066 }
00067
00068
00069 #undef prefix_
00070
00071
00072
00073
00074
00075
00076
00077
00078
00079
00080