\hypertarget{classBds_1_1DataFileLog}{}\section{Bds\+::Data\+File\+Log Class Reference}
\label{classBds_1_1DataFileLog}\index{Bds::DataFileLog@{Bds::DataFileLog}}


{\ttfamily \#include $<$Bds\+Data\+File\+Log.\+h$>$}

Inheritance diagram for Bds\+::Data\+File\+Log\+:\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[height=2.000000cm]{classBds_1_1DataFileLog}
\end{center}
\end{figure}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\mbox{\hyperlink{classBds_1_1DataFileLog_a496ec645cd2d02beaf5dfcd5fc63e031}{Data\+File\+Log}} ()
\item 
\textbf{ B\+Error} \mbox{\hyperlink{classBds_1_1DataFileLog_a154333da083ac91b7f169d1983dccba5}{open}} (\textbf{ B\+String} file\+Name, \textbf{ B\+String} mode)
\begin{DoxyCompactList}\small\item\em Open the file for read or write. \end{DoxyCompactList}\item 
\mbox{\hyperlink{classBds_1_1DataFile_a3db096f327de3b65ced78b32aef07f07}{Data\+Order}} \mbox{\hyperlink{classBds_1_1DataFileLog_a2a0b92b319addba3525b83b12bbf4b3e}{get\+Data\+Order}} ()
\begin{DoxyCompactList}\small\item\em Get the expected order of writing data, by sample or by channel. \end{DoxyCompactList}\item 
int \mbox{\hyperlink{classBds_1_1DataFileLog_a08747782c366981b90be4a6d26e8f89b}{get\+Features}} ()
\begin{DoxyCompactList}\small\item\em Get bitmask of supported features. \end{DoxyCompactList}\item 
\textbf{ B\+Error} \mbox{\hyperlink{classBds_1_1DataFileLog_a4614c19c241e31f98671a3d7cd18abf4}{get\+Info}} (\mbox{\hyperlink{classBds_1_1DataInfo}{Data\+Info}} \&data\+Info, \mbox{\hyperlink{classBds_1_1DataFileOptions}{Data\+File\+Options}} options, \textbf{ B\+List}$<$ \mbox{\hyperlink{classBds_1_1DataError}{Data\+Error}} $>$ \&errors)
\begin{DoxyCompactList}\small\item\em Get info on data. \end{DoxyCompactList}\item 
\textbf{ B\+Error} \mbox{\hyperlink{classBds_1_1DataFileLog_a2bff29beb50327c0720668aee6ce6a2e}{read\+Data}} (\textbf{ B\+U\+Int32} channel, \textbf{ B\+U\+Int} segment, \textbf{ B\+U\+Int32} block\+Number, \mbox{\hyperlink{classBds_1_1DataBlock}{Data\+Block}} \&\textbf{ data})
\begin{DoxyCompactList}\small\item\em Read a block. \end{DoxyCompactList}\item 
\textbf{ B\+Error} \mbox{\hyperlink{classBds_1_1DataFileLog_a2040aabfd1b1fe60a0de8fcaf26dd879}{set\+Format}} (\textbf{ B\+String} format)
\begin{DoxyCompactList}\small\item\em Set the sub-\/format. \end{DoxyCompactList}\item 
\textbf{ B\+Error} \mbox{\hyperlink{classBds_1_1DataFileLog_a3c1254edfeffd4b2cc4e3037e588e749}{set\+Info}} (const \mbox{\hyperlink{classBds_1_1DataInfo}{Data\+Info}} \&data\+Info, const \mbox{\hyperlink{classBds_1_1ChannelInfos}{Channel\+Infos}} \&channel\+Infos, \mbox{\hyperlink{classBds_1_1DataFile_a470ee46f21caaaf26365b9503b428153}{Write\+Options\+List}} options=\mbox{\hyperlink{classBds_1_1DataFile_a470ee46f21caaaf26365b9503b428153a420fa6e5eaacb8e210c3ade68bbe64e6}{Write\+Option\+Sensor\+Data}})
\begin{DoxyCompactList}\small\item\em Set information on data for write. \end{DoxyCompactList}\item 
\textbf{ B\+Error} \mbox{\hyperlink{classBds_1_1DataFileLog_a5a319163903ffc76151588c95b2e23a2}{start}} (\textbf{ B\+U\+Int} channel, \textbf{ B\+U\+Int} segment)
\begin{DoxyCompactList}\small\item\em Start next segment of data. \end{DoxyCompactList}\item 
\textbf{ B\+Error} \mbox{\hyperlink{classBds_1_1DataFileLog_acc2a580e5550a0add27da4afea5486ca}{write\+Data}} (const \mbox{\hyperlink{classBds_1_1DataBlock}{Data\+Block}} \&\textbf{ data})
\begin{DoxyCompactList}\small\item\em Write a block of data. \end{DoxyCompactList}\item 
\textbf{ B\+Error} \mbox{\hyperlink{classBds_1_1DataFileLog_a7d399659d6d729fcb1714ec4c97e7da5}{end}} ()
\begin{DoxyCompactList}\small\item\em End segment. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Static Public Member Functions}
\begin{DoxyCompactItemize}
\item 
static \mbox{\hyperlink{classBds_1_1DataFormat}{Data\+Format}} \mbox{\hyperlink{classBds_1_1DataFileLog_a5c552d974e82e3c8d850bc58d788f864}{get\+Formats}} ()
\end{DoxyCompactItemize}
\subsection*{Private Member Functions}
\begin{DoxyCompactItemize}
\item 
\textbf{ B\+Error} \mbox{\hyperlink{classBds_1_1DataFileLog_ae199806eebc5e2ed449ec3338d170f6b}{read\+Block}} (\textbf{ B\+U\+Int32} channel, \textbf{ B\+U\+Int64} pos, \mbox{\hyperlink{classBds_1_1DataBlock}{Data\+Block}} \&\textbf{ data}, \textbf{ B\+U\+Int64} \&pos\+Next)
\end{DoxyCompactItemize}
\subsection*{Private Attributes}
\begin{DoxyCompactItemize}
\item 
\mbox{\hyperlink{classBds_1_1DataInfo}{Data\+Info}} \mbox{\hyperlink{classBds_1_1DataFileLog_a3e25a5a49c6bd563ba66fb1d66949c05}{odata\+Info}}
\item 
\mbox{\hyperlink{classBds_1_1ChannelInfos}{Channel\+Infos}} \mbox{\hyperlink{classBds_1_1DataFileLog_a11e02ea7a09b931b72f18eeee67cc691}{ochannel\+Infos}}
\item 
\textbf{ B\+String} \mbox{\hyperlink{classBds_1_1DataFileLog_a60da95b4039bb154eec30fe94d146140}{oformat}}
\item 
\textbf{ B\+Array}$<$ \mbox{\hyperlink{classBds_1_1DataBlockPos}{Data\+Block\+Pos}} $>$ \mbox{\hyperlink{classBds_1_1DataFileLog_abbbd26e0ef5d35891e753141636a8998}{oblock\+Positions}}
\end{DoxyCompactItemize}
\subsection*{Additional Inherited Members}


