- Main Page
- Related Pages
- Modules
- Classes
- Files

- File List
- File Members

# libDS_ui.h

Go to the documentation of this file.

    00001
    00013 #ifndef DS_UI_H
    00014 #define DS_UI_H
    00015
    00016
    00017 #include "libDS.h"
    00018 #include "stat/loggers_ui.h"
    00019
    00051 class UIArxDS : public UIbuilder {
    00052 public:
    00053         UIArxDS() :UIbuilder ( "ArxDS" ) {};
    00054         bdmroot* build ( Setting &S ) const {
    00055                 RV *yrv; UIbuild(S["y"],yrv);
    00056                 RV *urv; UIbuild(S["u"],urv);
    00057                 RV *rrv; UIbuild(S["rgr"],rrv);
    00058
    00059                 ArxDS* tmp = new ArxDS;
    00060                 mat Th=getmat ( S["theta"], rrv->_dsize() );
    00061                 vec mu0;
    00062                 if ( S.exists ( "offset" ) ) {
    00063                         mu0=getvec ( S["offset"] );
    00064                 }
    00065                 else {
    00066                         mu0=zeros ( yrv->_dsize() );
    00067                 }
    00068                 chmat sqR ( getmat ( S["r"],yrv->_dsize() ) );
    00069                 tmp->set_parameters ( Th,mu0,sqR );
    00070                 tmp->set_drv(*yrv,*urv,*rrv);
    00071                 if (S.exists("opt")){tmp->set_options(S["opt"]);}
    00072                 return tmp;
    00073         };
    00074 };
    00075
    00076 UIREGISTER ( UIArxDS );
    00077
    00108 class UIstateDS : public UIbuilder {
    00109         public:
    00110                 UIstateDS() :UIbuilder ( "stateDS" ) {};
    00111                 bdmroot* build ( Setting &S ) const {
    00112                         RV* rvtmp;
    00113                         UIbuild(S["IM"]["rvu"], rvtmp);
    00114                         mpdf* IM;
    00115                         UIbuild(S["IM"],IM);
    00116                         mpdf* OM;
    00117                         UIbuild(S["OM"],OM);
    00118                         stateDS *DS=new stateDS(IM,OM,0);
    00119                         //DS->set_drv(rvtmp);
    00120                         return DS;
    00121                 }
    00122 };
    00123 UIREGISTER ( UIstateDS );
    00124
    00131 class UIITppFileDS : public UIbuilder {
    00132         public:
    00133                 UIITppFileDS() :UIbuilder ( "ITppFileDS" ) {};
    00134                 bdmroot* build ( Setting &S ) const {
    00135                         RV* rvtmp;
    00136                         UIbuild(S["rv"], rvtmp);
    00137                         ITppFileDS *DS=new ITppFileDS(S["filename"],S["varname"]);
    00138                         DS->set_drv(*rvtmp,RV());
    00139                         return DS;
    00140                 }
    00141 };
    00142 UIREGISTER ( UIITppFileDS );
    00143
    00144 #endif // DS_UI_H