Changeset 944 for library/bdm/mex
- Timestamp:
- 05/16/10 23:13:21 (14 years ago)
- Files:
-
- 1 modified
Legend:
- Unmodified
- Added
- Removed
-
library/bdm/mex/mex_BM.h
r943 r944 12 12 } 13 13 void validate() { 14 mexCallMATLAB(0, 0, 1, &data, "validate");15 14 mxArray *tmp; 15 mexCallMATLAB(1, &tmp, 1, &data, "validate"); 16 // new object is in tmp 17 data = tmp; 18 16 19 mexCallMATLAB(1, &tmp, 1, &data, "dimensions"); 17 20 vec v=mxArray2vec(tmp); … … 20 23 dimy = v(1); 21 24 dimc = v(2); 25 26 mexCallMATLAB(1, &tmp, 1, &data, "get_rv"); 27 UImxArray rvtmp(tmp); 28 shared_ptr<RV> r = UI::build<RV>(rvtmp); 29 set_rv(*r); 30 31 mexCallMATLAB(1, &tmp, 1, &data, "get_rvc"); 32 UImxArray rvtmpc(tmp); 33 shared_ptr<RV> rc = UI::build<RV>(rvtmpc); 34 rvtmpc.writeFile("tmpc.cfg"); 35 rvc=*rc; 36 37 mexCallMATLAB(1, &tmp, 1, &data, "get_rvy"); 38 UImxArray rvtmpy(tmp); 39 rvtmpy.writeFile("tmpy.cfg"); 40 shared_ptr<RV> ry = UI::build<RV>(rvtmpy); 41 yrv = *ry; 42 22 43 } 23 44 void bayes(const vec &dt, const vec &cond) { … … 31 52 32 53 mexCallMATLAB(1, &tmp, 3, in, "bayes"); 33 if (data!=tmp){ 34 mxDestroyArray ( data ); 35 data = mxDuplicateArray ( tmp ); 36 } // 54 data = tmp; 37 55 } 38 56 epdf* predictor(const vec &cond) const { … … 51 69 } 52 70 const epdf& posterior() const { 71 mxArray *tmp; 72 mexCallMATLAB(1, &tmp, 1,(mxArray **) &data, "posterior"); 73 const_cast<mexEpdf*>(&est)->set_data(tmp); 53 74 return est; 54 75 }