\hypertarget{class_d_d4hep_1_1dd4hep__file}{\section{D\-D4hep\-:\-:dd4hep\-\_\-file$<$ T $>$ Class Template Reference}
\label{class_d_d4hep_1_1dd4hep__file}\index{D\-D4hep\-::dd4hep\-\_\-file$<$ T $>$@{D\-D4hep\-::dd4hep\-\_\-file$<$ T $>$}}
}


\hyperlink{namespace_d_d4hep}{D\-D4hep} file handling extension to boost\-::iostreams.  




{\ttfamily \#include $<$Io\-Streams.\-h$>$}

Inheritance diagram for D\-D4hep\-:\-:dd4hep\-\_\-file$<$ T $>$\-:\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=2.000000cm]{class_d_d4hep_1_1dd4hep__file}
\end{center}
\end{figure}
\subsection*{Classes}
\begin{DoxyCompactItemize}
\item 
struct \hyperlink{struct_d_d4hep_1_1dd4hep__file_1_1category}{category}
\end{DoxyCompactItemize}
\subsection*{Public Types}
\begin{DoxyCompactItemize}
\item 
typedef \hyperlink{class_t}{T} \hyperlink{class_d_d4hep_1_1dd4hep__file_a4d79f8d433cd7831ff818691424cd6fc}{handle\-\_\-type}
\item 
typedef char \hyperlink{class_d_d4hep_1_1dd4hep__file_aef4242f7f2fe15a59f7bf7a8f6ba24d5}{char\-\_\-type}
\item 
typedef \\*
boost\-::iostreams\-::stream\-\_\-offset \hyperlink{class_d_d4hep_1_1dd4hep__file_a28e1531542193871075e8b7f47818113}{stream\-\_\-offset}
\item 
typedef \\*
boost\-::iostreams\-::detail\-::path \hyperlink{class_d_d4hep_1_1dd4hep__file_a1dc19fee9af970892ad53dd7eadc5426}{detail\-\_\-path}
\end{DoxyCompactItemize}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\hyperlink{class_d_d4hep_1_1dd4hep__file_ac14f4f89341ab662c41c0b1de784c458}{dd4hep\-\_\-file} ()
\item 
\hyperlink{class_d_d4hep_1_1dd4hep__file_a171ba6ea4aa627da95bfd8bb7d8aa7a2}{dd4hep\-\_\-file} (\hyperlink{class_d_d4hep_1_1dd4hep__file_a4d79f8d433cd7831ff818691424cd6fc}{handle\-\_\-type} fd, \hyperlink{namespace_d_d4hep_a31d19f9b0ce567067d2897fbda1761e5}{dd4hep\-\_\-file\-\_\-flags})
\item 
\hyperlink{class_d_d4hep_1_1dd4hep__file_a7d25851ca4633fca12a3d23ec2eb4fe1}{dd4hep\-\_\-file} (const char $\ast$fname, B\-O\-O\-S\-T\-\_\-\-I\-O\-S\-::openmode mode)
\item 
void \hyperlink{class_d_d4hep_1_1dd4hep__file_a5f7da6679da9dbc31f37c85e51d7dd94}{open} (\hyperlink{class_d_d4hep_1_1dd4hep__file_a4d79f8d433cd7831ff818691424cd6fc}{handle\-\_\-type} fd, \hyperlink{namespace_d_d4hep_a31d19f9b0ce567067d2897fbda1761e5}{dd4hep\-\_\-file\-\_\-flags} flags)
\item 
void \hyperlink{class_d_d4hep_1_1dd4hep__file_a44e65364ed22ce152f237541e0391dcc}{open} (const char $\ast$path, B\-O\-O\-S\-T\-\_\-\-I\-O\-S\-::openmode mode=B\-O\-O\-S\-T\-\_\-\-I\-O\-S\-::in$\vert$B\-O\-O\-S\-T\-\_\-\-I\-O\-S\-::out)
\item 
bool \hyperlink{class_d_d4hep_1_1dd4hep__file_a47a3a4df1f886d13b4611fe4bec459b9}{is\-\_\-open} () const 
\item 
void \hyperlink{class_d_d4hep_1_1dd4hep__file_afdabf56b0a0af86b2199e075ab1b2499}{close} ()
\item 
std\-::streamsize \hyperlink{class_d_d4hep_1_1dd4hep__file_a3becd552128a6306644b5ff9bd19c493}{read} (\hyperlink{class_d_d4hep_1_1dd4hep__file_aef4242f7f2fe15a59f7bf7a8f6ba24d5}{char\-\_\-type} $\ast$\hyperlink{_volumes_8cpp_a17ca6bfc8040d695d3cada22a4763d40}{s}, std\-::streamsize n)
\item 
std\-::streamsize \hyperlink{class_d_d4hep_1_1dd4hep__file_a33bb5fb24cdaf006ff9143d0d03f9bd3}{write} (const \hyperlink{class_d_d4hep_1_1dd4hep__file_aef4242f7f2fe15a59f7bf7a8f6ba24d5}{char\-\_\-type} $\ast$\hyperlink{_volumes_8cpp_a17ca6bfc8040d695d3cada22a4763d40}{s}, std\-::streamsize n)
\item 
std\-::streampos \hyperlink{class_d_d4hep_1_1dd4hep__file_a202c036e68f217e7a902819eb83ec2f3}{seek} (\hyperlink{class_d_d4hep_1_1dd4hep__file_a28e1531542193871075e8b7f47818113}{stream\-\_\-offset} off, B\-O\-O\-S\-T\-\_\-\-I\-O\-S\-::seekdir way)
\item 
\hyperlink{class_d_d4hep_1_1dd4hep__file_a4d79f8d433cd7831ff818691424cd6fc}{handle\-\_\-type} \hyperlink{class_d_d4hep_1_1dd4hep__file_abad64676eda7a137560b48492beb8f24}{handle} () const 
\item 
{\footnotesize template$<$$>$ }\\void \hyperlink{class_d_d4hep_1_1dd4hep__file_adc9dd31804b03c96f3fdb4525b97d96e}{open} (const char $\ast$path, B\-O\-O\-S\-T\-\_\-\-I\-O\-S\-::openmode mode)
\item 
{\footnotesize template$<$$>$ }\\\hyperlink{class_d_d4hep_1_1dd4hep__file_a3f83e5deac4f7d0bfe20b94d1a87ac7d}{dd4hep\-\_\-file} (\hyperlink{class_d_d4hep_1_1dd4hep__file_a4d79f8d433cd7831ff818691424cd6fc}{handle\-\_\-type} fd, \hyperlink{namespace_d_d4hep_a31d19f9b0ce567067d2897fbda1761e5}{dd4hep\-\_\-file\-\_\-flags} flags)
\item 
{\footnotesize template$<$$>$ }\\\hyperlink{class_d_d4hep_1_1dd4hep__file_a5fd6e1774efbf1c77ab299d32d89b2d5}{dd4hep\-\_\-file} (const char $\ast$fn, B\-O\-O\-S\-T\-\_\-\-I\-O\-S\-::openmode mode)
\item 
{\footnotesize template$<$$>$ }\\std\-::streamsize \hyperlink{class_d_d4hep_1_1dd4hep__file_ac00bb0ccc6724f941f071fb9d2ea76c4}{read} (\hyperlink{class_d_d4hep_1_1dd4hep__file_aef4242f7f2fe15a59f7bf7a8f6ba24d5}{char\-\_\-type} $\ast$\hyperlink{_volumes_8cpp_a17ca6bfc8040d695d3cada22a4763d40}{s}, std\-::streamsize n)
\item 
{\footnotesize template$<$$>$ }\\std\-::streamsize \hyperlink{class_d_d4hep_1_1dd4hep__file_aaa76e0a0640001e28c8a46716f2332fd}{write} (const \hyperlink{class_d_d4hep_1_1dd4hep__file_aef4242f7f2fe15a59f7bf7a8f6ba24d5}{char\-\_\-type} $\ast$\hyperlink{_volumes_8cpp_a17ca6bfc8040d695d3cada22a4763d40}{s}, std\-::streamsize n)
\item 
{\footnotesize template$<$$>$ }\\std\-::streampos \hyperlink{class_d_d4hep_1_1dd4hep__file_a13e0c4c08c5b6c0968df3d254853933e}{seek} (\hyperlink{class_d_d4hep_1_1dd4hep__file_a28e1531542193871075e8b7f47818113}{stream\-\_\-offset} off, B\-O\-O\-S\-T\-\_\-\-I\-O\-S\-::seekdir way)
\item 
{\footnotesize template$<$$>$ }\\void \hyperlink{class_d_d4hep_1_1dd4hep__file_ae2852ad5cdd51d7b2a114d0634dad993}{close} ()
\item 
{\footnotesize template$<$$>$ }\\void \hyperlink{class_d_d4hep_1_1dd4hep__file_aa578d0326b3a566f21afcada83a3a1d6}{open} (const char $\ast$path, B\-O\-O\-S\-T\-\_\-\-I\-O\-S\-::openmode mode)
\item 
{\footnotesize template$<$$>$ }\\\hyperlink{class_d_d4hep_1_1dd4hep__file_a3039b0b69b93de966457883bd6893026}{dd4hep\-\_\-file} (\hyperlink{class_d_d4hep_1_1dd4hep__file_a4d79f8d433cd7831ff818691424cd6fc}{handle\-\_\-type} fd, \hyperlink{namespace_d_d4hep_a31d19f9b0ce567067d2897fbda1761e5}{dd4hep\-\_\-file\-\_\-flags} flags)
\item 
{\footnotesize template$<$$>$ }\\\hyperlink{class_d_d4hep_1_1dd4hep__file_aa1f1a5bfdaae699856ca5bf69be37531}{dd4hep\-\_\-file} (const char $\ast$fname, B\-O\-O\-S\-T\-\_\-\-I\-O\-S\-::openmode mode)
\item 
{\footnotesize template$<$$>$ }\\std\-::streamsize \hyperlink{class_d_d4hep_1_1dd4hep__file_a215a98857667d16d6def78858cd26e42}{read} (\hyperlink{class_d_d4hep_1_1dd4hep__file_aef4242f7f2fe15a59f7bf7a8f6ba24d5}{char\-\_\-type} $\ast$\hyperlink{_volumes_8cpp_a17ca6bfc8040d695d3cada22a4763d40}{s}, std\-::streamsize n)
\item 
{\footnotesize template$<$$>$ }\\std\-::streamsize \hyperlink{class_d_d4hep_1_1dd4hep__file_ab165475b5ef2872deda4b955384063ff}{write} (const \hyperlink{class_d_d4hep_1_1dd4hep__file_aef4242f7f2fe15a59f7bf7a8f6ba24d5}{char\-\_\-type} $\ast$\hyperlink{_volumes_8cpp_a17ca6bfc8040d695d3cada22a4763d40}{s}, std\-::streamsize n)
\item 
{\footnotesize template$<$$>$ }\\std\-::streampos \hyperlink{class_d_d4hep_1_1dd4hep__file_a0cdbacb2c6bd80183636a18c711f3c13}{seek} (\hyperlink{class_d_d4hep_1_1dd4hep__file_a28e1531542193871075e8b7f47818113}{stream\-\_\-offset} off, B\-O\-O\-S\-T\-\_\-\-I\-O\-S\-::seekdir way)
\item 
{\footnotesize template$<$$>$ }\\void \hyperlink{class_d_d4hep_1_1dd4hep__file_a5f05024772ae9f03845bc14443a99354}{close} ()
\end{DoxyCompactItemize}
\subsection*{Private Attributes}
\begin{DoxyCompactItemize}
\item 
\hyperlink{class_d_d4hep_1_1dd4hep__file_a4d79f8d433cd7831ff818691424cd6fc}{handle\-\_\-type} \hyperlink{class_d_d4hep_1_1dd4hep__file_a198f202b4b952426543a8df41a21a232}{m\-\_\-handle}
\item 
\hyperlink{namespace_d_d4hep_a31d19f9b0ce567067d2897fbda1761e5}{dd4hep\-\_\-file\-\_\-flags} \hyperlink{class_d_d4hep_1_1dd4hep__file_ae278513f83e549eda9cf0e01998a6726}{m\-\_\-flag}
\end{DoxyCompactItemize}
\subsection*{Friends}
\begin{DoxyCompactItemize}
\item 
class \hyperlink{class_d_d4hep_1_1dd4hep__file_a6b3fcc7f94c708f7b47316d1ac4b1cf4}{dd4hep\-\_\-file\-\_\-source$<$ T $>$}
\item 
class \hyperlink{class_d_d4hep_1_1dd4hep__file_a0fff7b3c8e8c9c913c387a26c6829a36}{dd4hep\-\_\-file\-\_\-sink$<$ T $>$}
\end{DoxyCompactItemize}


