\section{S\-I\-O Namespace Reference}
\label{namespaceSIO}\index{S\-I\-O@{S\-I\-O}}


The \doxyref{S\-I\-O}{p.}{namespaceSIO} namespace holds the persistency implementation using \doxyref{S\-I\-O}{p.}{namespaceSIO}.  


\subsection*{Classes}
\begin{DoxyCompactItemize}
\item 
struct {\bf Run\-Event}
\begin{DoxyCompactList}\small\item\em Helper struct that stores run and event positions in the file. \end{DoxyCompactList}\item 
class {\bf L\-C\-I\-O\-Random\-Access}
\begin{DoxyCompactList}\small\item\em Implementation class for \doxyref{L\-C\-I\-O\-Random\-Access}{p.}{classSIO_1_1LCIORandomAccess} records. \end{DoxyCompactList}\item 
class {\bf L\-C\-I\-O\-Random\-Access\-Mgr}
\begin{DoxyCompactList}\small\item\em Manager class for L\-C\-I\-O direct access. \end{DoxyCompactList}\item 
class {\bf S\-I\-O\-Records}
\begin{DoxyCompactList}\small\item\em Manager class that holds instances of all known L\-C\-I\-O-\/\-S\-I\-O records. \end{DoxyCompactList}\item 
class {\bf L\-C\-S\-I\-O}
\begin{DoxyCompactList}\small\item\em Collection of static helper functions for reading and writing data with \doxyref{S\-I\-O}{p.}{namespaceSIO}. \end{DoxyCompactList}\item 
class {\bf Run\-Event\-Map}
\begin{DoxyCompactList}\small\item\em Map that holds positions of Run and Event records. \end{DoxyCompactList}\item 
class {\bf S\-I\-O\-Cal\-Hit\-Handler}
\begin{DoxyCompactList}\small\item\em Implementation of \doxyref{S\-I\-O\-Object\-Handler}{p.}{classSIO_1_1SIOObjectHandler} to handle \doxyref{I\-O}{p.}{namespaceIO} of Calorimeter\-Hits. \end{DoxyCompactList}\item 
class {\bf S\-I\-O\-Cluster\-Handler}
\begin{DoxyCompactList}\small\item\em Implementation of \doxyref{S\-I\-O\-Object\-Handler}{p.}{classSIO_1_1SIOObjectHandler} to handle \doxyref{I\-O}{p.}{namespaceIO} of Clusters. \end{DoxyCompactList}\item 
class {\bf S\-I\-O\-Collection\-Handler}
\begin{DoxyCompactList}\small\item\em Handler for L\-C\-Collection/\-L\-C\-Collection\-I\-O\-Vec objects for \doxyref{S\-I\-O}{p.}{namespaceSIO}. \end{DoxyCompactList}\item 
class {\bf S\-I\-O\-Event\-Handler}
\begin{DoxyCompactList}\small\item\em Handler for L\-C\-Event/\-L\-C\-Event\-I\-O\-Impl objects. \end{DoxyCompactList}\item 
class {\bf S\-I\-O\-Float\-Vec\-Handler}
\begin{DoxyCompactList}\small\item\em Implementation of \doxyref{S\-I\-O\-Object\-Handler}{p.}{classSIO_1_1SIOObjectHandler} to handle \doxyref{I\-O}{p.}{namespaceIO} of Float\-Vecs. \end{DoxyCompactList}\item 
class {\bf S\-I\-O\-Handler\-Mgr}
\begin{DoxyCompactList}\small\item\em Singleton that holds instances of all types of S\-I\-O\-Object\-Handlers. \end{DoxyCompactList}\item 
class {\bf S\-I\-O\-Index\-Handler}
\begin{DoxyCompactList}\small\item\em Handler for L\-C\-I\-Orandom\-Access and L\-C\-I\-O\-Index objects/blocks. \end{DoxyCompactList}\item 
class {\bf S\-I\-O\-Int\-Vec\-Handler}
\begin{DoxyCompactList}\small\item\em Implementation of \doxyref{S\-I\-O\-Object\-Handler}{p.}{classSIO_1_1SIOObjectHandler} to handle \doxyref{I\-O}{p.}{namespaceIO} of Int\-Vecs. \end{DoxyCompactList}\item 
class {\bf S\-I\-O\-L\-C\-Generic\-Object\-Handler}
\begin{DoxyCompactList}\small\item\em Implementation of \doxyref{S\-I\-O\-Object\-Handler}{p.}{classSIO_1_1SIOObjectHandler} to handle \doxyref{I\-O}{p.}{namespaceIO} of L\-C\-Generic\-Objects. \end{DoxyCompactList}\item 
class {\bf S\-I\-O\-L\-C\-Parameters}
\begin{DoxyCompactList}\small\item\em \doxyref{I\-O}{p.}{namespaceIO} of L\-C\-Parameters. \end{DoxyCompactList}\item 
class {\bf S\-I\-O\-L\-C\-Relation\-Handler}
\begin{DoxyCompactList}\small\item\em Implementation of \doxyref{S\-I\-O\-Object\-Handler}{p.}{classSIO_1_1SIOObjectHandler} to handle \doxyref{I\-O}{p.}{namespaceIO} of Calorimeter\-Hits. \end{DoxyCompactList}\item 
class {\bf S\-I\-O\-Object\-Handler}
\begin{DoxyCompactList}\small\item\em Interface for all lcio object S\-I\-O-\/handlers, has to be implemented for all event entities (hits, tracks, clusters,...). \end{DoxyCompactList}\item 
class {\bf S\-I\-O\-Particle\-Handler}
\begin{DoxyCompactList}\small\item\em Implementation of \doxyref{S\-I\-O\-Object\-Handler}{p.}{classSIO_1_1SIOObjectHandler} to handle \doxyref{I\-O}{p.}{namespaceIO} of M\-C\-Particles. \end{DoxyCompactList}\item 
class {\bf S\-I\-O\-Random\-Access\-Handler}
\begin{DoxyCompactList}\small\item\em Handler for L\-C\-I\-Orandom\-Access and L\-C\-I\-O\-Index objects/blocks. \end{DoxyCompactList}\item 
class {\bf S\-I\-O\-Raw\-Cal\-Hit\-Handler}
\begin{DoxyCompactList}\small\item\em Implementation of \doxyref{S\-I\-O\-Object\-Handler}{p.}{classSIO_1_1SIOObjectHandler} to handle \doxyref{I\-O}{p.}{namespaceIO} of Raw\-Calorimeter\-Hits. \end{DoxyCompactList}\item 
class {\bf S\-I\-O\-Reader}
\begin{DoxyCompactList}\small\item\em Concrete implementation of L\-C\-Writer using \doxyref{S\-I\-O}{p.}{namespaceSIO}. \end{DoxyCompactList}\item 
class {\bf S\-I\-O\-Reconstructed\-Particle\-Handler}
\begin{DoxyCompactList}\small\item\em Implementation of \doxyref{S\-I\-O\-Object\-Handler}{p.}{classSIO_1_1SIOObjectHandler} to handle \doxyref{I\-O}{p.}{namespaceIO} of Reconstructed\-Particles. \end{DoxyCompactList}\item 
class {\bf S\-I\-O\-Run\-Header\-Handler}
\begin{DoxyCompactList}\small\item\em Handler for L\-C\-Run\-Header/\-L\-C\-Run\-Header\-Impl objects. \end{DoxyCompactList}\item 
class {\bf S\-I\-O\-Sim\-Cal\-Hit\-Handler}
\begin{DoxyCompactList}\small\item\em Implementation of \doxyref{S\-I\-O\-Object\-Handler}{p.}{classSIO_1_1SIOObjectHandler} to handle \doxyref{I\-O}{p.}{namespaceIO} of Sim\-Calorimeter\-Hits. \end{DoxyCompactList}\item 
class {\bf S\-I\-O\-Sim\-Track\-Hit\-Handler}
\begin{DoxyCompactList}\small\item\em Implementation of \doxyref{S\-I\-O\-Object\-Handler}{p.}{classSIO_1_1SIOObjectHandler} to handle \doxyref{I\-O}{p.}{namespaceIO} of Sim\-Tracker\-Hits. \end{DoxyCompactList}\item 
class {\bf S\-I\-O\-Str\-Vec\-Handler}
\begin{DoxyCompactList}\small\item\em Implementation of \doxyref{S\-I\-O\-Object\-Handler}{p.}{classSIO_1_1SIOObjectHandler} to handle \doxyref{I\-O}{p.}{namespaceIO} of Str\-Vecs. \end{DoxyCompactList}\item 
class {\bf S\-I\-O\-T\-P\-C\-Hit\-Handler}
\begin{DoxyCompactList}\small\item\em Implementation of \doxyref{S\-I\-O\-Object\-Handler}{p.}{classSIO_1_1SIOObjectHandler} to handle \doxyref{I\-O}{p.}{namespaceIO} of T\-P\-C\-Hits. \end{DoxyCompactList}\item 
class {\bf S\-I\-O\-Tracker\-Data\-Handler}
\begin{DoxyCompactList}\small\item\em Implementation of \doxyref{S\-I\-O\-Object\-Handler}{p.}{classSIO_1_1SIOObjectHandler} to handle \doxyref{I\-O}{p.}{namespaceIO} of Tracker\-Datas. \end{DoxyCompactList}\item 
class {\bf S\-I\-O\-Tracker\-Hit\-Handler}
\begin{DoxyCompactList}\small\item\em Implementation of \doxyref{S\-I\-O\-Object\-Handler}{p.}{classSIO_1_1SIOObjectHandler} to handle \doxyref{I\-O}{p.}{namespaceIO} of Sim\-Tracker\-Hits. \end{DoxyCompactList}\item 
class {\bf S\-I\-O\-Tracker\-Hit\-Plane\-Handler}
\begin{DoxyCompactList}\small\item\em Implementation of \doxyref{S\-I\-O\-Object\-Handler}{p.}{classSIO_1_1SIOObjectHandler} to handle \doxyref{I\-O}{p.}{namespaceIO} of Tracker\-Hit\-Plane. \end{DoxyCompactList}\item 
class {\bf S\-I\-O\-Tracker\-Hit\-Z\-Cylinder\-Handler}
\begin{DoxyCompactList}\small\item\em Implementation of \doxyref{S\-I\-O\-Object\-Handler}{p.}{classSIO_1_1SIOObjectHandler} to handle \doxyref{I\-O}{p.}{namespaceIO} of Tracker\-Hit\-Z\-Cylinder. \end{DoxyCompactList}\item 
class {\bf S\-I\-O\-Tracker\-Pulse\-Handler}
\begin{DoxyCompactList}\small\item\em Implementation of \doxyref{S\-I\-O\-Object\-Handler}{p.}{classSIO_1_1SIOObjectHandler} to handle \doxyref{I\-O}{p.}{namespaceIO} of Tracker\-Pulses. \end{DoxyCompactList}\item 
class {\bf S\-I\-O\-Tracker\-Raw\-Data\-Handler}
\begin{DoxyCompactList}\small\item\em Implementation of \doxyref{S\-I\-O\-Object\-Handler}{p.}{classSIO_1_1SIOObjectHandler} to handle \doxyref{I\-O}{p.}{namespaceIO} of Tracker\-Raw\-Datas. \end{DoxyCompactList}\item 
class {\bf S\-I\-O\-Track\-Handler}
\begin{DoxyCompactList}\small\item\em Implementation of \doxyref{S\-I\-O\-Object\-Handler}{p.}{classSIO_1_1SIOObjectHandler} to handle \doxyref{I\-O}{p.}{namespaceIO} of Tracks. \end{DoxyCompactList}\item 
class {\bf S\-I\-O\-Vertex\-Handler}
\begin{DoxyCompactList}\small\item\em Implementation of \doxyref{S\-I\-O\-Object\-Handler}{p.}{classSIO_1_1SIOObjectHandler} to handle \doxyref{I\-O}{p.}{namespaceIO} of Vertexes. \end{DoxyCompactList}\item 
class {\bf S\-I\-O\-Writer}
\begin{DoxyCompactList}\small\item\em Concrete implementation of L\-C\-Writer using \doxyref{S\-I\-O}{p.}{namespaceSIO}. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Typedefs}
\begin{DoxyCompactItemize}
\item 
typedef std\-::map$<$ std\-::string, \\*
{\bf S\-I\-O\-Object\-Handler} $\ast$ $>$ {\bfseries S\-I\-O\-Handler\-Map}\label{namespaceSIO_ab851cfe606f0ff73db8d3688112703da}

