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

day counter class More...

#include <ql/time/daycounter.hpp>

+ Inheritance diagram for DayCounter:

Classes

class  Impl
 abstract base class for day counter implementations More...
 

Public Member Functions

 DayCounter ()
 
DayCounter interface
bool empty () const
 Returns whether or not the day counter is initialized.
 
std::string name () const
 Returns the name of the day counter. More...
 
BigInteger dayCount (const Date &, const Date &) const
 Returns the number of days between two dates.
 
Time yearFraction (const Date &, const Date &, const Date &refPeriodStart=Date(), const Date &refPeriodEnd=Date()) const
 Returns the period between two dates as a fraction of year.
 
Time timeFraction (const Date &, const Date &, const Date &refPeriodStart=Date(), const Date &refPeriodEnd=Date()) const
 Returns the period between two dates as a fraction of year.
 

Protected Member Functions

 DayCounter (const boost::shared_ptr< Impl > &impl)
 

Protected Attributes

boost::shared_ptr< Implimpl_
 

Related Functions

(Note that these are not member functions.)

bool operator== (const DayCounter &, const DayCounter &)
 
bool operator!= (const DayCounter &, const DayCounter &)
 
std::ostream & operator<< (std::ostream &, const DayCounter &)
 

Detailed Description

day counter class

This class provides methods for determining the length of a time period according to given market convention, both as a number of days and as a year fraction.

The Bridge pattern is used to provide the base behavior of the day counter.

Examples:
BermudanSwaption.cpp, Bonds.cpp, CallableBonds.cpp, ConvertibleBonds.cpp, DiscreteHedging.cpp, EquityOption.cpp, FittedBondCurve.cpp, FRA.cpp, Replication.cpp, Repo.cpp, and swapvaluation.cpp.

Constructor & Destructor Documentation

DayCounter ( const boost::shared_ptr< Impl > &  impl)
protected

This constructor can be invoked by derived classes which define a given implementation.

The default constructor returns a day counter with a null implementation, which is therefore unusable except as a placeholder.

Member Function Documentation

std::string name ( ) const

Returns the name of the day counter.

Warning:
This method is used for output and comparison between day counters. It is not meant to be used for writing switch-on-type code.

Friends And Related Function Documentation

bool operator== ( const DayCounter ,
const DayCounter  
)
related

Returns true iff the two day counters belong to the same derived class.

bool operator!= ( const DayCounter ,
const DayCounter  
)
related
std::ostream & operator<< ( std::ostream &  ,
const DayCounter  
)
related