\subsection{Constructor \& Destructor Documentation}
\mbox{\Hypertarget{classBds_1_1DataFileLog_a496ec645cd2d02beaf5dfcd5fc63e031}\label{classBds_1_1DataFileLog_a496ec645cd2d02beaf5dfcd5fc63e031}} 
\index{Bds::DataFileLog@{Bds::DataFileLog}!DataFileLog@{DataFileLog}}
\index{DataFileLog@{DataFileLog}!Bds::DataFileLog@{Bds::DataFileLog}}
\subsubsection{\texorpdfstring{DataFileLog()}{DataFileLog()}}
{\footnotesize\ttfamily Bds\+::\+Data\+File\+Log\+::\+Data\+File\+Log (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}



\subsection{Member Function Documentation}
\mbox{\Hypertarget{classBds_1_1DataFileLog_a7d399659d6d729fcb1714ec4c97e7da5}\label{classBds_1_1DataFileLog_a7d399659d6d729fcb1714ec4c97e7da5}} 
\index{Bds::DataFileLog@{Bds::DataFileLog}!end@{end}}
\index{end@{end}!Bds::DataFileLog@{Bds::DataFileLog}}
\subsubsection{\texorpdfstring{end()}{end()}}
{\footnotesize\ttfamily \textbf{ B\+Error} Bds\+::\+Data\+File\+Log\+::end (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [virtual]}}



End segment. 



Reimplemented from \mbox{\hyperlink{classBds_1_1DataFile_af854a685f63f43f1d45f52e40f6a7b1f}{Bds\+::\+Data\+File}}.

\mbox{\Hypertarget{classBds_1_1DataFileLog_a2a0b92b319addba3525b83b12bbf4b3e}\label{classBds_1_1DataFileLog_a2a0b92b319addba3525b83b12bbf4b3e}} 
\index{Bds::DataFileLog@{Bds::DataFileLog}!getDataOrder@{getDataOrder}}
\index{getDataOrder@{getDataOrder}!Bds::DataFileLog@{Bds::DataFileLog}}
\subsubsection{\texorpdfstring{getDataOrder()}{getDataOrder()}}
{\footnotesize\ttfamily \mbox{\hyperlink{classBds_1_1DataFile_a3db096f327de3b65ced78b32aef07f07}{Data\+File\+::\+Data\+Order}} Bds\+::\+Data\+File\+Log\+::get\+Data\+Order (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [virtual]}}



Get the expected order of writing data, by sample or by channel. 



Reimplemented from \mbox{\hyperlink{classBds_1_1DataFile_ae014b357c1b718954946bfa343aa30c2}{Bds\+::\+Data\+File}}.

\mbox{\Hypertarget{classBds_1_1DataFileLog_a08747782c366981b90be4a6d26e8f89b}\label{classBds_1_1DataFileLog_a08747782c366981b90be4a6d26e8f89b}} 
\index{Bds::DataFileLog@{Bds::DataFileLog}!getFeatures@{getFeatures}}
\index{getFeatures@{getFeatures}!Bds::DataFileLog@{Bds::DataFileLog}}
\subsubsection{\texorpdfstring{getFeatures()}{getFeatures()}}
{\footnotesize\ttfamily int Bds\+::\+Data\+File\+Log\+::get\+Features (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [virtual]}}



Get bitmask of supported features. 



Reimplemented from \mbox{\hyperlink{classBds_1_1DataFile_a778534baafa7e0bdcedc9f84a639b6e1}{Bds\+::\+Data\+File}}.

\mbox{\Hypertarget{classBds_1_1DataFileLog_a5c552d974e82e3c8d850bc58d788f864}\label{classBds_1_1DataFileLog_a5c552d974e82e3c8d850bc58d788f864}} 
\index{Bds::DataFileLog@{Bds::DataFileLog}!getFormats@{getFormats}}
\index{getFormats@{getFormats}!Bds::DataFileLog@{Bds::DataFileLog}}
\subsubsection{\texorpdfstring{getFormats()}{getFormats()}}
{\footnotesize\ttfamily \mbox{\hyperlink{classBds_1_1DataFormat}{Data\+Format}} Bds\+::\+Data\+File\+Log\+::get\+Formats (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}}

\mbox{\Hypertarget{classBds_1_1DataFileLog_a4614c19c241e31f98671a3d7cd18abf4}\label{classBds_1_1DataFileLog_a4614c19c241e31f98671a3d7cd18abf4}} 
\index{Bds::DataFileLog@{Bds::DataFileLog}!getInfo@{getInfo}}
\index{getInfo@{getInfo}!Bds::DataFileLog@{Bds::DataFileLog}}
\subsubsection{\texorpdfstring{getInfo()}{getInfo()}}
{\footnotesize\ttfamily \textbf{ B\+Error} Bds\+::\+Data\+File\+Log\+::get\+Info (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{classBds_1_1DataInfo}{Data\+Info}} \&}]{data\+Info,  }\item[{\mbox{\hyperlink{classBds_1_1DataFileOptions}{Data\+File\+Options}}}]{options,  }\item[{\textbf{ B\+List}$<$ \mbox{\hyperlink{classBds_1_1DataError}{Data\+Error}} $>$ \&}]{errors }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [virtual]}}



