\hypertarget{compact_8h}{
\section{compact.h File Reference}
\label{compact_8h}\index{compact.h@{compact.h}}
}
Declaration of the compaction structure.  


{\tt \#include $<$LSEC\_\-p.h$>$}\par
{\tt \#include $<$LSEC/enums.h$>$}\par
{\tt \#include $<$EDS/EBF\_\-dir.h$>$}\par
{\tt \#include $<$EDS/EBF\_\-tem.h$>$}\par
{\tt \#include $<$EDS/EBF\_\-gem.h$>$}\par
{\tt \#include $<$EDS/EBF\_\-ctb.h$>$}\par
{\tt \#include $<$LDT/APE.h$>$}\par
\subsection*{Classes}
\begin{CompactItemize}
\item 
struct \hyperlink{structLSEC__gem}{LSEC\_\-gem}
\begin{CompactList}\small\item\em Private structure to hold a GEM event contribution. \item\end{CompactList}\item 
struct \hyperlink{struct__LSEC__calEvent}{\_\-LSEC\_\-calEvent}
\begin{CompactList}\small\item\em Private structure to hold an expanded CAL event. \item\end{CompactList}\item 
struct \hyperlink{structLSEC__calCompaction}{LSEC\_\-calCompaction}
\begin{CompactList}\small\item\em Private structure holding the compression information for the calorimeter. \item\end{CompactList}\item 
struct \hyperlink{struct__LSEC__compaction}{\_\-LSEC\_\-compaction}
\begin{CompactList}\small\item\em Overall compression information. \item\end{CompactList}\end{CompactItemize}
\subsection*{Typedefs}
\begin{CompactItemize}
\item 
\hypertarget{compact_8h_1035f5ba221b19ece6f80aa55039be43}{
typedef unsigned int \hyperlink{compact_8h_1035f5ba221b19ece6f80aa55039be43}{LSEC\_\-sizeUserRtn} (\hyperlink{struct__LSEC__compaction}{LSEC\_\-compaction} $\ast$cpc)}
\label{compact_8h_1035f5ba221b19ece6f80aa55039be43}

\begin{CompactList}\small\item\em Definition of routine to get user context size. \item\end{CompactList}\item 
\hypertarget{compact_8h_db442dbde77e71ef1f2ef82656a91a4f}{
typedef unsigned int $\ast$ \hyperlink{compact_8h_db442dbde77e71ef1f2ef82656a91a4f}{LSEC\_\-copyUserRtn} (\hyperlink{struct__LSEC__compaction}{LSEC\_\-compaction} $\ast$cpc, unsigned int $\ast$buf)}
\label{compact_8h_db442dbde77e71ef1f2ef82656a91a4f}

\begin{CompactList}\small\item\em Definition of routine to copy user context. \item\end{CompactList}\end{CompactItemize}
\subsection*{Enumerations}
\begin{CompactItemize}
\item 
enum \{ \par
\hyperlink{compact_8h_05589fbab0657f08285ebdfe93f5ec9e3c7d8f2afb905aec917dc28d1a2ef6d1}{LM\_\-LENG} =  LSEC\_\-N\_\-CAL\_\-LAY $\ast$ LSEC\_\-N\_\-CAL\_\-COL / 8 / sizeof(unsigned), 
\par
\hyperlink{compact_8h_05589fbab0657f08285ebdfe93f5ec9e3d9e37049459b6cae09997fb14ce24a1}{FR\_\-LENG} =  4 $\ast$ LM\_\-LENG
 \}
\begin{CompactList}\small\item\em Miscellaneous constants. \item\end{CompactList}\end{CompactItemize}
\subsection*{Functions}
\begin{CompactItemize}
\item 
static \_\-\_\-inline unsigned int \hyperlink{compact_8h_ede2d0d033fe7f168ea8b4e06ab9b962}{getBit} (int index, const unsigned int $\ast$buff)
\begin{CompactList}\small\item\em Get a bit from an integer buffer. \item\end{CompactList}\item 
static \_\-\_\-inline void \hyperlink{compact_8h_3a555ce60799cc3924a078f81dbeee65}{setBit} (unsigned int index, unsigned int $\ast$buff)
\begin{CompactList}\small\item\em Set a bit in an integer buffer. \item\end{CompactList}\item 
static \_\-\_\-inline unsigned int \hyperlink{compact_8h_89d7f1e3ade1aeb8e12fd2947e33f500}{getNib} (int index, const unsigned int $\ast$buff)
\begin{CompactList}\small\item\em Get a nibble from an integer buffer. \item\end{CompactList}\item 
static \_\-\_\-inline void \hyperlink{compact_8h_f854e3927028bfe39c42ddbcd471e7a9}{setNib} (unsigned int value, unsigned int index, unsigned int $\ast$buff)
\begin{CompactList}\small\item\em Set a nibble in an integer buffer. \item\end{CompactList}\end{CompactItemize}


\subsection{Detailed Description}
Declaration of the compaction structure. 

\begin{Desc}
\item[Author:]James Swain \& Owen Saxton\end{Desc}
{\bf \$Id:} \hyperlink{compact_8h}{compact.h},v 1.5 2011/03/27 17:48:20 saxton Exp \$ 

\subsection{Enumeration Type Documentation}
\hypertarget{compact_8h_05589fbab0657f08285ebdfe93f5ec9e}{
\subsubsection[{"@13}]{\setlength{\rightskip}{0pt plus 5cm}anonymous enum}}
\label{compact_8h_05589fbab0657f08285ebdfe93f5ec9e}


Miscellaneous constants. 

\begin{Desc}
\item[Enumerator: ]\par
\begin{description}
\index{LM\_\-LENG@{LM\_\-LENG}!compact.h@{compact.h}}\index{compact.h@{compact.h}!LM\_\-LENG@{LM\_\-LENG}}\item[{\em 
\hypertarget{compact_8h_05589fbab0657f08285ebdfe93f5ec9e3c7d8f2afb905aec917dc28d1a2ef6d1}{
LM\_\-LENG}
\label{compact_8h_05589fbab0657f08285ebdfe93f5ec9e3c7d8f2afb905aec917dc28d1a2ef6d1}
}]Size of the CAL log map for a tower. \index{FR\_\-LENG@{FR\_\-LENG}!compact.h@{compact.h}}\index{compact.h@{compact.h}!FR\_\-LENG@{FR\_\-LENG}}\item[{\em 
\hypertarget{compact_8h_05589fbab0657f08285ebdfe93f5ec9e3d9e37049459b6cae09997fb14ce24a1}{
FR\_\-LENG}
\label{compact_8h_05589fbab0657f08285ebdfe93f5ec9e3d9e37049459b6cae09997fb14ce24a1}
}]Size of the CAL first range data for a tower. \end{description}
\end{Desc}



\subsection{Function Documentation}
\hypertarget{compact_8h_ede2d0d033fe7f168ea8b4e06ab9b962}{
\index{compact.h@{compact.h}!getBit@{getBit}}
\index{getBit@{getBit}!compact.h@{compact.h}}
\subsubsection[{getBit}]{\setlength{\rightskip}{0pt plus 5cm}static \_\-\_\-inline unsigned int getBit (int {\em index}, \/  const unsigned int $\ast$ {\em buff})\hspace{0.3cm}{\tt  \mbox{[}static\mbox{]}}}}
\label{compact_8h_ede2d0d033fe7f168ea8b4e06ab9b962}


Get a bit from an integer buffer. 

The bits are numbered from low to high order within each integer.

\begin{Desc}
\item[Parameters:]
\begin{description}
\item[{\em index}]The index of the bit to be obtained.\item[{\em buff}]Address of the integer buffer.\end{description}
\end{Desc}
\begin{Desc}
\item[Returns:]The value of the specified bit. \end{Desc}


Referenced by LSEC\_\-encodeCal(), and LSEC\_\-histogramCal().\hypertarget{compact_8h_89d7f1e3ade1aeb8e12fd2947e33f500}{
\index{compact.h@{compact.h}!getNib@{getNib}}
\index{getNib@{getNib}!compact.h@{compact.h}}
\subsubsection[{getNib}]{\setlength{\rightskip}{0pt plus 5cm}static \_\-\_\-inline unsigned int getNib (int {\em index}, \/  const unsigned int $\ast$ {\em buff})\hspace{0.3cm}{\tt  \mbox{[}static\mbox{]}}}}
\label{compact_8h_89d7f1e3ade1aeb8e12fd2947e33f500}


Get a nibble from an integer buffer. 

The bits are numbered from low to high order within each integer.

\begin{Desc}
\item[Parameters:]
\begin{description}
\item[{\em index}]The index of the nibble to be obtained.\item[{\em buff}]Address of the integer buffer.\end{description}
\end{Desc}
\begin{Desc}
\item[Returns:]The value of the specified nibble. \end{Desc}


Referenced by LSEC\_\-encodeCal(), and LSEC\_\-histogramCal().\hypertarget{compact_8h_3a555ce60799cc3924a078f81dbeee65}{
\index{compact.h@{compact.h}!setBit@{setBit}}
\index{setBit@{setBit}!compact.h@{compact.h}}
\subsubsection[{setBit}]{\setlength{\rightskip}{0pt plus 5cm}static \_\-\_\-inline void setBit (unsigned int {\em index}, \/  unsigned int $\ast$ {\em buff})\hspace{0.3cm}{\tt  \mbox{[}static\mbox{]}}}}
\label{compact_8h_3a555ce60799cc3924a078f81dbeee65}


Set a bit in an integer buffer. 

The bits are numbered from low to high order within each integer.

\begin{Desc}
\item[Parameters:]
\begin{description}
\item[{\em index}]The index of the bit to be set.\item[{\em buff}]Address of the integer buffer. \end{description}
\end{Desc}


Referenced by LSEC\_\-accumCalMeans().\hypertarget{compact_8h_f854e3927028bfe39c42ddbcd471e7a9}{
\index{compact.h@{compact.h}!setNib@{setNib}}
\index{setNib@{setNib}!compact.h@{compact.h}}
\subsubsection[{setNib}]{\setlength{\rightskip}{0pt plus 5cm}static \_\-\_\-inline void setNib (unsigned int {\em value}, \/  unsigned int {\em index}, \/  unsigned int $\ast$ {\em buff})\hspace{0.3cm}{\tt  \mbox{[}static\mbox{]}}}}
\label{compact_8h_f854e3927028bfe39c42ddbcd471e7a9}


Set a nibble in an integer buffer. 

The bits are numbered from low to high order within each integer.

\begin{Desc}
\item[Parameters:]
\begin{description}
\item[{\em value}]The nibble value to be set.\item[{\em index}]The index of the nibble to be set.\item[{\em buff}]Address of the integer buffer. \end{description}
\end{Desc}


Referenced by LSEC\_\-accumCalMeans().