\subsection{Detailed Description}
\subsubsection*{template$<$typename T$>$class D\-D4hep\-::dd4hep\-\_\-file$<$ T $>$}

\hyperlink{namespace_d_d4hep}{D\-D4hep} file handling extension to boost\-::iostreams. 

Basic file handling for data sources and data sinks. Please see boost\-::iostreams for details. This got inspired by boost\-::iostreams\-::device\-::file\-\_\-descriptor

The final aim is to hide all this behind a T\-File object, so that we get the entire network file handling for free!

Note\-: Credits go to a large extend to the authors of boost\-::iostreams. Without their work I could not have done this!

\begin{DoxyAuthor}{Author}
M.\-Frank 
\end{DoxyAuthor}
\begin{DoxyVersion}{Version}
1.\-0
\end{DoxyVersion}
\begin{DoxySeeAlso}{See Also}
\href{http://www.boost.org/libs/iostreams}{\tt http\-://www.\-boost.\-org/libs/iostreams} for further documentation. 
\end{DoxySeeAlso}


Definition at line 74 of file Io\-Streams.\-h.



\subsection{Member Typedef Documentation}
\hypertarget{class_d_d4hep_1_1dd4hep__file_aef4242f7f2fe15a59f7bf7a8f6ba24d5}{\index{D\-D4hep\-::dd4hep\-\_\-file@{D\-D4hep\-::dd4hep\-\_\-file}!char\-\_\-type@{char\-\_\-type}}
\index{char\-\_\-type@{char\-\_\-type}!DD4hep::dd4hep_file@{D\-D4hep\-::dd4hep\-\_\-file}}
\subsubsection[{char\-\_\-type}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename T $>$ typedef char {\bf D\-D4hep\-::dd4hep\-\_\-file}$<$ {\bf T} $>$\-::{\bf char\-\_\-type}}}\label{class_d_d4hep_1_1dd4hep__file_aef4242f7f2fe15a59f7bf7a8f6ba24d5}


Definition at line 79 of file Io\-Streams.\-h.

\hypertarget{class_d_d4hep_1_1dd4hep__file_a1dc19fee9af970892ad53dd7eadc5426}{\index{D\-D4hep\-::dd4hep\-\_\-file@{D\-D4hep\-::dd4hep\-\_\-file}!detail\-\_\-path@{detail\-\_\-path}}
\index{detail\-\_\-path@{detail\-\_\-path}!DD4hep::dd4hep_file@{D\-D4hep\-::dd4hep\-\_\-file}}
\subsubsection[{detail\-\_\-path}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename T $>$ typedef boost\-::iostreams\-::detail\-::path {\bf D\-D4hep\-::dd4hep\-\_\-file}$<$ {\bf T} $>$\-::{\bf detail\-\_\-path}}}\label{class_d_d4hep_1_1dd4hep__file_a1dc19fee9af970892ad53dd7eadc5426}


Definition at line 81 of file Io\-Streams.\-h.

\hypertarget{class_d_d4hep_1_1dd4hep__file_a4d79f8d433cd7831ff818691424cd6fc}{\index{D\-D4hep\-::dd4hep\-\_\-file@{D\-D4hep\-::dd4hep\-\_\-file}!handle\-\_\-type@{handle\-\_\-type}}
\index{handle\-\_\-type@{handle\-\_\-type}!DD4hep::dd4hep_file@{D\-D4hep\-::dd4hep\-\_\-file}}
\subsubsection[{handle\-\_\-type}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename T $>$ typedef {\bf T} {\bf D\-D4hep\-::dd4hep\-\_\-file}$<$ {\bf T} $>$\-::{\bf handle\-\_\-type}}}\label{class_d_d4hep_1_1dd4hep__file_a4d79f8d433cd7831ff818691424cd6fc}


Definition at line 78 of file Io\-Streams.\-h.

\hypertarget{class_d_d4hep_1_1dd4hep__file_a28e1531542193871075e8b7f47818113}{\index{D\-D4hep\-::dd4hep\-\_\-file@{D\-D4hep\-::dd4hep\-\_\-file}!stream\-\_\-offset@{stream\-\_\-offset}}
\index{stream\-\_\-offset@{stream\-\_\-offset}!DD4hep::dd4hep_file@{D\-D4hep\-::dd4hep\-\_\-file}}
\subsubsection[{stream\-\_\-offset}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename T $>$ typedef boost\-::iostreams\-::stream\-\_\-offset {\bf D\-D4hep\-::dd4hep\-\_\-file}$<$ {\bf T} $>$\-::{\bf stream\-\_\-offset}}}\label{class_d_d4hep_1_1dd4hep__file_a28e1531542193871075e8b7f47818113}


Definition at line 80 of file Io\-Streams.\-h.



\subsection{Constructor \& Destructor Documentation}
\hypertarget{class_d_d4hep_1_1dd4hep__file_ac14f4f89341ab662c41c0b1de784c458}{\index{D\-D4hep\-::dd4hep\-\_\-file@{D\-D4hep\-::dd4hep\-\_\-file}!dd4hep\-\_\-file@{dd4hep\-\_\-file}}
\index{dd4hep\-\_\-file@{dd4hep\-\_\-file}!DD4hep::dd4hep_file@{D\-D4hep\-::dd4hep\-\_\-file}}
\subsubsection[{dd4hep\-\_\-file}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename T $>$ {\bf D\-D4hep\-::dd4hep\-\_\-file}$<$ {\bf T} $>$\-::{\bf dd4hep\-\_\-file} (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)\hspace{0.3cm}{\ttfamily [inline]}}}\label{class_d_d4hep_1_1dd4hep__file_ac14f4f89341ab662c41c0b1de784c458}


Definition at line 85 of file Io\-Streams.\-h.

\hypertarget{class_d_d4hep_1_1dd4hep__file_a171ba6ea4aa627da95bfd8bb7d8aa7a2}{\index{D\-D4hep\-::dd4hep\-\_\-file@{D\-D4hep\-::dd4hep\-\_\-file}!dd4hep\-\_\-file@{dd4hep\-\_\-file}}
\index{dd4hep\-\_\-file@{dd4hep\-\_\-file}!DD4hep::dd4hep_file@{D\-D4hep\-::dd4hep\-\_\-file}}
\subsubsection[{dd4hep\-\_\-file}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename T $>$ {\bf D\-D4hep\-::dd4hep\-\_\-file}$<$ {\bf T} $>$\-::{\bf dd4hep\-\_\-file} (
\begin{DoxyParamCaption}
\item[{{\bf handle\-\_\-type}}]{fd, }
\item[{{\bf dd4hep\-\_\-file\-\_\-flags}}]{}
\end{DoxyParamCaption}
)}}\label{class_d_d4hep_1_1dd4hep__file_a171ba6ea4aa627da95bfd8bb7d8aa7a2}
\hypertarget{class_d_d4hep_1_1dd4hep__file_a7d25851ca4633fca12a3d23ec2eb4fe1}{\index{D\-D4hep\-::dd4hep\-\_\-file@{D\-D4hep\-::dd4hep\-\_\-file}!dd4hep\-\_\-file@{dd4hep\-\_\-file}}
\index{dd4hep\-\_\-file@{dd4hep\-\_\-file}!DD4hep::dd4hep_file@{D\-D4hep\-::dd4hep\-\_\-file}}
\subsubsection[{dd4hep\-\_\-file}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename T $>$ {\bf D\-D4hep\-::dd4hep\-\_\-file}$<$ {\bf T} $>$\-::{\bf dd4hep\-\_\-file} (
\begin{DoxyParamCaption}
\item[{const char $\ast$}]{fname, }
\item[{B\-O\-O\-S\-T\-\_\-\-I\-O\-S\-::openmode}]{mode}
\end{DoxyParamCaption}
)}}\label{class_d_d4hep_1_1dd4hep__file_a7d25851ca4633fca12a3d23ec2eb4fe1}
\hypertarget{class_d_d4hep_1_1dd4hep__file_a3f83e5deac4f7d0bfe20b94d1a87ac7d}{\index{D\-D4hep\-::dd4hep\-\_\-file@{D\-D4hep\-::dd4hep\-\_\-file}!dd4hep\-\_\-file@{dd4hep\-\_\-file}}
\index{dd4hep\-\_\-file@{dd4hep\-\_\-file}!DD4hep::dd4hep_file@{D\-D4hep\-::dd4hep\-\_\-file}}
\subsubsection[{dd4hep\-\_\-file}]{\setlength{\rightskip}{0pt plus 5cm}template$<$$>$ {\bf D\-D4hep\-::dd4hep\-\_\-file}$<$ int $>$\-::{\bf dd4hep\-\_\-file} (
\begin{DoxyParamCaption}
\item[{{\bf handle\-\_\-type}}]{fd, }
\item[{{\bf dd4hep\-\_\-file\-\_\-flags}}]{flags}
\end{DoxyParamCaption}
)}}\label{class_d_d4hep_1_1dd4hep__file_a3f83e5deac4f7d0bfe20b94d1a87ac7d}


Definition at line 54 of file Io\-Streams.\-cpp.

\hypertarget{class_d_d4hep_1_1dd4hep__file_a5fd6e1774efbf1c77ab299d32d89b2d5}{\index{D\-D4hep\-::dd4hep\-\_\-file@{D\-D4hep\-::dd4hep\-\_\-file}!dd4hep\-\_\-file@{dd4hep\-\_\-file}}
\index{dd4hep\-\_\-file@{dd4hep\-\_\-file}!DD4hep::dd4hep_file@{D\-D4hep\-::dd4hep\-\_\-file}}
\subsubsection[{dd4hep\-\_\-file}]{\setlength{\rightskip}{0pt plus 5cm}template$<$$>$ {\bf D\-D4hep\-::dd4hep\-\_\-file}$<$ int $>$\-::{\bf dd4hep\-\_\-file} (
\begin{DoxyParamCaption}
\item[{const char $\ast$}]{fn, }
\item[{B\-O\-O\-S\-T\-\_\-\-I\-O\-S\-::openmode}]{mode}
\end{DoxyParamCaption}
)}}\label{class_d_d4hep_1_1dd4hep__file_a5fd6e1774efbf1c77ab299d32d89b2d5}


Definition at line 58 of file Io\-Streams.\-cpp.



References D\-D4hep\-::dd4hep\-\_\-file$<$ T $>$\-::open().

\hypertarget{class_d_d4hep_1_1dd4hep__file_a3039b0b69b93de966457883bd6893026}{\index{D\-D4hep\-::dd4hep\-\_\-file@{D\-D4hep\-::dd4hep\-\_\-file}!dd4hep\-\_\-file@{dd4hep\-\_\-file}}
\index{dd4hep\-\_\-file@{dd4hep\-\_\-file}!DD4hep::dd4hep_file@{D\-D4hep\-::dd4hep\-\_\-file}}
\subsubsection[{dd4hep\-\_\-file}]{\setlength{\rightskip}{0pt plus 5cm}template$<$$>$ {\bf D\-D4hep\-::dd4hep\-\_\-file}$<$ T\-File $\ast$ $>$\-::{\bf dd4hep\-\_\-file} (
\begin{DoxyParamCaption}
\item[{{\bf handle\-\_\-type}}]{fd, }
\item[{{\bf dd4hep\-\_\-file\-\_\-flags}}]{flags}
\end{DoxyParamCaption}
)}}\label{class_d_d4hep_1_1dd4hep__file_a3039b0b69b93de966457883bd6893026}


Definition at line 100 of file Io\-Streams.\-cpp.

\hypertarget{class_d_d4hep_1_1dd4hep__file_aa1f1a5bfdaae699856ca5bf69be37531}{\index{D\-D4hep\-::dd4hep\-\_\-file@{D\-D4hep\-::dd4hep\-\_\-file}!dd4hep\-\_\-file@{dd4hep\-\_\-file}}
\index{dd4hep\-\_\-file@{dd4hep\-\_\-file}!DD4hep::dd4hep_file@{D\-D4hep\-::dd4hep\-\_\-file}}
\subsubsection[{dd4hep\-\_\-file}]{\setlength{\rightskip}{0pt plus 5cm}template$<$$>$ {\bf D\-D4hep\-::dd4hep\-\_\-file}$<$ T\-File $\ast$ $>$\-::{\bf dd4hep\-\_\-file} (
\begin{DoxyParamCaption}
\item[{const char $\ast$}]{fname, }
\item[{B\-O\-O\-S\-T\-\_\-\-I\-O\-S\-::openmode}]{mode}
\end{DoxyParamCaption}
)}}\label{class_d_d4hep_1_1dd4hep__file_aa1f1a5bfdaae699856ca5bf69be37531}


Definition at line 104 of file Io\-Streams.\-cpp.



References D\-D4hep\-::dd4hep\-\_\-file$<$ T $>$\-::open().



\subsection{Member Function Documentation}
\hypertarget{class_d_d4hep_1_1dd4hep__file_ae2852ad5cdd51d7b2a114d0634dad993}{\index{D\-D4hep\-::dd4hep\-\_\-file@{D\-D4hep\-::dd4hep\-\_\-file}!close@{close}}
\index{close@{close}!DD4hep::dd4hep_file@{D\-D4hep\-::dd4hep\-\_\-file}}
\subsubsection[{close}]{\setlength{\rightskip}{0pt plus 5cm}template$<$$>$ void {\bf D\-D4hep\-::dd4hep\-\_\-file}$<$ int $>$\-::close (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)}}\label{class_d_d4hep_1_1dd4hep__file_ae2852ad5cdd51d7b2a114d0634dad993}


Definition at line 74 of file Io\-Streams.\-cpp.

\hypertarget{class_d_d4hep_1_1dd4hep__file_afdabf56b0a0af86b2199e075ab1b2499}{\index{D\-D4hep\-::dd4hep\-\_\-file@{D\-D4hep\-::dd4hep\-\_\-file}!close@{close}}
\index{close@{close}!DD4hep::dd4hep_file@{D\-D4hep\-::dd4hep\-\_\-file}}
\subsubsection[{close}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename T $>$ void {\bf D\-D4hep\-::dd4hep\-\_\-file}$<$ {\bf T} $>$\-::close (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)}}\label{class_d_d4hep_1_1dd4hep__file_afdabf56b0a0af86b2199e075ab1b2499}
\hypertarget{class_d_d4hep_1_1dd4hep__file_a5f05024772ae9f03845bc14443a99354}{\index{D\-D4hep\-::dd4hep\-\_\-file@{D\-D4hep\-::dd4hep\-\_\-file}!close@{close}}
\index{close@{close}!DD4hep::dd4hep_file@{D\-D4hep\-::dd4hep\-\_\-file}}
\subsubsection[{close}]{\setlength{\rightskip}{0pt plus 5cm}template$<$$>$ void {\bf D\-D4hep\-::dd4hep\-\_\-file}$<$ T\-File $\ast$ $>$\-::close (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
)}}\label{class_d_d4hep_1_1dd4hep__file_a5f05024772ae9f03845bc14443a99354}


Definition at line 129 of file Io\-Streams.\-cpp.

\hypertarget{class_d_d4hep_1_1dd4hep__file_abad64676eda7a137560b48492beb8f24}{\index{D\-D4hep\-::dd4hep\-\_\-file@{D\-D4hep\-::dd4hep\-\_\-file}!handle@{handle}}
\index{handle@{handle}!DD4hep::dd4hep_file@{D\-D4hep\-::dd4hep\-\_\-file}}
\subsubsection[{handle}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename T $>$ {\bf handle\-\_\-type} {\bf D\-D4hep\-::dd4hep\-\_\-file}$<$ {\bf T} $>$\-::handle (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily [inline]}}}\label{class_d_d4hep_1_1dd4hep__file_abad64676eda7a137560b48492beb8f24}


Definition at line 102 of file Io\-Streams.\-h.



References D\-D4hep\-::dd4hep\-\_\-file$<$ T $>$\-::m\-\_\-handle.

\hypertarget{class_d_d4hep_1_1dd4hep__file_a47a3a4df1f886d13b4611fe4bec459b9}{\index{D\-D4hep\-::dd4hep\-\_\-file@{D\-D4hep\-::dd4hep\-\_\-file}!is\-\_\-open@{is\-\_\-open}}
\index{is\-\_\-open@{is\-\_\-open}!DD4hep::dd4hep_file@{D\-D4hep\-::dd4hep\-\_\-file}}
\subsubsection[{is\-\_\-open}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename T $>$ bool {\bf D\-D4hep\-::dd4hep\-\_\-file}$<$ {\bf T} $>$\-::is\-\_\-open (
\begin{DoxyParamCaption}
{}
\end{DoxyParamCaption}
) const\hspace{0.3cm}{\ttfamily [inline]}}}\label{class_d_d4hep_1_1dd4hep__file_a47a3a4df1f886d13b4611fe4bec459b9}


Definition at line 97 of file Io\-Streams.\-h.



References D\-D4hep\-::dd4hep\-\_\-file$<$ T $>$\-::m\-\_\-handle.

\hypertarget{class_d_d4hep_1_1dd4hep__file_adc9dd31804b03c96f3fdb4525b97d96e}{\index{D\-D4hep\-::dd4hep\-\_\-file@{D\-D4hep\-::dd4hep\-\_\-file}!open@{open}}
\index{open@{open}!DD4hep::dd4hep_file@{D\-D4hep\-::dd4hep\-\_\-file}}
\subsubsection[{open}]{\setlength{\rightskip}{0pt plus 5cm}template$<$$>$ void {\bf D\-D4hep\-::dd4hep\-\_\-file}$<$ int $>$\-::open (
\begin{DoxyParamCaption}
\item[{const char $\ast$}]{path, }
\item[{B\-O\-O\-S\-T\-\_\-\-I\-O\-S\-::openmode}]{mode}
\end{DoxyParamCaption}
)}}\label{class_d_d4hep_1_1dd4hep__file_adc9dd31804b03c96f3fdb4525b97d96e}


Definition at line 48 of file Io\-Streams.\-cpp.

\hypertarget{class_d_d4hep_1_1dd4hep__file_aa578d0326b3a566f21afcada83a3a1d6}{\index{D\-D4hep\-::dd4hep\-\_\-file@{D\-D4hep\-::dd4hep\-\_\-file}!open@{open}}
\index{open@{open}!DD4hep::dd4hep_file@{D\-D4hep\-::dd4hep\-\_\-file}}
\subsubsection[{open}]{\setlength{\rightskip}{0pt plus 5cm}template$<$$>$ void {\bf D\-D4hep\-::dd4hep\-\_\-file}$<$ T\-File $\ast$ $>$\-::open (
\begin{DoxyParamCaption}
\item[{const char $\ast$}]{path, }
\item[{B\-O\-O\-S\-T\-\_\-\-I\-O\-S\-::openmode}]{mode}
\end{DoxyParamCaption}
)}}\label{class_d_d4hep_1_1dd4hep__file_aa578d0326b3a566f21afcada83a3a1d6}


Definition at line 80 of file Io\-Streams.\-cpp.

\hypertarget{class_d_d4hep_1_1dd4hep__file_a5f7da6679da9dbc31f37c85e51d7dd94}{\index{D\-D4hep\-::dd4hep\-\_\-file@{D\-D4hep\-::dd4hep\-\_\-file}!open@{open}}
\index{open@{open}!DD4hep::dd4hep_file@{D\-D4hep\-::dd4hep\-\_\-file}}
\subsubsection[{open}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename T $>$ void {\bf D\-D4hep\-::dd4hep\-\_\-file}$<$ {\bf T} $>$\-::open (
\begin{DoxyParamCaption}
\item[{{\bf handle\-\_\-type}}]{fd, }
\item[{{\bf dd4hep\-\_\-file\-\_\-flags}}]{flags}
\end{DoxyParamCaption}
)}}\label{class_d_d4hep_1_1dd4hep__file_a5f7da6679da9dbc31f37c85e51d7dd94}


Referenced by D\-D4hep\-::dd4hep\-\_\-file$<$ T $>$\-::dd4hep\-\_\-file(), D\-D4hep\-::dd4hep\-\_\-file\-\_\-source$<$ T $>$\-::open(), and D\-D4hep\-::dd4hep\-\_\-file\-\_\-sink$<$ T $>$\-::open().

\hypertarget{class_d_d4hep_1_1dd4hep__file_a44e65364ed22ce152f237541e0391dcc}{\index{D\-D4hep\-::dd4hep\-\_\-file@{D\-D4hep\-::dd4hep\-\_\-file}!open@{open}}
\index{open@{open}!DD4hep::dd4hep_file@{D\-D4hep\-::dd4hep\-\_\-file}}
\subsubsection[{open}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename T $>$ void {\bf D\-D4hep\-::dd4hep\-\_\-file}$<$ {\bf T} $>$\-::open (
\begin{DoxyParamCaption}
\item[{const char $\ast$}]{path, }
\item[{B\-O\-O\-S\-T\-\_\-\-I\-O\-S\-::openmode}]{mode = {\ttfamily BOOST\-\_\-IOS\-:\-:in$\vert$BOOST\-\_\-IOS\-:\-:out}}
\end{DoxyParamCaption}
)}}\label{class_d_d4hep_1_1dd4hep__file_a44e65364ed22ce152f237541e0391dcc}
\hypertarget{class_d_d4hep_1_1dd4hep__file_ac00bb0ccc6724f941f071fb9d2ea76c4}{\index{D\-D4hep\-::dd4hep\-\_\-file@{D\-D4hep\-::dd4hep\-\_\-file}!read@{read}}
\index{read@{read}!DD4hep::dd4hep_file@{D\-D4hep\-::dd4hep\-\_\-file}}
\subsubsection[{read}]{\setlength{\rightskip}{0pt plus 5cm}template$<$$>$ std\-::streamsize {\bf D\-D4hep\-::dd4hep\-\_\-file}$<$ int $>$\-::read (
\begin{DoxyParamCaption}
\item[{{\bf char\-\_\-type} $\ast$}]{s, }
\item[{std\-::streamsize}]{n}
\end{DoxyParamCaption}
)}}\label{class_d_d4hep_1_1dd4hep__file_ac00bb0ccc6724f941f071fb9d2ea76c4}


Definition at line 62 of file Io\-Streams.\-cpp.

\hypertarget{class_d_d4hep_1_1dd4hep__file_a3becd552128a6306644b5ff9bd19c493}{\index{D\-D4hep\-::dd4hep\-\_\-file@{D\-D4hep\-::dd4hep\-\_\-file}!read@{read}}
\index{read@{read}!DD4hep::dd4hep_file@{D\-D4hep\-::dd4hep\-\_\-file}}
\subsubsection[{read}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename T $>$ std\-::streamsize {\bf D\-D4hep\-::dd4hep\-\_\-file}$<$ {\bf T} $>$\-::read (
\begin{DoxyParamCaption}
\item[{{\bf char\-\_\-type} $\ast$}]{s, }
\item[{std\-::streamsize}]{n}
\end{DoxyParamCaption}
)}}\label{class_d_d4hep_1_1dd4hep__file_a3becd552128a6306644b5ff9bd19c493}
\hypertarget{class_d_d4hep_1_1dd4hep__file_a215a98857667d16d6def78858cd26e42}{\index{D\-D4hep\-::dd4hep\-\_\-file@{D\-D4hep\-::dd4hep\-\_\-file}!read@{read}}
\index{read@{read}!DD4hep::dd4hep_file@{D\-D4hep\-::dd4hep\-\_\-file}}
\subsubsection[{read}]{\setlength{\rightskip}{0pt plus 5cm}template$<$$>$ std\-::streamsize {\bf D\-D4hep\-::dd4hep\-\_\-file}$<$ T\-File $\ast$ $>$\-::read (
\begin{DoxyParamCaption}
\item[{{\bf char\-\_\-type} $\ast$}]{s, }
\item[{std\-::streamsize}]{n}
\end{DoxyParamCaption}
)}}\label{class_d_d4hep_1_1dd4hep__file_a215a98857667d16d6def78858cd26e42}


Definition at line 108 of file Io\-Streams.\-cpp.



References \-\_\-p.

\hypertarget{class_d_d4hep_1_1dd4hep__file_a13e0c4c08c5b6c0968df3d254853933e}{\index{D\-D4hep\-::dd4hep\-\_\-file@{D\-D4hep\-::dd4hep\-\_\-file}!seek@{seek}}
\index{seek@{seek}!DD4hep::dd4hep_file@{D\-D4hep\-::dd4hep\-\_\-file}}
\subsubsection[{seek}]{\setlength{\rightskip}{0pt plus 5cm}template$<$$>$ std\-::streampos {\bf D\-D4hep\-::dd4hep\-\_\-file}$<$ int $>$\-::seek (
\begin{DoxyParamCaption}
\item[{{\bf stream\-\_\-offset}}]{off, }
\item[{B\-O\-O\-S\-T\-\_\-\-I\-O\-S\-::seekdir}]{way}
\end{DoxyParamCaption}
)}}\label{class_d_d4hep_1_1dd4hep__file_a13e0c4c08c5b6c0968df3d254853933e}


Definition at line 70 of file Io\-Streams.\-cpp.

\hypertarget{class_d_d4hep_1_1dd4hep__file_a202c036e68f217e7a902819eb83ec2f3}{\index{D\-D4hep\-::dd4hep\-\_\-file@{D\-D4hep\-::dd4hep\-\_\-file}!seek@{seek}}
\index{seek@{seek}!DD4hep::dd4hep_file@{D\-D4hep\-::dd4hep\-\_\-file}}
\subsubsection[{seek}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename T $>$ std\-::streampos {\bf D\-D4hep\-::dd4hep\-\_\-file}$<$ {\bf T} $>$\-::seek (
\begin{DoxyParamCaption}
\item[{{\bf stream\-\_\-offset}}]{off, }
\item[{B\-O\-O\-S\-T\-\_\-\-I\-O\-S\-::seekdir}]{way}
\end{DoxyParamCaption}
)}}\label{class_d_d4hep_1_1dd4hep__file_a202c036e68f217e7a902819eb83ec2f3}
\hypertarget{class_d_d4hep_1_1dd4hep__file_a0cdbacb2c6bd80183636a18c711f3c13}{\index{D\-D4hep\-::dd4hep\-\_\-file@{D\-D4hep\-::dd4hep\-\_\-file}!seek@{seek}}
\index{seek@{seek}!DD4hep::dd4hep_file@{D\-D4hep\-::dd4hep\-\_\-file}}
\subsubsection[{seek}]{\setlength{\rightskip}{0pt plus 5cm}template$<$$>$ std\-::streampos {\bf D\-D4hep\-::dd4hep\-\_\-file}$<$ T\-File $\ast$ $>$\-::seek (
\begin{DoxyParamCaption}
\item[{{\bf stream\-\_\-offset}}]{off, }
\item[{B\-O\-O\-S\-T\-\_\-\-I\-O\-S\-::seekdir}]{way}
\end{DoxyParamCaption}
)}}\label{class_d_d4hep_1_1dd4hep__file_a0cdbacb2c6bd80183636a18c711f3c13}


Definition at line 125 of file Io\-Streams.\-cpp.



References \-\_\-p.

\hypertarget{class_d_d4hep_1_1dd4hep__file_aaa76e0a0640001e28c8a46716f2332fd}{\index{D\-D4hep\-::dd4hep\-\_\-file@{D\-D4hep\-::dd4hep\-\_\-file}!write@{write}}
\index{write@{write}!DD4hep::dd4hep_file@{D\-D4hep\-::dd4hep\-\_\-file}}
\subsubsection[{write}]{\setlength{\rightskip}{0pt plus 5cm}template$<$$>$ std\-::streamsize {\bf D\-D4hep\-::dd4hep\-\_\-file}$<$ int $>$\-::write (
\begin{DoxyParamCaption}
\item[{const {\bf char\-\_\-type} $\ast$}]{s, }
\item[{std\-::streamsize}]{n}
\end{DoxyParamCaption}
)}}\label{class_d_d4hep_1_1dd4hep__file_aaa76e0a0640001e28c8a46716f2332fd}


Definition at line 66 of file Io\-Streams.\-cpp.

\hypertarget{class_d_d4hep_1_1dd4hep__file_a33bb5fb24cdaf006ff9143d0d03f9bd3}{\index{D\-D4hep\-::dd4hep\-\_\-file@{D\-D4hep\-::dd4hep\-\_\-file}!write@{write}}
\index{write@{write}!DD4hep::dd4hep_file@{D\-D4hep\-::dd4hep\-\_\-file}}
\subsubsection[{write}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename T $>$ std\-::streamsize {\bf D\-D4hep\-::dd4hep\-\_\-file}$<$ {\bf T} $>$\-::write (
\begin{DoxyParamCaption}
\item[{const {\bf char\-\_\-type} $\ast$}]{s, }
\item[{std\-::streamsize}]{n}
\end{DoxyParamCaption}
)}}\label{class_d_d4hep_1_1dd4hep__file_a33bb5fb24cdaf006ff9143d0d03f9bd3}
\hypertarget{class_d_d4hep_1_1dd4hep__file_ab165475b5ef2872deda4b955384063ff}{\index{D\-D4hep\-::dd4hep\-\_\-file@{D\-D4hep\-::dd4hep\-\_\-file}!write@{write}}
\index{write@{write}!DD4hep::dd4hep_file@{D\-D4hep\-::dd4hep\-\_\-file}}
\subsubsection[{write}]{\setlength{\rightskip}{0pt plus 5cm}template$<$$>$ std\-::streamsize {\bf D\-D4hep\-::dd4hep\-\_\-file}$<$ T\-File $\ast$ $>$\-::write (
\begin{DoxyParamCaption}
\item[{const {\bf char\-\_\-type} $\ast$}]{s, }
\item[{std\-::streamsize}]{n}
\end{DoxyParamCaption}
)}}\label{class_d_d4hep_1_1dd4hep__file_ab165475b5ef2872deda4b955384063ff}


Definition at line 121 of file Io\-Streams.\-cpp.



References \-\_\-p, and s.



\subsection{Friends And Related Function Documentation}
\hypertarget{class_d_d4hep_1_1dd4hep__file_a0fff7b3c8e8c9c913c387a26c6829a36}{\index{D\-D4hep\-::dd4hep\-\_\-file@{D\-D4hep\-::dd4hep\-\_\-file}!dd4hep\-\_\-file\-\_\-sink$<$ T $>$@{dd4hep\-\_\-file\-\_\-sink$<$ T $>$}}
\index{dd4hep\-\_\-file\-\_\-sink$<$ T $>$@{dd4hep\-\_\-file\-\_\-sink$<$ T $>$}!DD4hep::dd4hep_file@{D\-D4hep\-::dd4hep\-\_\-file}}
\subsubsection[{dd4hep\-\_\-file\-\_\-sink$<$ T $>$}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename T $>$ friend class {\bf dd4hep\-\_\-file\-\_\-sink}$<$ {\bf T} $>$\hspace{0.3cm}{\ttfamily [friend]}}}\label{class_d_d4hep_1_1dd4hep__file_a0fff7b3c8e8c9c913c387a26c6829a36}


Definition at line 77 of file Io\-Streams.\-h.

\hypertarget{class_d_d4hep_1_1dd4hep__file_a6b3fcc7f94c708f7b47316d1ac4b1cf4}{\index{D\-D4hep\-::dd4hep\-\_\-file@{D\-D4hep\-::dd4hep\-\_\-file}!dd4hep\-\_\-file\-\_\-source$<$ T $>$@{dd4hep\-\_\-file\-\_\-source$<$ T $>$}}
\index{dd4hep\-\_\-file\-\_\-source$<$ T $>$@{dd4hep\-\_\-file\-\_\-source$<$ T $>$}!DD4hep::dd4hep_file@{D\-D4hep\-::dd4hep\-\_\-file}}
\subsubsection[{dd4hep\-\_\-file\-\_\-source$<$ T $>$}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename T $>$ friend class {\bf dd4hep\-\_\-file\-\_\-source}$<$ {\bf T} $>$\hspace{0.3cm}{\ttfamily [friend]}}}\label{class_d_d4hep_1_1dd4hep__file_a6b3fcc7f94c708f7b47316d1ac4b1cf4}


Definition at line 76 of file Io\-Streams.\-h.



\subsection{Member Data Documentation}
\hypertarget{class_d_d4hep_1_1dd4hep__file_ae278513f83e549eda9cf0e01998a6726}{\index{D\-D4hep\-::dd4hep\-\_\-file@{D\-D4hep\-::dd4hep\-\_\-file}!m\-\_\-flag@{m\-\_\-flag}}
\index{m\-\_\-flag@{m\-\_\-flag}!DD4hep::dd4hep_file@{D\-D4hep\-::dd4hep\-\_\-file}}
\subsubsection[{m\-\_\-flag}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename T $>$ {\bf dd4hep\-\_\-file\-\_\-flags} {\bf D\-D4hep\-::dd4hep\-\_\-file}$<$ {\bf T} $>$\-::m\-\_\-flag\hspace{0.3cm}{\ttfamily [private]}}}\label{class_d_d4hep_1_1dd4hep__file_ae278513f83e549eda9cf0e01998a6726}


Definition at line 105 of file Io\-Streams.\-h.

\hypertarget{class_d_d4hep_1_1dd4hep__file_a198f202b4b952426543a8df41a21a232}{\index{D\-D4hep\-::dd4hep\-\_\-file@{D\-D4hep\-::dd4hep\-\_\-file}!m\-\_\-handle@{m\-\_\-handle}}
\index{m\-\_\-handle@{m\-\_\-handle}!DD4hep::dd4hep_file@{D\-D4hep\-::dd4hep\-\_\-file}}
\subsubsection[{m\-\_\-handle}]{\setlength{\rightskip}{0pt plus 5cm}template$<$typename T $>$ {\bf handle\-\_\-type} {\bf D\-D4hep\-::dd4hep\-\_\-file}$<$ {\bf T} $>$\-::m\-\_\-handle\hspace{0.3cm}{\ttfamily [private]}}}\label{class_d_d4hep_1_1dd4hep__file_a198f202b4b952426543a8df41a21a232}


Definition at line 104 of file Io\-Streams.\-h.



Referenced by D\-D4hep\-::dd4hep\-\_\-file$<$ T $>$\-::handle(), and D\-D4hep\-::dd4hep\-\_\-file$<$ T $>$\-::is\-\_\-open().



The documentation for this class was generated from the following file\-:\begin{DoxyCompactItemize}
\item 
/opt/ilcsoft/\-H\-E\-A\-D-\/2016-\/12-\/02/\-D\-D4hep/\-H\-E\-A\-D/\-D\-D\-G4/include/\-D\-D\-G4/\hyperlink{_io_streams_8h}{Io\-Streams.\-h}\end{DoxyCompactItemize}