Get info on data. 



Reimplemented from \mbox{\hyperlink{classBds_1_1DataFile_a041d380065710c74fd509a28d63bf667}{Bds\+::\+Data\+File}}.

\mbox{\Hypertarget{classBds_1_1DataFileLog_a154333da083ac91b7f169d1983dccba5}\label{classBds_1_1DataFileLog_a154333da083ac91b7f169d1983dccba5}} 
\index{Bds::DataFileLog@{Bds::DataFileLog}!open@{open}}
\index{open@{open}!Bds::DataFileLog@{Bds::DataFileLog}}
\subsubsection{\texorpdfstring{open()}{open()}}
{\footnotesize\ttfamily \textbf{ B\+Error} Bds\+::\+Data\+File\+Log\+::open (\begin{DoxyParamCaption}\item[{\textbf{ B\+String}}]{file\+Name,  }\item[{\textbf{ B\+String}}]{mode }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [virtual]}}



Open the file for read or write. 



Reimplemented from \mbox{\hyperlink{classBds_1_1DataFile_a5e5185a9cef9ea911c477d1bc2c74274}{Bds\+::\+Data\+File}}.

\mbox{\Hypertarget{classBds_1_1DataFileLog_ae199806eebc5e2ed449ec3338d170f6b}\label{classBds_1_1DataFileLog_ae199806eebc5e2ed449ec3338d170f6b}} 
\index{Bds::DataFileLog@{Bds::DataFileLog}!readBlock@{readBlock}}
\index{readBlock@{readBlock}!Bds::DataFileLog@{Bds::DataFileLog}}
\subsubsection{\texorpdfstring{readBlock()}{readBlock()}}
{\footnotesize\ttfamily \textbf{ B\+Error} Bds\+::\+Data\+File\+Log\+::read\+Block (\begin{DoxyParamCaption}\item[{\textbf{ B\+U\+Int32}}]{channel,  }\item[{\textbf{ B\+U\+Int64}}]{pos,  }\item[{\mbox{\hyperlink{classBds_1_1DataBlock}{Data\+Block}} \&}]{data,  }\item[{\textbf{ B\+U\+Int64} \&}]{pos\+Next }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [private]}}

