#ifndef _CASHFLOW_PREPAY_HPP_ #define _CASHFLOW_PREPAY_HPP_ class PrePay { public: PrePay(void); PrePay(const PrePay &somePrePay); virtual ~PrePay(); PrePay &operator=(const PrePay &somePrePay); WORD operator==(const PrePay &somePrePay); double amount(void)const; void amount(double amount); double increment(void)const; void increment(double increment); short frequency(void)const; void frequency(short frequency); short period(void)const; void period(short period); private: double mAmount; double mIncrement; short mFrequency; short mPeriod; }; inline PrePay::PrePay(void) : mAmount(0.00), mIncrement(0.00), mFrequency(0), mPeriod(1) { } inline PrePay::~PrePay() { } inline PrePay::PrePay(const PrePay &somePrePay) { *this=somePrePay; } inline PrePay &PrePay::operator=(const PrePay &somePrePay) { amount(somePrePay.amount()); increment(somePrePay.increment()); frequency(somePrePay.frequency()); period(somePrePay.period()); return *this; } inline WORD PrePay::operator==(const PrePay &somePrePay) { return (amount()==somePrePay.amount()&& increment()==somePrePay.increment()&& frequency()==somePrePay.frequency()&& period()==somePrePay.period()); } inline double PrePay::amount(void)const { return mAmount; } inline void PrePay::amount(double amount) { mAmount=amount; } inline double PrePay::increment(void)const { return mIncrement; } inline void PrePay::increment(double increment) { mIncrement=increment; } inline short PrePay::frequency(void)const { return mFrequency; } inline void PrePay::frequency(short frequency) { mFrequency=frequency; } inline short PrePay::period(void)const { return mPeriod; } inline void PrePay::period(short period) { mPeriod=period; } #endif