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
 1.6.1