QuantLib
A free/open-source library for quantitative finance
Reference manual - version 1.6
Public Member Functions | Protected Attributes | List of all members
MultiProductOneStep Class Reference

Single-step market-model product. More...

#include <ql/models/marketmodels/products/multiproductonestep.hpp>

+ Inheritance diagram for MultiProductOneStep:

Public Member Functions

 MultiProductOneStep (const std::vector< Time > &rateTimes)
 
MarketModelMultiProduct interface
const EvolutionDescriptionevolution () const
 
std::vector< SizesuggestedNumeraires () const
 
- Public Member Functions inherited from MarketModelMultiProduct
virtual std::vector< TimepossibleCashFlowTimes () const =0
 
virtual Size numberOfProducts () const =0
 
virtual Size maxNumberOfCashFlowsPerProductPerStep () const =0
 
virtual void reset ()=0
 during simulation put product at start of path
 
virtual bool nextTimeStep (const CurveState &currentState, 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< MarketModelMultiProductclone () const =0
 returns a newly-allocated copy of itself
 

Protected Attributes

std::vector< TimerateTimes_
 
EvolutionDescription evolution_
 

Detailed Description

Single-step market-model product.

This is the abstract base class that encapsulates the notion of a MarketModelMultiProduct which can be evaluated in one step (aka Rebonato's very long jump).