| 235 | //!\brief Abstract composition of pdfs, a base for specific classes |
| 236 | class compositepdf{ |
| 237 | protected: |
| 238 | //!Number of mpdfs in the composite |
| 239 | int n; |
| 240 | //! Elements of composition |
| 241 | Array<mpdf*> mpdfs; |
| 242 | //! Indeces of rvs in common rv |
| 243 | Array<ivec> rvsinrv; |
| 244 | //! Indeces of rvc in common rv |
| 245 | Array<ivec> rvcsinrv; |
| 246 | public: |
| 247 | compositepdf(Array<mpdf*> A0): n(A0.length()), mpdfs(A0), rvsinrv(n), rvcsinrv(n){}; |
| 248 | RV getrv(bool checkoverlap=false); |
| 249 | void setrvc(const RV &rv, RV &rvc); |
| 250 | void setindices(const RV &rv); |
| 251 | void setrvcinrv(const RV &rvc, Array<ivec> &rvcind); |
| 252 | }; |
| 253 | |