25#ifndef quantlib_dividend_hpp
26#define quantlib_dividend_hpp
101 std::vector<ext::shared_ptr<Dividend> >
103 const std::vector<Real>& dividends);
Base class for cash flows.
degenerate base class for the Acyclic Visitor pattern
Base class for cash flows.
Dividend(const Date &date)
virtual Real amount(Real underlying) const =0
void accept(AcyclicVisitor &) override
Real amount() const override=0
returns the amount of the cash flow
Date date() const override
FixedDividend(Real amount, const Date &date)
Real amount() const override
returns the amount of the cash flow
Real amount(Real) const override
FractionalDividend(Real rate, const Date &date)
Real amount() const override
returns the amount of the cash flow
Real amount(Real underlying) const override
FractionalDividend(Real rate, Real nominal, const Date &date)
template class providing a null value for a given type.
#define QL_REQUIRE(condition, message)
throw an error if the given pre-condition is not verified
std::vector< ext::shared_ptr< Dividend > > DividendVector(const std::vector< Date > ÷ndDates, const std::vector< Real > ÷nds)
helper function building a sequence of fixed dividends