Composition of two or more market-model products. More...
#include <ql/models/marketmodels/products/compositeproduct.hpp>
 Inheritance diagram for MarketModelComposite:
 Inheritance diagram for MarketModelComposite:| Public Member Functions | |
| MarketModelMultiProduct interface | |
| const EvolutionDescription & | evolution () const | 
| std::vector< Size > | suggestedNumeraires () const | 
| std::vector< Time > | possibleCashFlowTimes () const | 
| void | reset () | 
| during simulation put product at start of path | |
| Composite facilities | |
| void | add (const Clone< MarketModelMultiProduct > &, Real multiplier=1.0) | 
| void | subtract (const Clone< MarketModelMultiProduct > &, Real multiplier=1.0) | 
| void | finalize () | 
| Size | size () const | 
| const MarketModelMultiProduct & | item (Size i) const | 
| MarketModelMultiProduct & | item (Size i) | 
| Real | multiplier (Size i) const | 
|  Public Member Functions inherited from MarketModelMultiProduct | |
| virtual Size | numberOfProducts () const =0 | 
| virtual Size | maxNumberOfCashFlowsPerProductPerStep () const =0 | 
| virtual bool | nextTimeStep (const CurveState ¤tState, std::vector< Size > &numberCashFlowsThisStep, std::vector< std::vector< CashFlow > > &cashFlowsGenerated)=0 | 
| return value indicates whether path is finished, TRUE means done | |
| virtual std::auto_ptr< MarketModelMultiProduct > | clone () const =0 | 
| returns a newly-allocated copy of itself | |
| Protected Types | |
| typedef std::vector< SubProduct >::iterator | iterator | 
| typedef std::vector< SubProduct >::const_iterator | const_iterator | 
| Protected Attributes | |
| std::vector< SubProduct > | components_ | 
| std::vector< Time > | rateTimes_ | 
| std::vector< Time > | evolutionTimes_ | 
| EvolutionDescription | evolution_ | 
| bool | finalized_ | 
| Size | currentIndex_ | 
| std::vector< Time > | cashflowTimes_ | 
| std::vector< std::vector< Time > > | allEvolutionTimes_ | 
| std::vector< std::valarray< bool > > | isInSubset_ | 
Composition of two or more market-model products.
Instances of this class build a market-model product by composing one or more subproducts.