Matlab wrapper for DS mapping functions step() to a matlab function. More...
Matlab wrapper for DS mapping functions step() to a matlab function.
The identifier of matlab function is stored in attribute name. This identifier defines:
#include <mex_datasource.h>
Public Member Functions | |
| mexDS () | |
| Default constructor. | |
| void | from_setting (const Setting &set) |
| Create memory data source from mxArray. | |
| void | step () |
Moves from to , i.e. perfroms the actions and reads response of the system. | |
| void | write (vec &ut0) |
| Accepts action variable and schedule it for application. | |
| void | getdata (vec &dt_out) |
| Returns full vector of observed data=[output, input]. | |
| virtual int | max_length () |
| Returns maximum number of provided data, by default it is set to maximum allowed length, shorter DS should overload this method! See, MemDS.max_length(). | |
| virtual void | getdata (vec &dt, const ivec &indeces) |
| Returns data records at indeces. | |
| virtual void | write (vec &ut, const ivec &indeces) |
| Accepts action variables at specific indeces. | |
| virtual void | log_add (logger &L) |
| Register DS for logging into logger L. | |
| virtual void | logit (logger &L) |
| Register DS for logging into logger L. | |
| virtual const RV & | _drv () const |
| access function | |
| const RV & | _urv () const |
| access function | |
| const RV & | _yrv () const |
| access function | |
| virtual void | set_drv (const RV &yrv, const RV &urv) |
| set random variables | |
| virtual string | to_string () |
| This method returns a basic info about the current instance. | |
| virtual void | to_setting (Setting &set) const |
| This method save all the instance properties into the Setting structure. | |
| virtual void | validate () |
| This method TODO. | |
Protected Attributes | |
| string | step_name |
| identifier of matlab function | |
| string | input_name |
| identifier of matlab input variabel | |
| vec | dt |
| cache of results from name_step | |
| vec | ut |
| cache of inputs | |
| int | dtsize |
size of data returned by getdata() | |
| int | utsize |
| size of data | |
| int | ytsize |
| size of output | |
| RV | Drv |
Description of data returned by getdata(). | |
| RV | Urv |
Description of data witten by by write(). | |
| RV | Yrv |
| Description of output data. | |
| int | L_dt |
| Remember its own index in Logger L. | |
| int | L_ut |
| void bdm::mexDS::from_setting | ( | const Setting & | set | ) | [inline, virtual] |
Create memory data source from mxArray.
system={
type="mexDS";
step_name=""; // name of function to call
input_name=""; // name of workspace variable where inputs are written
rv_out = {class='RV',...} // identification of outputs
rv_in = {class='RV',...} // identification of inputs
};
MemDS with the above fields will be created;
Reimplemented from bdm::root.
References bdm::DS::dtsize, bdm::UI::get(), input_name, bdm::DS::set_drv(), step_name, and bdm::DS::utsize.
1.6.1