\hypertarget{classACG_1_1TimedTracing}{}\section{A\+CG\+:\+:Timed\+Tracing Class Reference}
\label{classACG_1_1TimedTracing}\index{A\+C\+G\+::\+Timed\+Tracing@{A\+C\+G\+::\+Timed\+Tracing}}


{\ttfamily \#include $<$A\+C\+G/\+Utils/\+Tracing.\+hh$>$}

Inheritance diagram for A\+CG\+:\+:Timed\+Tracing\+:\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=2.000000cm]{classACG_1_1TimedTracing}
\end{center}
\end{figure}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{classACG_1_1TimedTracing_a55ba9fdaa2e9c9b6422d0f713c542470}\label{classACG_1_1TimedTracing_a55ba9fdaa2e9c9b6422d0f713c542470}} 
\hyperlink{classACG_1_1TimedTracing_a55ba9fdaa2e9c9b6422d0f713c542470}{Timed\+Tracing} (const std\+::string \&\+\_\+text, std\+::ostream \&\+\_\+os=std\+::cerr)
\begin{DoxyCompactList}\small\item\em default constructor \end{DoxyCompactList}\item 
\mbox{\Hypertarget{classACG_1_1TimedTracing_a7112bf2df850ab36e48564ec06be8549}\label{classACG_1_1TimedTracing_a7112bf2df850ab36e48564ec06be8549}} 
\hyperlink{classACG_1_1TimedTracing_a7112bf2df850ab36e48564ec06be8549}{$\sim$\+Timed\+Tracing} ()
\begin{DoxyCompactList}\small\item\em destructor \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Private Attributes}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{classACG_1_1TimedTracing_a2b70974316c4b8a96d6e8297d009aadd}\label{classACG_1_1TimedTracing_a2b70974316c4b8a96d6e8297d009aadd}} 
\hyperlink{classACG_1_1StopWatch}{Stop\+Watch} {\bfseries timer\+\_\+}
\end{DoxyCompactItemize}
\subsection*{Additional Inherited Members}


\subsection{Detailed Description}
This class is similar to \hyperlink{classACG_1_1Tracing}{A\+C\+G\+::\+Tracing}. It just starts a timer at the start of the process to be traced and outputs the time the computation took when leaving the block. Again we provide some convenience macros.


\begin{DoxyCode}
\{ \textcolor{comment}{// start a new block}
  ACG\_TIMES\_TRACE(\textcolor{stringliteral}{"What's the meaning of like?"});

  \textcolor{keywordflow}{for} (years=0; years <= ACG::NumLimitsT<int>::max(); ++years)
  \{
    \textcolor{comment}{// ... lengthy computation, show some progress}
    ACG\_TRACE\_PROGRESS;
  \}

  std::cout << \textcolor{stringliteral}{"42"};

\} \textcolor{comment}{// leaving the block will display " <...> secs, finished\(\backslash\)n"}
\end{DoxyCode}


If you want to trace only one command you can also use\+: 
\begin{DoxyCode}
ACG\_TIMED\_TRACE\_CMD(\textcolor{stringliteral}{"What's the meaning of like?"}, calc\_meaning\_of\_life());
\end{DoxyCode}


\begin{DoxySeeAlso}{See also}
\hyperlink{classACG_1_1TimedTracing}{Timed\+Tracing} 
\end{DoxySeeAlso}


Definition at line 182 of file Tracing.\+hh.



The documentation for this class was generated from the following file\+:\begin{DoxyCompactItemize}
\item 
Open\+Flipper/libs\+\_\+required/\+A\+C\+G/\+Utils/Tracing.\+hh\end{DoxyCompactItemize}
