Changeset 507 for library/bdm/stat/emix.h
- Timestamp:
- 08/12/09 15:37:43 (15 years ago)
- Files:
-
- 1 modified
Legend:
- Unmodified
- Added
- Removed
-
library/bdm/stat/emix.h
r504 r507 270 270 Note that 271 271 */ 272 class mprod: public compositepdf, public mpdf { 272 class mprod: public mpdf { 273 private: 274 Array<shared_ptr<mpdf> > mpdfs; 275 273 276 protected: 274 277 //! Data link for each mpdfs … … 279 282 280 283 public: 281 /*!\brief Constructor from list of mFacs, 284 //! \brief Default constructor 285 mprod() { } 286 287 /*!\brief Constructor from list of mFacs 282 288 */ 283 mprod() : iepdf( ) { } 284 mprod ( Array<mpdf*> mFacs ) : 285 iepdf ( ) { 289 mprod ( const Array<shared_ptr<mpdf> > &mFacs ) { 286 290 set_elements ( mFacs ); 287 291 } 288 292 289 void set_elements ( Array<mpdf*> mFacs , bool own = false ) { 290 291 compositepdf::set_elements ( mFacs, own ); 292 dls.set_size ( mFacs.length() ); 293 294 set_ep ( iepdf); 295 RV rv = getrv ( true ); 296 set_rv ( rv ); 297 iepdf.set_parameters ( rv._dsize() ); 298 setrvc (_rv(), rvc ); 299 // rv and rvc established = > we can link them with mpdfs 300 for ( int i = 0; i < mpdfs.length(); i++ ) { 301 dls ( i ) = new datalink_m2m; 302 dls ( i )->set_connection ( mpdfs ( i )->_rv(), mpdfs ( i )->_rvc(), _rv(), _rvc() ); 303 } 304 305 }; 293 void set_elements (const Array<shared_ptr<mpdf> > &mFacs ); 306 294 307 295 double evallogcond ( const vec &val, const vec &cond ) { … … 359 347 } 360 348 361 ~mprod() {};362 349 //! Load from structure with elements: 363 350 //! \code … … 368 355 //!@} 369 356 void from_setting ( const Setting &set ) { 370 Array<mpdf*> Atmp; //temporary Array 371 UI::get ( Atmp, set, "mpdfs", UI::compulsory ); 372 set_elements ( Atmp, true ); 357 Array<mpdf*> atmp; //temporary Array 358 UI::get ( atmp, set, "mpdfs", UI::compulsory ); 359 360 Array<shared_ptr<mpdf> > btmp ( atmp.length() ); 361 for (int i = 0; i < atmp.length(); ++i) { 362 btmp ( i ) = shared_ptr<mpdf> ( atmp ( i ) ); 363 } 364 365 set_elements ( btmp ); 373 366 } 374 367