DayCounter Class Reference
Date and time calculations

day counter class More...

`#include <ql/time/daycounter.hpp>`

Inheritance diagram for DayCounter:
[legend]

## 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...
Date::serial_type | 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.

## Protected Member Functions

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

## Protected Attributes

boost::shared_ptr< Impl > | impl_

## 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() [1/2]

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

explicit protected

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

## DayCounter() [2/2]

DayCounter | ( |  | ) |

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

## Member Function Documentation

## name()

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

## operator==()

bool operator== | ( | const DayCounter & | ,
|  | const DayCounter & |
| ) |  |

related

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

## operator!=()

bool operator!= | ( | const DayCounter & | ,
|  | const DayCounter & |
| ) |  |

related

## operator<<()

std::ostream & operator<< | ( | std::ostream & | ,
|  | const DayCounter & |
| ) |  |

related