\mbox{\Hypertarget{classBds_1_1DataFileLog_a2bff29beb50327c0720668aee6ce6a2e}\label{classBds_1_1DataFileLog_a2bff29beb50327c0720668aee6ce6a2e}} 
\index{Bds::DataFileLog@{Bds::DataFileLog}!readData@{readData}}
\index{readData@{readData}!Bds::DataFileLog@{Bds::DataFileLog}}
\subsubsection{\texorpdfstring{readData()}{readData()}}
{\footnotesize\ttfamily \textbf{ B\+Error} Bds\+::\+Data\+File\+Log\+::read\+Data (\begin{DoxyParamCaption}\item[{\textbf{ B\+U\+Int32}}]{channel,  }\item[{\textbf{ B\+U\+Int}}]{segment,  }\item[{\textbf{ B\+U\+Int32}}]{block\+Number,  }\item[{\mbox{\hyperlink{classBds_1_1DataBlock}{Data\+Block}} \&}]{data\+Block }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [virtual]}}



Read a block. 



Reimplemented from \mbox{\hyperlink{classBds_1_1DataFile_ac01f30408cfdfc4f14a36ca1f5cf2e4c}{Bds\+::\+Data\+File}}.

\mbox{\Hypertarget{classBds_1_1DataFileLog_a2040aabfd1b1fe60a0de8fcaf26dd879}\label{classBds_1_1DataFileLog_a2040aabfd1b1fe60a0de8fcaf26dd879}} 
\index{Bds::DataFileLog@{Bds::DataFileLog}!setFormat@{setFormat}}
\index{setFormat@{setFormat}!Bds::DataFileLog@{Bds::DataFileLog}}
\subsubsection{\texorpdfstring{setFormat()}{setFormat()}}
{\footnotesize\ttfamily \textbf{ B\+Error} Bds\+::\+Data\+File\+Log\+::set\+Format (\begin{DoxyParamCaption}\item[{\textbf{ B\+String}}]{format }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [virtual]}}



