\section{U\-T\-I\-L\-:\-:Cell\-I\-D\-Decoder$<$ T $>$ Class Template Reference}
\label{classUTIL_1_1CellIDDecoder}\index{U\-T\-I\-L\-::\-Cell\-I\-D\-Decoder$<$ T $>$@{U\-T\-I\-L\-::\-Cell\-I\-D\-Decoder$<$ T $>$}}


Convenient class for decoding cell\-I\-Ds from collection parameter L\-C\-I\-O\-::\-Cell\-I\-D\-Encoding.  




{\ttfamily \#include $<$U\-T\-I\-L/\-Cell\-I\-D\-Decoder.\-h$>$}

\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
{\bf Cell\-I\-D\-Decoder} (const std\-::string \&encoder\-\_\-str)\label{classUTIL_1_1CellIDDecoder_a31543f2e92d494fb7a3edf4746f8e8de}

\begin{DoxyCompactList}\small\item\em Constructor takes encoding string as argument. \end{DoxyCompactList}\item 
{\bf Cell\-I\-D\-Decoder} (const {\bf E\-V\-E\-N\-T\-::\-L\-C\-Collection} $\ast$col)\label{classUTIL_1_1CellIDDecoder_a6f0429b6fcec2c0495ae0dcd2a8bd5b1}

\begin{DoxyCompactList}\small\item\em Constructor reads encoding string from collection parameter L\-C\-I\-O\-::\-Cell\-I\-D\-Encoding. \end{DoxyCompactList}\item 
const {\bf Bit\-Field64} \& {\bf operator()} (const T $\ast$hit)
\begin{DoxyCompactList}\small\item\em Provides access to the bit fields, e.\-g. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Static Public Member Functions}
\begin{DoxyCompactItemize}
\item 
static void {\bf set\-Default\-Encoding} (const std\-::string \&default\-Encoding)
\begin{DoxyCompactList}\small\item\em This can be used to set the default encoding that is used if no Cell\-I\-D\-Encoding parameter is set in the collection, e.\-g. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Protected Attributes}
\begin{DoxyCompactItemize}
\item 
{\bf Bit\-Field64} $\ast$ {\bfseries \-\_\-b}\label{classUTIL_1_1CellIDDecoder_a22df46e95452bd6b9d9669b49af9e2ab}

\item 
const T $\ast$ {\bfseries \-\_\-old\-Hit}\label{classUTIL_1_1CellIDDecoder_aae43bc574a13f3d490f026ea5558409d}

\end{DoxyCompactItemize}
\subsection*{Static Protected Attributes}
\begin{DoxyCompactItemize}
\item 
static std\-::string $\ast$ {\bfseries \-\_\-default\-Encoding} = new std\-::string(\char`\"{}byte0\-:8,byte1\-:8,byte2\-:8,byte3\-:8,byte4\-:8,byte5\-:8,byte6\-:8,byte7\-:8\char`\"{})\label{classUTIL_1_1CellIDDecoder_ad48e0a9523ace04762a0a9467474e2dc}

\end{DoxyCompactItemize}


\subsection{Detailed Description}
\subsubsection*{template$<$class T$>$class U\-T\-I\-L\-::\-Cell\-I\-D\-Decoder$<$ T $>$}

Convenient class for decoding cell\-I\-Ds from collection parameter L\-C\-I\-O\-::\-Cell\-I\-D\-Encoding. 

See \doxyref{U\-T\-I\-L\-::\-Bit\-Field64}{p.}{classUTIL_1_1BitField64} for a description of the encoding string.

\begin{DoxySeeAlso}{See Also}
\doxyref{Bit\-Field64}{p.}{classUTIL_1_1BitField64} 
\end{DoxySeeAlso}
\begin{DoxyVersion}{Version}

\end{DoxyVersion}
\begin{DoxyParagraph}{Id\-:}
\doxyref{Cell\-I\-D\-Decoder.\-h}{p.}{CellIDDecoder_8h_source},v 1.\-9.\-16.\-1 2011-\/03-\/04 14\-:09\-:07 engels Exp 
\end{DoxyParagraph}


\subsection{Member Function Documentation}
\index{U\-T\-I\-L\-::\-Cell\-I\-D\-Decoder@{U\-T\-I\-L\-::\-Cell\-I\-D\-Decoder}!operator()@{operator()}}
\index{operator()@{operator()}!UTIL::CellIDDecoder@{U\-T\-I\-L\-::\-Cell\-I\-D\-Decoder}}
\subsubsection[{operator()}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class T$>$ const {\bf Bit\-Field64}\& {\bf U\-T\-I\-L\-::\-Cell\-I\-D\-Decoder}$<$ T $>$\-::operator() (
\begin{DoxyParamCaption}
\item[{const T $\ast$}]{hit}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}}\label{classUTIL_1_1CellIDDecoder_aa3847f21051e17ce32c04c89c8c3e218}


Provides access to the bit fields, e.\-g. 

\par
 int layer = my\-Cell\-I\-D\-Encoding( hit )[ \char`\"{}layer\char`\"{} ] ; \index{U\-T\-I\-L\-::\-Cell\-I\-D\-Decoder@{U\-T\-I\-L\-::\-Cell\-I\-D\-Decoder}!set\-Default\-Encoding@{set\-Default\-Encoding}}
\index{set\-Default\-Encoding@{set\-Default\-Encoding}!UTIL::CellIDDecoder@{U\-T\-I\-L\-::\-Cell\-I\-D\-Decoder}}
\subsubsection[{set\-Default\-Encoding}]{\setlength{\rightskip}{0pt plus 5cm}template$<$class T$>$ static void {\bf U\-T\-I\-L\-::\-Cell\-I\-D\-Decoder}$<$ T $>$\-::set\-Default\-Encoding (
\begin{DoxyParamCaption}
\item[{const std\-::string \&}]{default\-Encoding}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}, {\ttfamily [static]}}\label{classUTIL_1_1CellIDDecoder_aa338ced87b5e8774de7ef5970da27ff6}


This can be used to set the default encoding that is used if no Cell\-I\-D\-Encoding parameter is set in the collection, e.\-g. 

in older lcio files. 

The documentation for this class was generated from the following file\-:\begin{DoxyCompactItemize}
\item 
Cell\-I\-D\-Decoder.\-h\end{DoxyCompactItemize}
