QuantLib
A free/open-source library for quantitative finance
Reference manual - version 1.20
List of all members
CashFlow Class Referenceabstract

Base class for cash flows. More...

#include <ql/cashflow.hpp>

+ Inheritance diagram for CashFlow:

Public Member Functions

Event interface
virtual Date date () const =0
 
bool hasOccurred (const Date &refDate=Date(), boost::optional< bool > includeRefDate=boost::none) const
 returns true if an event has already occurred before a date More...
 
CashFlow interface
virtual Real amount () const =0
 returns the amount of the cash flow More...
 
virtual Date exCouponDate () const
 returns the date that the cash flow trades exCoupon
 
bool tradingExCoupon (const Date &refDate=Date()) const
 returns true if the cashflow is trading ex-coupon on the refDate
 
Visitability
virtual void accept (AcyclicVisitor &)
 
Event interface
Visitability
- Public Member Functions inherited from Observable
 Observable (const Observable &)
 
Observableoperator= (const Observable &)
 
void notifyObservers ()
 

Detailed Description

Base class for cash flows.

This class is purely virtual and acts as a base class for the actual cash flow implementations.

Member Function Documentation

◆ date()

virtual Date date ( ) const
pure virtual
Note
This is inherited from the event class

Implements Event.

Implemented in SimpleCashFlow, IndexedCashFlow, Dividend, and Coupon.

◆ hasOccurred()

bool hasOccurred ( const Date refDate = Date(),
boost::optional< bool >  includeRefDate = boost::none 
) const
virtual

returns true if an event has already occurred before a date

overloads Event::hasOccurred in order to take Settings::includeTodaysCashflows in account

Reimplemented from Event.

◆ amount()

virtual Real amount ( ) const
pure virtual

returns the amount of the cash flow

Note
The amount is not discounted, i.e., it is the actual amount paid at the cash flow date.

Implemented in Dividend, SimpleCashFlow, InflationCoupon, IndexedCashFlow, FloatingRateCoupon, FixedRateCoupon, FractionalDividend, FixedDividend, and CPICashFlow.