\section{DS Class Reference}
\label{classDS}\index{DS@{DS}}
Abstract class for discrete-time sources of data.  


{\tt \#include $<$libBM.h$>$}

Inheritance diagram for DS:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=47pt]{classDS__inherit__graph}
\end{center}
\end{figure}
Collaboration diagram for DS:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=37pt]{classDS__coll__graph}
\end{center}
\end{figure}
\subsection*{Public Member Functions}
\begin{CompactItemize}
\item 
void {\bf getdata} (vec \&dt)\label{classDS_db2dacc9e71a36eeb9c5c2ee402eeeb1}

\begin{CompactList}\small\item\em Returns full vector of observed data. \item\end{CompactList}\item 
void {\bf getdata} (vec \&dt, ivec \&indeces)\label{classDS_4027575bc66ea358f9b03dd3be28fe1e}

\begin{CompactList}\small\item\em Returns data records at indeces. \item\end{CompactList}\item 
void {\bf write} (vec \&ut)\label{classDS_0dfb6788b70c0d48a1f5276ed6c93039}

\begin{CompactList}\small\item\em Accepts action variable and schedule it for application. \item\end{CompactList}\item 
void {\bf write} (vec \&ut, ivec \&indeces)\label{classDS_f4ae51a3bc1267a6a52fc229973afe85}

\begin{CompactList}\small\item\em Accepts action variables at specific indeces. \item\end{CompactList}\item 
void {\bf linkrvs} ({\bf RV} \&drv, {\bf RV} \&urv)
\begin{CompactList}\small\item\em Method that assigns random variables to the datasource. Typically, the datasource will be constructed without knowledge of random variables. This method will associate existing variables with RVs. \item\end{CompactList}\item 
void {\bf step} ()\label{classDS_470ba89e8e7c3c4d830803221b4e9be6}

\begin{CompactList}\small\item\em Moves from $t$ to $t+1$, i.e. perfroms the actions and reads response of the system. \item\end{CompactList}\end{CompactItemize}
\subsection*{Protected Attributes}
\begin{CompactItemize}
\item 
{\bf RV} {\bf Drv}\label{classDS_1012025a1a3a1fdd24aa48698a3d3454}

\begin{CompactList}\small\item\em Observed variables, returned by {\tt \doxyref{getdata()}{p.}{classDS_db2dacc9e71a36eeb9c5c2ee402eeeb1}}. \item\end{CompactList}\item 
{\bf RV} {\bf Urv}\label{classDS_0a88ffaeb3c7c2cf30c69bc41a000629}

\begin{CompactList}\small\item\em Action variables, accepted by {\tt \doxyref{write()}{p.}{classDS_0dfb6788b70c0d48a1f5276ed6c93039}}. \item\end{CompactList}\end{CompactItemize}


\subsection{Detailed Description}
Abstract class for discrete-time sources of data. 

The class abstracts operations of: (i) data aquisition, (ii) data-preprocessing, (iii) scaling of data, and (iv) data resampling from the task of estimation and control. Moreover, for controlled systems, it is able to receive the desired control action and perform it in the next step. (Or as soon as possible). 

\subsection{Member Function Documentation}
\index{DS@{DS}!linkrvs@{linkrvs}}
\index{linkrvs@{linkrvs}!DS@{DS}}
\subsubsection[linkrvs]{\setlength{\rightskip}{0pt plus 5cm}void DS::linkrvs ({\bf RV} \& {\em drv}, \/  {\bf RV} \& {\em urv})}\label{classDS_9a35ca9c9321dce2bf63bf668f785b75}


Method that assigns random variables to the datasource. Typically, the datasource will be constructed without knowledge of random variables. This method will associate existing variables with RVs. 

(Inherited from m3k, may be deprecated soon). 

Reimplemented in {\bf MemDS} \doxyref{}{p.}{classMemDS_5f72b555e0e4a61de1440c457cf57007}.

The documentation for this class was generated from the following file:\begin{CompactItemize}
\item 
work/git/mixpp/bdm/stat/{\bf libBM.h}\end{CompactItemize}