\end{DoxyCompactItemize}
\subsection*{Functions}
\begin{DoxyCompactItemize}
\item 
std\-::ostream \& {\bfseries operator$<$$<$} (std\-::ostream \&os, const {\bf Run\-Event} \&re)\label{namespaceSIO_a1fba5c6ead28d151b70081d4f4757673}

\item 
bool {\bfseries operator$<$} (const {\bf Run\-Event} \&r0, const {\bf Run\-Event} \&other)\label{namespaceSIO_a3d67f83599fed97daed4868e1b9a156e}

\item 
std\-::ostream \& {\bfseries operator$<$$<$} (std\-::ostream \&os, const {\bf L\-C\-I\-O\-Random\-Access} \&ra)\label{namespaceSIO_af46fa5ad1487933f4f6ed4b9a4b4cf21}

\item 
bool {\bfseries operator$<$} (const {\bf L\-C\-I\-O\-Random\-Access} ra0, const {\bf L\-C\-I\-O\-Random\-Access} \&other)\label{namespaceSIO_a68a8ef1d328b9cdc6f96c2c21af6a111}

\item 
std\-::ostream \& {\bfseries operator$<$$<$} (std\-::ostream \&os, const {\bf L\-C\-I\-O\-Random\-Access\-Mgr} \&ra)\label{namespaceSIO_a0a864178ed4e117f7a8899ea1eb739e8}

\item 
std\-::ostream \& {\bfseries operator$<$$<$} (std\-::ostream \&os, const {\bf Run\-Event\-Map} \&rm)\label{namespaceSIO_af20a213b64f569ddc3d270fda21e11e8}

\end{DoxyCompactItemize}


\subsection{Detailed Description}
The \doxyref{S\-I\-O}{p.}{namespaceSIO} namespace holds the persistency implementation using \doxyref{S\-I\-O}{p.}{namespaceSIO}. Users should not use any of the classes defined here explicitly but through their base interfaces defined in \doxyref{I\-O}{p.}{namespaceIO}. 