Set the sub-\/format. 



Reimplemented from \mbox{\hyperlink{classBds_1_1DataFile_aae72993c3c6453edc45621745c3e79a5}{Bds\+::\+Data\+File}}.

\mbox{\Hypertarget{classBds_1_1DataFileLog_a3c1254edfeffd4b2cc4e3037e588e749}\label{classBds_1_1DataFileLog_a3c1254edfeffd4b2cc4e3037e588e749}} 
\index{Bds::DataFileLog@{Bds::DataFileLog}!setInfo@{setInfo}}
\index{setInfo@{setInfo}!Bds::DataFileLog@{Bds::DataFileLog}}
\subsubsection{\texorpdfstring{setInfo()}{setInfo()}}
{\footnotesize\ttfamily \textbf{ B\+Error} Bds\+::\+Data\+File\+Log\+::set\+Info (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{classBds_1_1DataInfo}{Data\+Info}} \&}]{data\+Info,  }\item[{const \mbox{\hyperlink{classBds_1_1ChannelInfos}{Channel\+Infos}} \&}]{channel\+Infos,  }\item[{\mbox{\hyperlink{classBds_1_1DataFile_a470ee46f21caaaf26365b9503b428153}{Write\+Options\+List}}}]{options = {\ttfamily \mbox{\hyperlink{classBds_1_1DataFile_a470ee46f21caaaf26365b9503b428153a420fa6e5eaacb8e210c3ade68bbe64e6}{Write\+Option\+Sensor\+Data}}} }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [virtual]}}



Set information on data for write. 



Reimplemented from \mbox{\hyperlink{classBds_1_1DataFile_a8fbb4e7ed82855bbcb0bde4afdc61e51}{Bds\+::\+Data\+File}}.

\mbox{\Hypertarget{classBds_1_1DataFileLog_a5a319163903ffc76151588c95b2e23a2}\label{classBds_1_1DataFileLog_a5a319163903ffc76151588c95b2e23a2}} 
\index{Bds::DataFileLog@{Bds::DataFileLog}!start@{start}}
\index{start@{start}!Bds::DataFileLog@{Bds::DataFileLog}}
\subsubsection{\texorpdfstring{start()}{start()}}
{\footnotesize\ttfamily \textbf{ B\+Error} Bds\+::\+Data\+File\+Log\+::start (\begin{DoxyParamCaption}\item[{\textbf{ B\+U\+Int}}]{channel,  }\item[{\textbf{ B\+U\+Int}}]{segment }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [virtual]}}



Start next segment of data. 



Reimplemented from \mbox{\hyperlink{classBds_1_1DataFile_a9d3bf9eecf58dcfe276fcb6ceeec00b2}{Bds\+::\+Data\+File}}.

\mbox{\Hypertarget{classBds_1_1DataFileLog_acc2a580e5550a0add27da4afea5486ca}\label{classBds_1_1DataFileLog_acc2a580e5550a0add27da4afea5486ca}} 
\index{Bds::DataFileLog@{Bds::DataFileLog}!writeData@{writeData}}
\index{writeData@{writeData}!Bds::DataFileLog@{Bds::DataFileLog}}
\subsubsection{\texorpdfstring{writeData()}{writeData()}}
{\footnotesize\ttfamily \textbf{ B\+Error} Bds\+::\+Data\+File\+Log\+::write\+Data (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{classBds_1_1DataBlock}{Data\+Block}} \&}]{data }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [virtual]}}



