#include #include #include void PureCashFlow::operator=(const PureCashFlow &somePureCashFlow) { mBeginBal=somePureCashFlow.mBeginBal; mSMM=somePureCashFlow.mSMM; mMtgPay=somePureCashFlow.mMtgPay; mNetIntPay=somePureCashFlow.mNetIntPay; mGrossIntPay=somePureCashFlow.mGrossIntPay; mSchedPrinPay=somePureCashFlow.mSchedPrinPay; mPrepayment=somePureCashFlow.mPrepayment; mTotPrin=somePureCashFlow.mTotPrin; mCashFlow=somePureCashFlow.mCashFlow; mFactor=somePureCashFlow.mFactor; } WORD PureCashFlow::operator==(const PureCashFlow &somePureCashFlow)const { if(!(mBeginBal==somePureCashFlow.mBeginBal))return FALSE; if(!(mSMM==somePureCashFlow.mSMM))return FALSE; if(!(mMtgPay==somePureCashFlow.mMtgPay))return FALSE; if(!(mNetIntPay==somePureCashFlow.mNetIntPay))return FALSE; if(!(mGrossIntPay==somePureCashFlow.mGrossIntPay))return FALSE; if(!(mSchedPrinPay==somePureCashFlow.mSchedPrinPay))return FALSE; if(!(mPrepayment==somePureCashFlow.mPrepayment))return FALSE; if(!(mTotPrin==somePureCashFlow.mTotPrin))return FALSE; if(!(mCashFlow==somePureCashFlow.mCashFlow))return FALSE; if(!(mFactor==somePureCashFlow.mFactor))return FALSE; return TRUE; } strstream &PureCashFlow::operator>>(strstream &stream)const { char commaString[]=","; stream << mBeginBal << commaString << mSMM << commaString << mMtgPay << commaString << mNetIntPay << commaString << mGrossIntPay << commaString << mSchedPrinPay << commaString << mPrepayment << commaString << mTotPrin << commaString << mCashFlow << commaString << mFactor << endl; return stream; } void PureCashFlow::operator>>(String &someString)const { someString.reserve(String::MaxString); ::sprintf(someString,"%12.2lf %9.7lf %9.2lf %9.2lf %9.2lf %9.2lf %9.2lf %9.2lf %9.2lf %12.10lf", mBeginBal, mSMM, mMtgPay, mNetIntPay, mGrossIntPay, mSchedPrinPay, mPrepayment, mTotPrin, mCashFlow, mFactor); } void PureCashFlow::itemStrings(Block &strBlock) { String itemString; strBlock.remove(); ::sprintf(itemString,"%12.2lf",mBeginBal); strBlock.insert(&itemString); ::sprintf(itemString,"%9.7lf",mSMM); strBlock.insert(&itemString); ::sprintf(itemString,"%9.2lf",mMtgPay); strBlock.insert(&itemString); ::sprintf(itemString,"%9.2lf",mNetIntPay); strBlock.insert(&itemString); ::sprintf(itemString,"%9.2lf",mGrossIntPay); strBlock.insert(&itemString); ::sprintf(itemString,"%9.2lf",mSchedPrinPay); strBlock.insert(&itemString); ::sprintf(itemString,"%9.2lf",mPrepayment); strBlock.insert(&itemString); ::sprintf(itemString,"%9.2lf",mTotPrin); strBlock.insert(&itemString); ::sprintf(itemString,"%9.2lf",mCashFlow); strBlock.insert(&itemString); ::sprintf(itemString,"%12.10lf",mFactor); strBlock.insert(&itemString); }