Show
Ignore:
Timestamp:
06/19/09 11:43:48 (15 years ago)
Author:
smidl
Message:

mergers

Files:
1 modified

Legend:

Unmodified
Added
Removed
  • library/bdm/base/bdmbase.h

    r384 r388  
    581581class compositepdf { 
    582582protected: 
    583   //!Number of mpdfs in the composite 
    584   int n; 
    585583  //! Elements of composition 
    586584  Array<mpdf*> mpdfs; 
    587 public: 
    588   compositepdf(Array<mpdf*> A0) : n(A0.length()), mpdfs(A0) {}; 
     585  bool owning_mpdfs; 
     586public: 
     587        compositepdf():mpdfs(0){}; 
     588        compositepdf(Array<mpdf*> A0, bool own=false){set_elements(A0,own);}; 
     589        void set_elements(Array<mpdf*> A0, bool own=false) {mpdfs=A0;owning_mpdfs=own;}; 
    589590  //! find common rv, flag \param checkoverlap modifies whether overlaps are acceptable 
    590591  RV getrv(bool checkoverlap = false); 
    591592  //! common rvc of all mpdfs is written to rvc 
    592593  void setrvc(const RV &rv, RV &rvc); 
     594  ~compositepdf(){if (owning_mpdfs) for(int i=0;i<mpdfs.length();i++){delete mpdfs(i);}}; 
    593595}; 
    594596