Write a block of data. 



Reimplemented from \mbox{\hyperlink{classBds_1_1DataFile_a161e7f9481b0a75c886049facff60aaf}{Bds\+::\+Data\+File}}.



\subsection{Member Data Documentation}
\mbox{\Hypertarget{classBds_1_1DataFileLog_abbbd26e0ef5d35891e753141636a8998}\label{classBds_1_1DataFileLog_abbbd26e0ef5d35891e753141636a8998}} 
\index{Bds::DataFileLog@{Bds::DataFileLog}!oblockPositions@{oblockPositions}}
\index{oblockPositions@{oblockPositions}!Bds::DataFileLog@{Bds::DataFileLog}}
\subsubsection{\texorpdfstring{oblockPositions}{oblockPositions}}
{\footnotesize\ttfamily \textbf{ B\+Array}$<$\mbox{\hyperlink{classBds_1_1DataBlockPos}{Data\+Block\+Pos}}$>$ Bds\+::\+Data\+File\+Log\+::oblock\+Positions\hspace{0.3cm}{\ttfamily [private]}}

\mbox{\Hypertarget{classBds_1_1DataFileLog_a11e02ea7a09b931b72f18eeee67cc691}\label{classBds_1_1DataFileLog_a11e02ea7a09b931b72f18eeee67cc691}} 
\index{Bds::DataFileLog@{Bds::DataFileLog}!ochannelInfos@{ochannelInfos}}
\index{ochannelInfos@{ochannelInfos}!Bds::DataFileLog@{Bds::DataFileLog}}
\subsubsection{\texorpdfstring{ochannelInfos}{ochannelInfos}}
{\footnotesize\ttfamily \mbox{\hyperlink{classBds_1_1ChannelInfos}{Channel\+Infos}} Bds\+::\+Data\+File\+Log\+::ochannel\+Infos\hspace{0.3cm}{\ttfamily [private]}}

\mbox{\Hypertarget{classBds_1_1DataFileLog_a3e25a5a49c6bd563ba66fb1d66949c05}\label{classBds_1_1DataFileLog_a3e25a5a49c6bd563ba66fb1d66949c05}} 
\index{Bds::DataFileLog@{Bds::DataFileLog}!odataInfo@{odataInfo}}
\index{odataInfo@{odataInfo}!Bds::DataFileLog@{Bds::DataFileLog}}
\subsubsection{\texorpdfstring{odataInfo}{odataInfo}}
{\footnotesize\ttfamily \mbox{\hyperlink{classBds_1_1DataInfo}{Data\+Info}} Bds\+::\+Data\+File\+Log\+::odata\+Info\hspace{0.3cm}{\ttfamily [private]}}

\mbox{\Hypertarget{classBds_1_1DataFileLog_a60da95b4039bb154eec30fe94d146140}\label{classBds_1_1DataFileLog_a60da95b4039bb154eec30fe94d146140}} 
\index{Bds::DataFileLog@{Bds::DataFileLog}!oformat@{oformat}}
\index{oformat@{oformat}!Bds::DataFileLog@{Bds::DataFileLog}}
\subsubsection{\texorpdfstring{oformat}{oformat}}
{\footnotesize\ttfamily \textbf{ B\+String} Bds\+::\+Data\+File\+Log\+::oformat\hspace{0.3cm}{\ttfamily [private]}}



The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize}
\item 
/src/blacknest/bds/bds/bds\+Data\+Lib/\mbox{\hyperlink{BdsDataFileLog_8h}{Bds\+Data\+File\+Log.\+h}}\item 
/src/blacknest/bds/bds/bds\+Data\+Lib/\mbox{\hyperlink{BdsDataFileLog_8cpp}{Bds\+Data\+File\+Log.\+cpp}}\end{DoxyCompactItemize}
