Initial
This commit is contained in:
15
cashflow/BCCW32.CFG
Normal file
15
cashflow/BCCW32.CFG
Normal file
@@ -0,0 +1,15 @@
|
||||
-R
|
||||
-v
|
||||
-vi
|
||||
-H
|
||||
-H=cashflow.csm
|
||||
-H-
|
||||
-4
|
||||
-x-
|
||||
-xd-
|
||||
-RT-
|
||||
-Ot
|
||||
-Z
|
||||
-O
|
||||
-Ol
|
||||
-W
|
||||
109
cashflow/CALCDLG.CPP
Normal file
109
cashflow/CALCDLG.CPP
Normal file
@@ -0,0 +1,109 @@
|
||||
#include <cashflow/calcdlg.hpp>
|
||||
#include <cashflow/cashdefs.hpp>
|
||||
#include <cashflow/cashflow.hpp>
|
||||
#include <cashflow/ppydlg.hpp>
|
||||
#include <cashflow/graphwnd.hpp>
|
||||
#include <fpsheet/fpsheet.hpp>
|
||||
#include <common/stdio.hpp>
|
||||
#include <common/crsctrl.hpp>
|
||||
|
||||
CallbackData::ReturnType CalcDlg::initHandler(CallbackData &/*someCallbackData*/)
|
||||
{
|
||||
mlpGraphWindow=new GraphWindow(*this,Rect(3,254,558,146));
|
||||
mlpCalcThread=new CalcThread();
|
||||
mlpCalcSheet=new FPSheet(*this,360,(Factor-IssBal)+1,Rect(xPos,yPos,cxPos,cyPos),mFont);
|
||||
mlpCalcSheet->show();
|
||||
setColumnTitles();
|
||||
setColumnTypes();
|
||||
return (CallbackData::ReturnType)FALSE;
|
||||
}
|
||||
|
||||
CallbackData::ReturnType CalcDlg::destroyHandler(CallbackData &/*someCallbackData*/)
|
||||
{
|
||||
if(mlpCalcThread){delete mlpCalcThread;mlpCalcThread=0;}
|
||||
if(mlpCalcSheet){delete mlpCalcSheet;mlpCalcSheet=0;}
|
||||
if(mlpGraphWindow){delete mlpGraphWindow;mlpGraphWindow=0;}
|
||||
return (CallbackData::ReturnType)FALSE;
|
||||
}
|
||||
|
||||
CallbackData::ReturnType CalcDlg::closeHandler(CallbackData &/*someCallbackData*/)
|
||||
{
|
||||
endDialog(TRUE);
|
||||
return (CallbackData::ReturnType)FALSE;
|
||||
}
|
||||
|
||||
CallbackData::ReturnType CalcDlg::commandHandler(CallbackData &someCallbackData)
|
||||
{
|
||||
switch(someCallbackData.wmCommandID())
|
||||
{
|
||||
case IDCANCEL :
|
||||
endDialog(FALSE);
|
||||
break;
|
||||
case IDOK :
|
||||
generateFlows();
|
||||
break;
|
||||
case CALC_PREPAYMENTS :
|
||||
if(sendMessage(CALC_PREPAYMENTS,BM_GETCHECK,0,0L))
|
||||
{
|
||||
handlePrepayments();
|
||||
sendMessage(CALC_PREPAYMENTS,BM_SETCHECK,0,0L);
|
||||
}
|
||||
break;
|
||||
case CALC_TERM :
|
||||
break;
|
||||
case CALC_COUPON :
|
||||
break;
|
||||
case CALC_PRINCIPAL :
|
||||
break;
|
||||
case CALC_CALCULATE :
|
||||
generateFlows();
|
||||
break;
|
||||
}
|
||||
return (CallbackData::ReturnType)FALSE;
|
||||
}
|
||||
|
||||
void CalcDlg::setColumnTitles(void)
|
||||
{
|
||||
mlpCalcSheet->setColumnTitle(IssBal,String("IssBal"));
|
||||
mlpCalcSheet->setColumnTitle(SMM,String("SMM"));
|
||||
mlpCalcSheet->setColumnTitle(MtgPay,String("MtgPay"));
|
||||
mlpCalcSheet->setColumnTitle(NetIntPay,String("NetIntPay"));
|
||||
mlpCalcSheet->setColumnTitle(GrossInt,String("GrossInt"));
|
||||
mlpCalcSheet->setColumnTitle(SchPrn,String("SchPrn"));
|
||||
mlpCalcSheet->setColumnTitle(Prepay,String("Prepay"));
|
||||
mlpCalcSheet->setColumnTitle(TotPrin,String("TotPrin"));
|
||||
mlpCalcSheet->setColumnTitle(Cashflow,String("Cashflow"));
|
||||
mlpCalcSheet->setColumnTitle(Factor,String("Factor"));
|
||||
mlpCalcSheet->setColumnWidth(IssBal,9);
|
||||
mlpCalcSheet->setColumnWidth(GrossInt,9);
|
||||
mlpCalcSheet->setColumnWidth(Factor,9);
|
||||
}
|
||||
|
||||
void CalcDlg::setColumnTypes(void)
|
||||
{
|
||||
Block<ColumnType> columnTypes;
|
||||
|
||||
columnTypes.insert(&ColumnType(IssBal,ColumnType::Money,"#########.##"));
|
||||
columnTypes.insert(&ColumnType(SMM,ColumnType::Float,"#.########"));
|
||||
columnTypes.insert(&ColumnType(MtgPay,ColumnType::Money,"#########.##"));
|
||||
columnTypes.insert(&ColumnType(NetIntPay,ColumnType::Money,"#########.##"));
|
||||
columnTypes.insert(&ColumnType(GrossInt,ColumnType::Money,"#########.##"));
|
||||
columnTypes.insert(&ColumnType(SchPrn,ColumnType::Money,"#########.##"));
|
||||
columnTypes.insert(&ColumnType(Prepay,ColumnType::Money,"#########.##"));
|
||||
columnTypes.insert(&ColumnType(TotPrin,ColumnType::Money,"#########.##"));
|
||||
columnTypes.insert(&ColumnType(Cashflow,ColumnType::Money,"#########.##"));
|
||||
columnTypes.insert(&ColumnType(Factor,ColumnType::Float,"#.#########"));
|
||||
mlpCalcSheet->setColumnType(columnTypes);
|
||||
}
|
||||
|
||||
void CalcDlg::handlePrepayments(void)
|
||||
{
|
||||
PPYDlg ppyDlg;
|
||||
if(ppyDlg.createDialog(*this,mPrePay))generateFlows();
|
||||
}
|
||||
|
||||
void CalcDlg::generateFlows(void)
|
||||
{
|
||||
mlpCalcThread->startCalc(*this);
|
||||
}
|
||||
|
||||
81
cashflow/CALCDLG.HPP
Normal file
81
cashflow/CALCDLG.HPP
Normal file
@@ -0,0 +1,81 @@
|
||||
#ifndef _CASHFLOW_CALCDLG_HPP_
|
||||
#define _CASHFLOW_CALCDLG_HPP_
|
||||
#ifndef _COMMON_DWINDOW_HPP_
|
||||
#include <common/dwindow.hpp>
|
||||
#endif
|
||||
#ifndef _COMMON_FONT_HPP_
|
||||
#include <common/font.hpp>
|
||||
#endif
|
||||
#ifndef _CASHFLOW_PREPAY_HPP_
|
||||
#include <cashflow/prepay.hpp>
|
||||
#endif
|
||||
#ifndef _CASHFLOW_CALCTHREAD_HPP_
|
||||
#include <cashflow/calcthrd.hpp>
|
||||
#endif
|
||||
|
||||
class FPSheet;
|
||||
class GraphWindow;
|
||||
|
||||
class CalcDlg : private DWindow
|
||||
{
|
||||
public:
|
||||
friend class CalcThread;
|
||||
CalcDlg(void);
|
||||
virtual ~CalcDlg();
|
||||
void createDialog(HWND hParent);
|
||||
private:
|
||||
enum{xPos=2,yPos=15,cxPos=315,cyPos=45};
|
||||
enum {IssBal,SMM,MtgPay,NetIntPay,GrossInt,SchPrn,Prepay,TotPrin,Cashflow,Factor};
|
||||
CallbackData::ReturnType destroyHandler(CallbackData &someCallbackData);
|
||||
CallbackData::ReturnType initHandler(CallbackData &someCallbackData);
|
||||
CallbackData::ReturnType commandHandler(CallbackData &someCallbackData);
|
||||
CallbackData::ReturnType closeHandler(CallbackData &someCallbackData);
|
||||
void handlePrepayments(void);
|
||||
void setColumnTitles(void);
|
||||
void setColumnTypes(void);
|
||||
void generateFlows(void);
|
||||
|
||||
Callback<CalcDlg> mCommandHandler;
|
||||
Callback<CalcDlg> mDestroyHandler;
|
||||
Callback<CalcDlg> mInitHandler;
|
||||
Callback<CalcDlg> mCloseHandler;
|
||||
FPSheet *mlpCalcSheet;
|
||||
CalcThread *mlpCalcThread;
|
||||
GraphWindow *mlpGraphWindow;
|
||||
PrePay mPrePay;
|
||||
Font mFont;
|
||||
};
|
||||
|
||||
#pragma warning(disable:4355)
|
||||
inline
|
||||
CalcDlg::CalcDlg(void)
|
||||
: mlpCalcSheet(0), mlpCalcThread(0), mFont("Helv",6),
|
||||
mlpGraphWindow(0)
|
||||
{
|
||||
mDestroyHandler.setCallback(this,&CalcDlg::destroyHandler);
|
||||
mInitHandler.setCallback(this,&CalcDlg::initHandler);
|
||||
mCommandHandler.setCallback(this,&CalcDlg::commandHandler);
|
||||
mCloseHandler.setCallback(this,&CalcDlg::closeHandler);
|
||||
insertHandler(VectorHandler::DestroyHandler,&mDestroyHandler);
|
||||
insertHandler(VectorHandler::InitDialogHandler,&mInitHandler);
|
||||
insertHandler(VectorHandler::CommandHandler,&mCommandHandler);
|
||||
insertHandler(VectorHandler::CloseHandler,&mCloseHandler);
|
||||
}
|
||||
#pragma warning(default:4355)
|
||||
|
||||
inline
|
||||
CalcDlg::~CalcDlg()
|
||||
{
|
||||
removeHandler(VectorHandler::DestroyHandler,&mDestroyHandler);
|
||||
removeHandler(VectorHandler::InitDialogHandler,&mInitHandler);
|
||||
removeHandler(VectorHandler::CommandHandler,&mCommandHandler);
|
||||
removeHandler(VectorHandler::CloseHandler,&mCloseHandler);
|
||||
}
|
||||
|
||||
inline
|
||||
void CalcDlg::createDialog(HWND hParent)
|
||||
{
|
||||
HINSTANCE hInstance((HINSTANCE)::GetWindowLong(hParent,GWL_HINSTANCE));
|
||||
::DialogBoxParam(hInstance,(LPSTR)"Cashflow",hParent,DWindow::DlgProc,(LPARAM)(DWindow*)this);
|
||||
}
|
||||
#endif
|
||||
87
cashflow/CALCTHRD.CPP
Normal file
87
cashflow/CALCTHRD.CPP
Normal file
@@ -0,0 +1,87 @@
|
||||
#include <common/stdio.hpp>
|
||||
#include <cashflow/calcthrd.hpp>
|
||||
#include <cashflow/calcdlg.hpp>
|
||||
#include <cashflow/cashflow.hpp>
|
||||
#include <cashflow/cashdefs.hpp>
|
||||
#include <cashflow/ppydlg.hpp>
|
||||
#include <cashflow/graphwnd.hpp>
|
||||
#include <fpsheet/fpsheet.hpp>
|
||||
#include <common/stdio.hpp>
|
||||
#include <common/crsctrl.hpp>
|
||||
|
||||
DWORD CalcThread::threadHandler(ThreadMessage &someThreadMessage)
|
||||
{
|
||||
switch(someThreadMessage.message())
|
||||
{
|
||||
case ThreadMessage::TM_CREATE :
|
||||
break;
|
||||
case ThreadMessage::TM_DESTROY :
|
||||
break;
|
||||
case ThreadMessage::TM_USER :
|
||||
if(someThreadMessage.userDataOne()==CalcStart)
|
||||
{
|
||||
mCalcMutex.requestMutex();
|
||||
performCalc(*(CalcDlg*)someThreadMessage.userDataTwo());
|
||||
mCalcMutex.releaseMutex();
|
||||
}
|
||||
break;
|
||||
}
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
void CalcThread::startCalc(CalcDlg &calcDlg)
|
||||
{
|
||||
mIsInReset=TRUE;
|
||||
mCalcMutex.requestMutex();
|
||||
mIsInReset=FALSE;
|
||||
ThreadMessage startMessage(ThreadMessage::TM_USER,CalcThread::CalcStart,(DWORD)&calcDlg);
|
||||
postMessage(startMessage);
|
||||
mCalcMutex.releaseMutex();
|
||||
}
|
||||
|
||||
void CalcThread::performCalc(CalcDlg &calcDlg)
|
||||
{
|
||||
Block<PureCashFlow> cashFlows;
|
||||
PurePassThru passThru;
|
||||
CashFlow cashFlow;
|
||||
String trmString;
|
||||
String prnString;
|
||||
String cpnString;
|
||||
size_t numFlows;
|
||||
|
||||
calcDlg.getText(CALC_TERM,trmString);
|
||||
calcDlg.getText(CALC_PRINCIPAL,prnString);
|
||||
calcDlg.getText(CALC_COUPON,cpnString);
|
||||
if(trmString.isNull()||prnString.isNull()||cpnString.isNull()){::MessageBeep(0);return;}
|
||||
passThru.issBal(::atof((LPSTR)prnString));
|
||||
passThru.wac(::atof((LPSTR)cpnString));
|
||||
passThru.coupon(::atof((LPSTR)cpnString));
|
||||
passThru.wam(::atol((LPSTR)trmString));
|
||||
passThru.origTerm(::atol((LPSTR)trmString));
|
||||
passThru.psa(0.00);
|
||||
if(calcDlg.mPrePay.amount())cashFlow.generateCashFlows(passThru,cashFlows,calcDlg.mPrePay);
|
||||
else cashFlow.generateCashFlows(passThru,cashFlows);
|
||||
calcDlg.mlpGraphWindow->showFlows(cashFlows,::atol((LPSTR)trmString));
|
||||
numFlows=cashFlows.size();
|
||||
calcDlg.mlpCalcSheet->clearData();
|
||||
calcDlg.mlpCalcSheet->setCurrentCell(1,1);
|
||||
for(short itemIndex=0;itemIndex<numFlows;itemIndex++)
|
||||
{
|
||||
Block<String> itemStrings;
|
||||
if(mIsInReset)break;
|
||||
cashFlows[itemIndex].itemStrings(itemStrings);
|
||||
calcDlg.mlpCalcSheet->setCellData(itemIndex,CalcDlg::IssBal,itemStrings[CalcDlg::IssBal]);
|
||||
calcDlg.mlpCalcSheet->setCellData(itemIndex,CalcDlg::SMM,itemStrings[CalcDlg::SMM]);
|
||||
calcDlg.mlpCalcSheet->setCellData(itemIndex,CalcDlg::MtgPay,itemStrings[CalcDlg::MtgPay]);
|
||||
calcDlg.mlpCalcSheet->setCellData(itemIndex,CalcDlg::NetIntPay,itemStrings[CalcDlg::NetIntPay]);
|
||||
calcDlg.mlpCalcSheet->setCellData(itemIndex,CalcDlg::GrossInt,itemStrings[CalcDlg::GrossInt]);
|
||||
calcDlg.mlpCalcSheet->setCellData(itemIndex,CalcDlg::SchPrn,itemStrings[CalcDlg::SchPrn]);
|
||||
calcDlg.mlpCalcSheet->setCellData(itemIndex,CalcDlg::Prepay,itemStrings[CalcDlg::Prepay]);
|
||||
calcDlg.mlpCalcSheet->setCellData(itemIndex,CalcDlg::TotPrin,itemStrings[CalcDlg::TotPrin]);
|
||||
calcDlg.mlpCalcSheet->setCellData(itemIndex,CalcDlg::Cashflow,itemStrings[CalcDlg::Cashflow]);
|
||||
calcDlg.mlpCalcSheet->setCellData(itemIndex,CalcDlg::Factor,itemStrings[CalcDlg::Factor]);
|
||||
}
|
||||
::SetFocus(calcDlg.mlpCalcSheet->getHandle());
|
||||
return;
|
||||
}
|
||||
|
||||
61
cashflow/CALCTHRD.HPP
Normal file
61
cashflow/CALCTHRD.HPP
Normal file
@@ -0,0 +1,61 @@
|
||||
#ifndef _CASHFLOW_CALCTHREAD_HPP_
|
||||
#define _CASHFLOW_CALCTHREAD_HPP_
|
||||
#ifndef _THREAD_MESSAGETHREAD_HPP_
|
||||
#include <thread/mthread.hpp>
|
||||
#endif
|
||||
|
||||
class CalcDlg;
|
||||
class GraphWindow;
|
||||
|
||||
class CalcThread : public MessageThread
|
||||
{
|
||||
public:
|
||||
enum{CalcStart};
|
||||
CalcThread(void);
|
||||
virtual ~CalcThread();
|
||||
void startCalc(CalcDlg &calcDlg);
|
||||
private:
|
||||
CalcThread(const CalcThread &someCalcThread);
|
||||
CalcThread &operator=(const CalcThread &someCalcThread);
|
||||
DWORD threadHandler(ThreadMessage &someThreadMessage);
|
||||
void performCalc(CalcDlg &calcDlg);
|
||||
|
||||
ThreadCallback<CalcThread> mThreadHandler;
|
||||
WORD mIsInReset;
|
||||
Mutex mCalcMutex;
|
||||
};
|
||||
|
||||
#pragma warning(disable:4355)
|
||||
inline
|
||||
CalcThread::CalcThread(void)
|
||||
: mCalcMutex("CalcMutex"), mIsInReset(FALSE)
|
||||
{
|
||||
mThreadHandler.setCallback(this,&CalcThread::threadHandler);
|
||||
insertHandler(&mThreadHandler);
|
||||
}
|
||||
#pragma warning(default:4355)
|
||||
|
||||
inline
|
||||
CalcThread::CalcThread(const CalcThread &someCalcThread)
|
||||
: mCalcMutex("CalcMutex"), mIsInReset(FALSE)
|
||||
{ // no implementation
|
||||
*this=someCalcThread;
|
||||
}
|
||||
|
||||
inline
|
||||
CalcThread::~CalcThread()
|
||||
{
|
||||
mIsInReset=TRUE;
|
||||
mCalcMutex.requestMutex();
|
||||
mCalcMutex.releaseMutex();
|
||||
stop();
|
||||
removeHandler(&mThreadHandler);
|
||||
}
|
||||
|
||||
inline
|
||||
CalcThread &CalcThread::operator=(const CalcThread &/*someCalcThread*/)
|
||||
{ // no implementation
|
||||
return *this;
|
||||
}
|
||||
#endif
|
||||
|
||||
4
cashflow/CASHDEFS.HPP
Normal file
4
cashflow/CASHDEFS.HPP
Normal file
@@ -0,0 +1,4 @@
|
||||
#ifndef _CASHFLOW_CASHDEFS_HPP_
|
||||
#define _CASHFLOW_CASHDEFS_HPP_
|
||||
#include <cashflow/cashflow.h>
|
||||
#endif
|
||||
860
cashflow/CASHFLOW.BAK
Normal file
860
cashflow/CASHFLOW.BAK
Normal file
@@ -0,0 +1,860 @@
|
||||
# Microsoft Developer Studio Generated NMAKE File, Format Version 4.20
|
||||
# ** DO NOT EDIT **
|
||||
|
||||
# TARGTYPE "Win32 (x86) Application" 0x0101
|
||||
|
||||
!IF "$(CFG)" == ""
|
||||
CFG=cashflow - Win32 Debug
|
||||
!MESSAGE No configuration specified. Defaulting to cashflow - Win32 Debug.
|
||||
!ENDIF
|
||||
|
||||
!IF "$(CFG)" != "cashflow - Win32 Release" && "$(CFG)" !=\
|
||||
"cashflow - Win32 Debug"
|
||||
!MESSAGE Invalid configuration "$(CFG)" specified.
|
||||
!MESSAGE You can specify a configuration when running NMAKE on this makefile
|
||||
!MESSAGE by defining the macro CFG on the command line. For example:
|
||||
!MESSAGE
|
||||
!MESSAGE NMAKE /f "Cashflow.mak" CFG="cashflow - Win32 Debug"
|
||||
!MESSAGE
|
||||
!MESSAGE Possible choices for configuration are:
|
||||
!MESSAGE
|
||||
!MESSAGE "cashflow - Win32 Release" (based on "Win32 (x86) Application")
|
||||
!MESSAGE "cashflow - Win32 Debug" (based on "Win32 (x86) Application")
|
||||
!MESSAGE
|
||||
!ERROR An invalid configuration is specified.
|
||||
!ENDIF
|
||||
|
||||
!IF "$(OS)" == "Windows_NT"
|
||||
NULL=
|
||||
!ELSE
|
||||
NULL=nul
|
||||
!ENDIF
|
||||
################################################################################
|
||||
# Begin Project
|
||||
# PROP Target_Last_Scanned "cashflow - Win32 Debug"
|
||||
MTL=mktyplib.exe
|
||||
CPP=cl.exe
|
||||
RSC=rc.exe
|
||||
|
||||
!IF "$(CFG)" == "cashflow - Win32 Release"
|
||||
|
||||
# PROP BASE Use_MFC 0
|
||||
# PROP BASE Use_Debug_Libraries 0
|
||||
# PROP BASE Output_Dir "Release"
|
||||
# PROP BASE Intermediate_Dir "Release"
|
||||
# PROP BASE Target_Dir ""
|
||||
# PROP Use_MFC 0
|
||||
# PROP Use_Debug_Libraries 0
|
||||
# PROP Output_Dir "Release"
|
||||
# PROP Intermediate_Dir "Release"
|
||||
# PROP Target_Dir ""
|
||||
OUTDIR=.\Release
|
||||
INTDIR=.\Release
|
||||
|
||||
ALL : "$(OUTDIR)\Cashflow.exe"
|
||||
|
||||
CLEAN :
|
||||
-@erase "$(INTDIR)\Calcdlg.obj"
|
||||
-@erase "$(INTDIR)\Calcthrd.obj"
|
||||
-@erase "$(INTDIR)\Cashflow.obj"
|
||||
-@erase "$(INTDIR)\Cashflow.res"
|
||||
-@erase "$(INTDIR)\graph3d.obj"
|
||||
-@erase "$(INTDIR)\graphwnd.obj"
|
||||
-@erase "$(INTDIR)\Main.obj"
|
||||
-@erase "$(INTDIR)\Ppydlg.obj"
|
||||
-@erase "$(INTDIR)\Purecflo.obj"
|
||||
-@erase "$(INTDIR)\Stdtmpl.obj"
|
||||
-@erase "$(OUTDIR)\Cashflow.exe"
|
||||
|
||||
"$(OUTDIR)" :
|
||||
if not exist "$(OUTDIR)/$(NULL)" mkdir "$(OUTDIR)"
|
||||
|
||||
# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /YX /c
|
||||
# ADD CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /YX /c
|
||||
CPP_PROJ=/nologo /ML /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS"\
|
||||
/Fp"$(INTDIR)/Cashflow.pch" /YX /Fo"$(INTDIR)/" /c
|
||||
CPP_OBJS=.\Release/
|
||||
CPP_SBRS=.\.
|
||||
# ADD BASE MTL /nologo /D "NDEBUG" /win32
|
||||
# ADD MTL /nologo /D "NDEBUG" /win32
|
||||
MTL_PROJ=/nologo /D "NDEBUG" /win32
|
||||
# ADD BASE RSC /l 0x409 /d "NDEBUG"
|
||||
# ADD RSC /l 0x409 /d "NDEBUG"
|
||||
RSC_PROJ=/l 0x409 /fo"$(INTDIR)/Cashflow.res" /d "NDEBUG"
|
||||
BSC32=bscmake.exe
|
||||
# ADD BASE BSC32 /nologo
|
||||
# ADD BSC32 /nologo
|
||||
BSC32_FLAGS=/nologo /o"$(OUTDIR)/Cashflow.bsc"
|
||||
BSC32_SBRS= \
|
||||
|
||||
LINK32=link.exe
|
||||
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /machine:I386
|
||||
# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /machine:I386
|
||||
LINK32_FLAGS=kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib\
|
||||
advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib\
|
||||
odbccp32.lib /nologo /subsystem:windows /incremental:no\
|
||||
/pdb:"$(OUTDIR)/Cashflow.pdb" /machine:I386 /out:"$(OUTDIR)/Cashflow.exe"
|
||||
LINK32_OBJS= \
|
||||
"$(INTDIR)\Calcdlg.obj" \
|
||||
"$(INTDIR)\Calcthrd.obj" \
|
||||
"$(INTDIR)\Cashflow.obj" \
|
||||
"$(INTDIR)\Cashflow.res" \
|
||||
"$(INTDIR)\graph3d.obj" \
|
||||
"$(INTDIR)\graphwnd.obj" \
|
||||
"$(INTDIR)\Main.obj" \
|
||||
"$(INTDIR)\Ppydlg.obj" \
|
||||
"$(INTDIR)\Purecflo.obj" \
|
||||
"$(INTDIR)\Stdtmpl.obj" \
|
||||
"..\exe\fpsheet.lib" \
|
||||
"..\exe\mscommon.lib" \
|
||||
"..\exe\msengine.lib" \
|
||||
"..\exe\msthread.lib"
|
||||
|
||||
"$(OUTDIR)\Cashflow.exe" : "$(OUTDIR)" $(DEF_FILE) $(LINK32_OBJS)
|
||||
$(LINK32) @<<
|
||||
$(LINK32_FLAGS) $(LINK32_OBJS)
|
||||
<<
|
||||
|
||||
!ELSEIF "$(CFG)" == "cashflow - Win32 Debug"
|
||||
|
||||
# PROP BASE Use_MFC 0
|
||||
# PROP BASE Use_Debug_Libraries 1
|
||||
# PROP BASE Output_Dir "Debug"
|
||||
# PROP BASE Intermediate_Dir "Debug"
|
||||
# PROP BASE Target_Dir ""
|
||||
# PROP Use_MFC 0
|
||||
# PROP Use_Debug_Libraries 1
|
||||
# PROP Output_Dir "msvcobj"
|
||||
# PROP Intermediate_Dir "msvcobj"
|
||||
# PROP Target_Dir ""
|
||||
OUTDIR=.\msvcobj
|
||||
INTDIR=.\msvcobj
|
||||
|
||||
ALL : "..\exe\cashflow.exe"
|
||||
|
||||
CLEAN :
|
||||
-@erase "$(INTDIR)\Calcdlg.obj"
|
||||
-@erase "$(INTDIR)\Calcthrd.obj"
|
||||
-@erase "$(INTDIR)\Cashflow.obj"
|
||||
-@erase "$(INTDIR)\Cashflow.res"
|
||||
-@erase "$(INTDIR)\graph3d.obj"
|
||||
-@erase "$(INTDIR)\graphwnd.obj"
|
||||
-@erase "$(INTDIR)\Main.obj"
|
||||
-@erase "$(INTDIR)\Ppydlg.obj"
|
||||
-@erase "$(INTDIR)\Purecflo.obj"
|
||||
-@erase "$(INTDIR)\Stdtmpl.obj"
|
||||
-@erase "$(OUTDIR)\cashflow.pdb"
|
||||
-@erase "..\exe\cashflow.exe"
|
||||
-@erase "..\exe\cashflow.ilk"
|
||||
|
||||
"$(OUTDIR)" :
|
||||
if not exist "$(OUTDIR)/$(NULL)" mkdir "$(OUTDIR)"
|
||||
|
||||
# ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /YX /c
|
||||
# ADD CPP /nologo /Zp1 /MTd /Z7 /O2 /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "__FLAT__" /D "STRICT" /Fp"c:\work\exe\msvc42.pch" /YX"windows.h" /c
|
||||
CPP_PROJ=/nologo /Zp1 /MTd /Z7 /O2 /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D\
|
||||
"__FLAT__" /D "STRICT" /Fp"c:\work\exe\msvc42.pch" /YX"windows.h"\
|
||||
/Fo"$(INTDIR)/" /c
|
||||
CPP_OBJS=.\msvcobj/
|
||||
CPP_SBRS=.\.
|
||||
# ADD BASE MTL /nologo /D "_DEBUG" /win32
|
||||
# ADD MTL /nologo /D "_DEBUG" /win32
|
||||
MTL_PROJ=/nologo /D "_DEBUG" /win32
|
||||
# ADD BASE RSC /l 0x409 /d "_DEBUG"
|
||||
# ADD RSC /l 0x409 /d "_DEBUG"
|
||||
RSC_PROJ=/l 0x409 /fo"$(INTDIR)/Cashflow.res" /d "_DEBUG"
|
||||
BSC32=bscmake.exe
|
||||
# ADD BASE BSC32 /nologo
|
||||
# ADD BSC32 /nologo
|
||||
BSC32_FLAGS=/nologo /o"$(OUTDIR)/Cashflow.bsc"
|
||||
BSC32_SBRS= \
|
||||
|
||||
LINK32=link.exe
|
||||
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /debug /machine:I386
|
||||
# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib uuid.lib /nologo /subsystem:windows /debug /machine:I386 /out:"..\exe\cashflow.exe"
|
||||
# SUBTRACT LINK32 /pdb:none
|
||||
LINK32_FLAGS=kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib\
|
||||
advapi32.lib shell32.lib uuid.lib /nologo /subsystem:windows /incremental:yes\
|
||||
/pdb:"$(OUTDIR)/cashflow.pdb" /debug /machine:I386 /out:"..\exe\cashflow.exe"
|
||||
LINK32_OBJS= \
|
||||
"$(INTDIR)\Calcdlg.obj" \
|
||||
"$(INTDIR)\Calcthrd.obj" \
|
||||
"$(INTDIR)\Cashflow.obj" \
|
||||
"$(INTDIR)\Cashflow.res" \
|
||||
"$(INTDIR)\graph3d.obj" \
|
||||
"$(INTDIR)\graphwnd.obj" \
|
||||
"$(INTDIR)\Main.obj" \
|
||||
"$(INTDIR)\Ppydlg.obj" \
|
||||
"$(INTDIR)\Purecflo.obj" \
|
||||
"$(INTDIR)\Stdtmpl.obj" \
|
||||
"..\exe\fpsheet.lib" \
|
||||
"..\exe\mscommon.lib" \
|
||||
"..\exe\msengine.lib" \
|
||||
"..\exe\msthread.lib"
|
||||
|
||||
"..\exe\cashflow.exe" : "$(OUTDIR)" $(DEF_FILE) $(LINK32_OBJS)
|
||||
$(LINK32) @<<
|
||||
$(LINK32_FLAGS) $(LINK32_OBJS)
|
||||
<<
|
||||
|
||||
!ENDIF
|
||||
|
||||
.c{$(CPP_OBJS)}.obj:
|
||||
$(CPP) $(CPP_PROJ) $<
|
||||
|
||||
.cpp{$(CPP_OBJS)}.obj:
|
||||
$(CPP) $(CPP_PROJ) $<
|
||||
|
||||
.cxx{$(CPP_OBJS)}.obj:
|
||||
$(CPP) $(CPP_PROJ) $<
|
||||
|
||||
.c{$(CPP_SBRS)}.sbr:
|
||||
$(CPP) $(CPP_PROJ) $<
|
||||
|
||||
.cpp{$(CPP_SBRS)}.sbr:
|
||||
$(CPP) $(CPP_PROJ) $<
|
||||
|
||||
.cxx{$(CPP_SBRS)}.sbr:
|
||||
$(CPP) $(CPP_PROJ) $<
|
||||
|
||||
################################################################################
|
||||
# Begin Target
|
||||
|
||||
# Name "cashflow - Win32 Release"
|
||||
# Name "cashflow - Win32 Debug"
|
||||
|
||||
!IF "$(CFG)" == "cashflow - Win32 Release"
|
||||
|
||||
!ELSEIF "$(CFG)" == "cashflow - Win32 Debug"
|
||||
|
||||
!ENDIF
|
||||
|
||||
################################################################################
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Stdtmpl.cpp
|
||||
|
||||
!IF "$(CFG)" == "cashflow - Win32 Release"
|
||||
|
||||
DEP_CPP_STDTM=\
|
||||
{$(INCLUDE)}"\.\Calcdlg.hpp"\
|
||||
{$(INCLUDE)}"\.\Calcthrd.hpp"\
|
||||
{$(INCLUDE)}"\.\Ppydlg.hpp"\
|
||||
{$(INCLUDE)}"\.\Prepay.hpp"\
|
||||
{$(INCLUDE)}"\.\Purecflo.hpp"\
|
||||
{$(INCLUDE)}"\Common\Assert.hpp"\
|
||||
{$(INCLUDE)}"\Common\Block.hpp"\
|
||||
{$(INCLUDE)}"\Common\Block.tpp"\
|
||||
{$(INCLUDE)}"\Common\Callback.hpp"\
|
||||
{$(INCLUDE)}"\Common\Callback.tpp"\
|
||||
{$(INCLUDE)}"\Common\Cbdata.hpp"\
|
||||
{$(INCLUDE)}"\Common\Cbptr.hpp"\
|
||||
{$(INCLUDE)}"\Common\Dwindow.hpp"\
|
||||
{$(INCLUDE)}"\Common\Filetime.hpp"\
|
||||
{$(INCLUDE)}"\Common\Fixup.hpp"\
|
||||
{$(INCLUDE)}"\Common\Font.hpp"\
|
||||
{$(INCLUDE)}"\Common\Gdiobj.hpp"\
|
||||
{$(INCLUDE)}"\Common\Guiwnd.hpp"\
|
||||
{$(INCLUDE)}"\Common\Pcallbck.hpp"\
|
||||
{$(INCLUDE)}"\Common\Point.hpp"\
|
||||
{$(INCLUDE)}"\Common\Pvector.hpp"\
|
||||
{$(INCLUDE)}"\Common\Pvector.tpp"\
|
||||
{$(INCLUDE)}"\Common\Stdio.hpp"\
|
||||
{$(INCLUDE)}"\Common\Stdlib.hpp"\
|
||||
{$(INCLUDE)}"\Common\String.hpp"\
|
||||
{$(INCLUDE)}"\Common\Systime.hpp"\
|
||||
{$(INCLUDE)}"\Common\Types.hpp"\
|
||||
{$(INCLUDE)}"\Common\Vhandler.hpp"\
|
||||
{$(INCLUDE)}"\Common\Windows.hpp"\
|
||||
{$(INCLUDE)}"\Common\Windowsx.hpp"\
|
||||
{$(INCLUDE)}"\Common\Winnt.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Context.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Event.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Msgqueue.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Mthread.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Mutex.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Ptcllbck.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Qthread.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Savearea.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Tcallbck.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Tcallbck.tpp"\
|
||||
{$(INCLUDE)}"\Thread\Thmsg.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Thread.hpp"\
|
||||
|
||||
|
||||
"$(INTDIR)\Stdtmpl.obj" : $(SOURCE) $(DEP_CPP_STDTM) "$(INTDIR)"
|
||||
|
||||
|
||||
!ELSEIF "$(CFG)" == "cashflow - Win32 Debug"
|
||||
|
||||
DEP_CPP_STDTM=\
|
||||
{$(INCLUDE)}"\.\Calcdlg.hpp"\
|
||||
{$(INCLUDE)}"\.\Calcthrd.hpp"\
|
||||
{$(INCLUDE)}"\.\Ppydlg.hpp"\
|
||||
{$(INCLUDE)}"\.\Prepay.hpp"\
|
||||
{$(INCLUDE)}"\.\Purecflo.hpp"\
|
||||
{$(INCLUDE)}"\Common\Assert.hpp"\
|
||||
{$(INCLUDE)}"\Common\Block.hpp"\
|
||||
{$(INCLUDE)}"\Common\Block.tpp"\
|
||||
{$(INCLUDE)}"\Common\Callback.hpp"\
|
||||
{$(INCLUDE)}"\Common\Callback.tpp"\
|
||||
{$(INCLUDE)}"\Common\Cbdata.hpp"\
|
||||
{$(INCLUDE)}"\Common\Cbptr.hpp"\
|
||||
{$(INCLUDE)}"\Common\Dwindow.hpp"\
|
||||
{$(INCLUDE)}"\Common\Filetime.hpp"\
|
||||
{$(INCLUDE)}"\Common\Fixup.hpp"\
|
||||
{$(INCLUDE)}"\Common\Font.hpp"\
|
||||
{$(INCLUDE)}"\Common\Gdiobj.hpp"\
|
||||
{$(INCLUDE)}"\Common\Guiwnd.hpp"\
|
||||
{$(INCLUDE)}"\Common\Pcallbck.hpp"\
|
||||
{$(INCLUDE)}"\Common\Point.hpp"\
|
||||
{$(INCLUDE)}"\Common\Pvector.hpp"\
|
||||
{$(INCLUDE)}"\Common\Pvector.tpp"\
|
||||
{$(INCLUDE)}"\Common\Stdlib.hpp"\
|
||||
{$(INCLUDE)}"\Common\String.hpp"\
|
||||
{$(INCLUDE)}"\Common\Systime.hpp"\
|
||||
{$(INCLUDE)}"\Common\Types.hpp"\
|
||||
{$(INCLUDE)}"\Common\Vhandler.hpp"\
|
||||
{$(INCLUDE)}"\Common\Windows.hpp"\
|
||||
{$(INCLUDE)}"\Common\Windowsx.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Mthread.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Ptcllbck.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Qthread.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Tcallbck.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Tcallbck.tpp"\
|
||||
{$(INCLUDE)}"\Thread\Thmsg.hpp"\
|
||||
|
||||
|
||||
"$(INTDIR)\Stdtmpl.obj" : $(SOURCE) $(DEP_CPP_STDTM) "$(INTDIR)"
|
||||
|
||||
|
||||
!ENDIF
|
||||
|
||||
# End Source File
|
||||
################################################################################
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Calcthrd.cpp
|
||||
|
||||
!IF "$(CFG)" == "cashflow - Win32 Release"
|
||||
|
||||
DEP_CPP_CALCT=\
|
||||
"..\..\Parts\tbpro32\Include\Ssdll.h"\
|
||||
{$(INCLUDE)}"\.\Calcdlg.hpp"\
|
||||
{$(INCLUDE)}"\.\Calcthrd.hpp"\
|
||||
{$(INCLUDE)}"\.\Cashdefs.hpp"\
|
||||
{$(INCLUDE)}"\.\Cashflow.h"\
|
||||
{$(INCLUDE)}"\.\Cashflow.hpp"\
|
||||
{$(INCLUDE)}"\.\Graphwnd.hpp"\
|
||||
{$(INCLUDE)}"\.\Passthru.hpp"\
|
||||
{$(INCLUDE)}"\.\Ppydlg.hpp"\
|
||||
{$(INCLUDE)}"\.\Prepay.hpp"\
|
||||
{$(INCLUDE)}"\.\Purecflo.hpp"\
|
||||
{$(INCLUDE)}"\Common\Assert.hpp"\
|
||||
{$(INCLUDE)}"\Common\Block.hpp"\
|
||||
{$(INCLUDE)}"\Common\Block.tpp"\
|
||||
{$(INCLUDE)}"\Common\Callback.hpp"\
|
||||
{$(INCLUDE)}"\Common\Callback.tpp"\
|
||||
{$(INCLUDE)}"\Common\Cbdata.hpp"\
|
||||
{$(INCLUDE)}"\Common\Cbptr.hpp"\
|
||||
{$(INCLUDE)}"\Common\Crsctrl.hpp"\
|
||||
{$(INCLUDE)}"\Common\Dwindow.hpp"\
|
||||
{$(INCLUDE)}"\Common\Filetime.hpp"\
|
||||
{$(INCLUDE)}"\Common\Font.hpp"\
|
||||
{$(INCLUDE)}"\Common\Gdiobj.hpp"\
|
||||
{$(INCLUDE)}"\common\gdipoint.hpp"\
|
||||
{$(INCLUDE)}"\Common\Guiwnd.hpp"\
|
||||
{$(INCLUDE)}"\Common\Pcallbck.hpp"\
|
||||
{$(INCLUDE)}"\Common\Point.hpp"\
|
||||
{$(INCLUDE)}"\Common\Pointer.hpp"\
|
||||
{$(INCLUDE)}"\Common\Rect.hpp"\
|
||||
{$(INCLUDE)}"\Common\Stdio.hpp"\
|
||||
{$(INCLUDE)}"\Common\Stdlib.hpp"\
|
||||
{$(INCLUDE)}"\Common\String.hpp"\
|
||||
{$(INCLUDE)}"\Common\Systime.hpp"\
|
||||
{$(INCLUDE)}"\Common\Vhandler.hpp"\
|
||||
{$(INCLUDE)}"\Common\Window.hpp"\
|
||||
{$(INCLUDE)}"\Common\Windows.hpp"\
|
||||
{$(INCLUDE)}"\Common\Windowsx.hpp"\
|
||||
{$(INCLUDE)}"\Common\Winnt.hpp"\
|
||||
{$(INCLUDE)}"\Fpsheet\Coltype.hpp"\
|
||||
{$(INCLUDE)}"\Fpsheet\Fpapi.hpp"\
|
||||
{$(INCLUDE)}"\Fpsheet\Fpsheet.hpp"\
|
||||
{$(INCLUDE)}"\Fpsheet\Menuitem.hpp"\
|
||||
{$(INCLUDE)}"\Tbpro32\Ssdll.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Context.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Event.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Msgqueue.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Mthread.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Mutex.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Ptcllbck.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Qthread.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Savearea.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Tcallbck.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Tcallbck.tpp"\
|
||||
{$(INCLUDE)}"\Thread\Thmsg.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Thread.hpp"\
|
||||
|
||||
|
||||
"$(INTDIR)\Calcthrd.obj" : $(SOURCE) $(DEP_CPP_CALCT) "$(INTDIR)"
|
||||
|
||||
|
||||
!ELSEIF "$(CFG)" == "cashflow - Win32 Debug"
|
||||
|
||||
DEP_CPP_CALCT=\
|
||||
"..\..\Parts\tbpro32\Include\Ssdll.h"\
|
||||
{$(INCLUDE)}"\.\Calcdlg.hpp"\
|
||||
{$(INCLUDE)}"\.\Calcthrd.hpp"\
|
||||
{$(INCLUDE)}"\.\Cashdefs.hpp"\
|
||||
{$(INCLUDE)}"\.\Cashflow.h"\
|
||||
{$(INCLUDE)}"\.\Cashflow.hpp"\
|
||||
{$(INCLUDE)}"\.\Graphwnd.hpp"\
|
||||
{$(INCLUDE)}"\.\Passthru.hpp"\
|
||||
{$(INCLUDE)}"\.\Ppydlg.hpp"\
|
||||
{$(INCLUDE)}"\.\Prepay.hpp"\
|
||||
{$(INCLUDE)}"\.\Purecflo.hpp"\
|
||||
{$(INCLUDE)}"\Common\Assert.hpp"\
|
||||
{$(INCLUDE)}"\Common\Block.hpp"\
|
||||
{$(INCLUDE)}"\Common\Block.tpp"\
|
||||
{$(INCLUDE)}"\Common\Callback.hpp"\
|
||||
{$(INCLUDE)}"\Common\Callback.tpp"\
|
||||
{$(INCLUDE)}"\Common\Cbdata.hpp"\
|
||||
{$(INCLUDE)}"\Common\Cbptr.hpp"\
|
||||
{$(INCLUDE)}"\Common\Crsctrl.hpp"\
|
||||
{$(INCLUDE)}"\Common\Dwindow.hpp"\
|
||||
{$(INCLUDE)}"\Common\Font.hpp"\
|
||||
{$(INCLUDE)}"\Common\Gdiobj.hpp"\
|
||||
{$(INCLUDE)}"\common\gdipoint.hpp"\
|
||||
{$(INCLUDE)}"\Common\Guiwnd.hpp"\
|
||||
{$(INCLUDE)}"\Common\Pcallbck.hpp"\
|
||||
{$(INCLUDE)}"\Common\Point.hpp"\
|
||||
{$(INCLUDE)}"\Common\Pointer.hpp"\
|
||||
{$(INCLUDE)}"\Common\Rect.hpp"\
|
||||
{$(INCLUDE)}"\Common\Stdio.hpp"\
|
||||
{$(INCLUDE)}"\Common\Stdlib.hpp"\
|
||||
{$(INCLUDE)}"\Common\String.hpp"\
|
||||
{$(INCLUDE)}"\Common\Vhandler.hpp"\
|
||||
{$(INCLUDE)}"\Common\Window.hpp"\
|
||||
{$(INCLUDE)}"\Common\Windows.hpp"\
|
||||
{$(INCLUDE)}"\Common\Windowsx.hpp"\
|
||||
{$(INCLUDE)}"\Fpsheet\Coltype.hpp"\
|
||||
{$(INCLUDE)}"\Fpsheet\Fpapi.hpp"\
|
||||
{$(INCLUDE)}"\Fpsheet\Fpsheet.hpp"\
|
||||
{$(INCLUDE)}"\Fpsheet\Menuitem.hpp"\
|
||||
{$(INCLUDE)}"\Tbpro32\Ssdll.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Mthread.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Qthread.hpp"\
|
||||
|
||||
|
||||
"$(INTDIR)\Calcthrd.obj" : $(SOURCE) $(DEP_CPP_CALCT) "$(INTDIR)"
|
||||
|
||||
|
||||
!ENDIF
|
||||
|
||||
# End Source File
|
||||
################################################################################
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Cashflow.cpp
|
||||
DEP_CPP_CASHF=\
|
||||
{$(INCLUDE)}"\.\Cashflow.hpp"\
|
||||
{$(INCLUDE)}"\.\Passthru.hpp"\
|
||||
{$(INCLUDE)}"\.\Prepay.hpp"\
|
||||
{$(INCLUDE)}"\.\Purecflo.hpp"\
|
||||
{$(INCLUDE)}"\Common\Assert.hpp"\
|
||||
{$(INCLUDE)}"\Common\Block.hpp"\
|
||||
{$(INCLUDE)}"\Common\Block.tpp"\
|
||||
{$(INCLUDE)}"\Common\Stdlib.hpp"\
|
||||
{$(INCLUDE)}"\Common\String.hpp"\
|
||||
{$(INCLUDE)}"\Common\Windows.hpp"\
|
||||
|
||||
|
||||
"$(INTDIR)\Cashflow.obj" : $(SOURCE) $(DEP_CPP_CASHF) "$(INTDIR)"
|
||||
|
||||
|
||||
# End Source File
|
||||
################################################################################
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Cashflow.h
|
||||
|
||||
!IF "$(CFG)" == "cashflow - Win32 Release"
|
||||
|
||||
!ELSEIF "$(CFG)" == "cashflow - Win32 Debug"
|
||||
|
||||
!ENDIF
|
||||
|
||||
# End Source File
|
||||
################################################################################
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Cashflow.rc
|
||||
DEP_RSC_CASHFL=\
|
||||
{$(INCLUDE)}"\Ctype.h"\
|
||||
{$(INCLUDE)}"\Dde.h"\
|
||||
{$(INCLUDE)}"\Ddeml.h"\
|
||||
{$(INCLUDE)}"\Dlgs.h"\
|
||||
{$(INCLUDE)}"\Excpt.h"\
|
||||
{$(INCLUDE)}"\Lzexpand.h"\
|
||||
{$(INCLUDE)}"\Mmsystem.h"\
|
||||
{$(INCLUDE)}"\Mswsock.h"\
|
||||
{$(INCLUDE)}"\Nb30.h"\
|
||||
{$(INCLUDE)}"\Poppack.h"\
|
||||
{$(INCLUDE)}"\Pshpack1.h"\
|
||||
{$(INCLUDE)}"\Pshpack2.h"\
|
||||
{$(INCLUDE)}"\Pshpack4.h"\
|
||||
{$(INCLUDE)}"\Rpc.h"\
|
||||
{$(INCLUDE)}"\Rpcdce.h"\
|
||||
{$(INCLUDE)}"\Rpcdcep.h"\
|
||||
{$(INCLUDE)}"\Rpcnsi.h"\
|
||||
{$(INCLUDE)}"\Rpcnterr.h"\
|
||||
{$(INCLUDE)}"\Shellapi.h"\
|
||||
{$(INCLUDE)}"\Stdarg.h"\
|
||||
{$(INCLUDE)}"\String.h"\
|
||||
{$(INCLUDE)}"\Winbase.h"\
|
||||
{$(INCLUDE)}"\Wincon.h"\
|
||||
{$(INCLUDE)}"\Wincrypt.h"\
|
||||
{$(INCLUDE)}"\Windef.h"\
|
||||
{$(INCLUDE)}"\Windows.h"\
|
||||
{$(INCLUDE)}"\Winerror.h"\
|
||||
{$(INCLUDE)}"\Wingdi.h"\
|
||||
{$(INCLUDE)}"\Winnetwk.h"\
|
||||
{$(INCLUDE)}"\Winnls.h"\
|
||||
{$(INCLUDE)}"\Winnt.h"\
|
||||
{$(INCLUDE)}"\Winperf.h"\
|
||||
{$(INCLUDE)}"\Winreg.h"\
|
||||
{$(INCLUDE)}"\Winspool.h"\
|
||||
{$(INCLUDE)}"\Winuser.h"\
|
||||
{$(INCLUDE)}"\Winver.h"\
|
||||
|
||||
|
||||
"$(INTDIR)\Cashflow.res" : $(SOURCE) $(DEP_RSC_CASHFL) "$(INTDIR)"
|
||||
$(RSC) $(RSC_PROJ) $(SOURCE)
|
||||
|
||||
|
||||
# End Source File
|
||||
################################################################################
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Main.cpp
|
||||
DEP_CPP_MAIN_=\
|
||||
{$(INCLUDE)}"\.\Calcdlg.hpp"\
|
||||
{$(INCLUDE)}"\.\Calcthrd.hpp"\
|
||||
{$(INCLUDE)}"\.\Prepay.hpp"\
|
||||
{$(INCLUDE)}"\Common\Assert.hpp"\
|
||||
{$(INCLUDE)}"\Common\Block.hpp"\
|
||||
{$(INCLUDE)}"\Common\Block.tpp"\
|
||||
{$(INCLUDE)}"\Common\Callback.hpp"\
|
||||
{$(INCLUDE)}"\Common\Callback.tpp"\
|
||||
{$(INCLUDE)}"\Common\Cbdata.hpp"\
|
||||
{$(INCLUDE)}"\Common\Cbptr.hpp"\
|
||||
{$(INCLUDE)}"\Common\Dwindow.hpp"\
|
||||
{$(INCLUDE)}"\Common\Filetime.hpp"\
|
||||
{$(INCLUDE)}"\Common\Font.hpp"\
|
||||
{$(INCLUDE)}"\Common\Gdiobj.hpp"\
|
||||
{$(INCLUDE)}"\Common\Guiwnd.hpp"\
|
||||
{$(INCLUDE)}"\Common\Pcallbck.hpp"\
|
||||
{$(INCLUDE)}"\Common\Stdio.hpp"\
|
||||
{$(INCLUDE)}"\Common\Stdlib.hpp"\
|
||||
{$(INCLUDE)}"\Common\String.hpp"\
|
||||
{$(INCLUDE)}"\Common\Systime.hpp"\
|
||||
{$(INCLUDE)}"\Common\Vhandler.hpp"\
|
||||
{$(INCLUDE)}"\Common\Windows.hpp"\
|
||||
{$(INCLUDE)}"\Common\Windowsx.hpp"\
|
||||
{$(INCLUDE)}"\Common\Winnt.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Context.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Event.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Msgqueue.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Mthread.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Mutex.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Ptcllbck.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Qthread.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Savearea.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Tcallbck.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Tcallbck.tpp"\
|
||||
{$(INCLUDE)}"\Thread\Thmsg.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Thread.hpp"\
|
||||
|
||||
|
||||
"$(INTDIR)\Main.obj" : $(SOURCE) $(DEP_CPP_MAIN_) "$(INTDIR)"
|
||||
|
||||
|
||||
# End Source File
|
||||
################################################################################
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Ppydlg.cpp
|
||||
DEP_CPP_PPYDL=\
|
||||
{$(INCLUDE)}"\.\Cashdefs.hpp"\
|
||||
{$(INCLUDE)}"\.\Cashflow.h"\
|
||||
{$(INCLUDE)}"\.\Ppydlg.hpp"\
|
||||
{$(INCLUDE)}"\.\Prepay.hpp"\
|
||||
{$(INCLUDE)}"\Common\Assert.hpp"\
|
||||
{$(INCLUDE)}"\Common\Block.hpp"\
|
||||
{$(INCLUDE)}"\Common\Block.tpp"\
|
||||
{$(INCLUDE)}"\Common\Callback.hpp"\
|
||||
{$(INCLUDE)}"\Common\Callback.tpp"\
|
||||
{$(INCLUDE)}"\Common\Cbdata.hpp"\
|
||||
{$(INCLUDE)}"\Common\Cbptr.hpp"\
|
||||
{$(INCLUDE)}"\Common\Dwindow.hpp"\
|
||||
{$(INCLUDE)}"\Common\Guiwnd.hpp"\
|
||||
{$(INCLUDE)}"\Common\Pcallbck.hpp"\
|
||||
{$(INCLUDE)}"\Common\Stdio.hpp"\
|
||||
{$(INCLUDE)}"\Common\Stdlib.hpp"\
|
||||
{$(INCLUDE)}"\Common\String.hpp"\
|
||||
{$(INCLUDE)}"\Common\Vhandler.hpp"\
|
||||
{$(INCLUDE)}"\Common\Windows.hpp"\
|
||||
{$(INCLUDE)}"\Common\Windowsx.hpp"\
|
||||
|
||||
|
||||
"$(INTDIR)\Ppydlg.obj" : $(SOURCE) $(DEP_CPP_PPYDL) "$(INTDIR)"
|
||||
|
||||
|
||||
# End Source File
|
||||
################################################################################
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Purecflo.cpp
|
||||
DEP_CPP_PUREC=\
|
||||
{$(INCLUDE)}"\.\Purecflo.hpp"\
|
||||
{$(INCLUDE)}"\Common\Assert.hpp"\
|
||||
{$(INCLUDE)}"\Common\Block.hpp"\
|
||||
{$(INCLUDE)}"\Common\Block.tpp"\
|
||||
{$(INCLUDE)}"\Common\Stdlib.hpp"\
|
||||
{$(INCLUDE)}"\Common\String.hpp"\
|
||||
{$(INCLUDE)}"\Common\Windows.hpp"\
|
||||
|
||||
|
||||
"$(INTDIR)\Purecflo.obj" : $(SOURCE) $(DEP_CPP_PUREC) "$(INTDIR)"
|
||||
|
||||
|
||||
# End Source File
|
||||
################################################################################
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Calcdlg.cpp
|
||||
DEP_CPP_CALCD=\
|
||||
"..\..\Parts\tbpro32\Include\Ssdll.h"\
|
||||
{$(INCLUDE)}"\.\Calcdlg.hpp"\
|
||||
{$(INCLUDE)}"\.\Calcthrd.hpp"\
|
||||
{$(INCLUDE)}"\.\Cashdefs.hpp"\
|
||||
{$(INCLUDE)}"\.\Cashflow.h"\
|
||||
{$(INCLUDE)}"\.\Cashflow.hpp"\
|
||||
{$(INCLUDE)}"\.\Graphwnd.hpp"\
|
||||
{$(INCLUDE)}"\.\Passthru.hpp"\
|
||||
{$(INCLUDE)}"\.\Ppydlg.hpp"\
|
||||
{$(INCLUDE)}"\.\Prepay.hpp"\
|
||||
{$(INCLUDE)}"\.\Purecflo.hpp"\
|
||||
{$(INCLUDE)}"\Common\Assert.hpp"\
|
||||
{$(INCLUDE)}"\Common\Block.hpp"\
|
||||
{$(INCLUDE)}"\Common\Block.tpp"\
|
||||
{$(INCLUDE)}"\Common\Callback.hpp"\
|
||||
{$(INCLUDE)}"\Common\Callback.tpp"\
|
||||
{$(INCLUDE)}"\Common\Cbdata.hpp"\
|
||||
{$(INCLUDE)}"\Common\Cbptr.hpp"\
|
||||
{$(INCLUDE)}"\Common\Crsctrl.hpp"\
|
||||
{$(INCLUDE)}"\Common\Dwindow.hpp"\
|
||||
{$(INCLUDE)}"\Common\Filetime.hpp"\
|
||||
{$(INCLUDE)}"\Common\Font.hpp"\
|
||||
{$(INCLUDE)}"\Common\Gdiobj.hpp"\
|
||||
{$(INCLUDE)}"\common\gdipoint.hpp"\
|
||||
{$(INCLUDE)}"\Common\Guiwnd.hpp"\
|
||||
{$(INCLUDE)}"\Common\Pcallbck.hpp"\
|
||||
{$(INCLUDE)}"\Common\Point.hpp"\
|
||||
{$(INCLUDE)}"\Common\Pointer.hpp"\
|
||||
{$(INCLUDE)}"\Common\Rect.hpp"\
|
||||
{$(INCLUDE)}"\Common\Stdio.hpp"\
|
||||
{$(INCLUDE)}"\Common\Stdlib.hpp"\
|
||||
{$(INCLUDE)}"\Common\String.hpp"\
|
||||
{$(INCLUDE)}"\Common\Systime.hpp"\
|
||||
{$(INCLUDE)}"\Common\Vhandler.hpp"\
|
||||
{$(INCLUDE)}"\Common\Window.hpp"\
|
||||
{$(INCLUDE)}"\Common\Windows.hpp"\
|
||||
{$(INCLUDE)}"\Common\Windowsx.hpp"\
|
||||
{$(INCLUDE)}"\Common\Winnt.hpp"\
|
||||
{$(INCLUDE)}"\Fpsheet\Coltype.hpp"\
|
||||
{$(INCLUDE)}"\Fpsheet\Fpapi.hpp"\
|
||||
{$(INCLUDE)}"\Fpsheet\Fpsheet.hpp"\
|
||||
{$(INCLUDE)}"\Fpsheet\Menuitem.hpp"\
|
||||
{$(INCLUDE)}"\Tbpro32\Ssdll.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Context.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Event.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Msgqueue.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Mthread.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Mutex.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Ptcllbck.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Qthread.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Savearea.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Tcallbck.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Tcallbck.tpp"\
|
||||
{$(INCLUDE)}"\Thread\Thmsg.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Thread.hpp"\
|
||||
|
||||
|
||||
"$(INTDIR)\Calcdlg.obj" : $(SOURCE) $(DEP_CPP_CALCD) "$(INTDIR)"
|
||||
|
||||
|
||||
# End Source File
|
||||
################################################################################
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=\work\exe\mscommon.lib
|
||||
|
||||
!IF "$(CFG)" == "cashflow - Win32 Release"
|
||||
|
||||
!ELSEIF "$(CFG)" == "cashflow - Win32 Debug"
|
||||
|
||||
!ENDIF
|
||||
|
||||
# End Source File
|
||||
################################################################################
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=\work\exe\msthread.lib
|
||||
|
||||
!IF "$(CFG)" == "cashflow - Win32 Release"
|
||||
|
||||
!ELSEIF "$(CFG)" == "cashflow - Win32 Debug"
|
||||
|
||||
!ENDIF
|
||||
|
||||
# End Source File
|
||||
################################################################################
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=\work\exe\fpsheet.lib
|
||||
|
||||
!IF "$(CFG)" == "cashflow - Win32 Release"
|
||||
|
||||
!ELSEIF "$(CFG)" == "cashflow - Win32 Debug"
|
||||
|
||||
!ENDIF
|
||||
|
||||
# End Source File
|
||||
################################################################################
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\graphwnd.cpp
|
||||
DEP_CPP_GRAPH=\
|
||||
{$(INCLUDE)}"\.\Clrrect.hpp"\
|
||||
{$(INCLUDE)}"\.\Graph3d.hpp"\
|
||||
{$(INCLUDE)}"\.\Graphwnd.hpp"\
|
||||
{$(INCLUDE)}"\.\Purecflo.hpp"\
|
||||
{$(INCLUDE)}"\Common\Assert.hpp"\
|
||||
{$(INCLUDE)}"\Common\Block.hpp"\
|
||||
{$(INCLUDE)}"\Common\Block.tpp"\
|
||||
{$(INCLUDE)}"\Common\Bminfo.hpp"\
|
||||
{$(INCLUDE)}"\Common\Callback.hpp"\
|
||||
{$(INCLUDE)}"\Common\Callback.tpp"\
|
||||
{$(INCLUDE)}"\Common\Cbdata.hpp"\
|
||||
{$(INCLUDE)}"\Common\Cbptr.hpp"\
|
||||
{$(INCLUDE)}"\Common\Dib.hpp"\
|
||||
{$(INCLUDE)}"\Common\Fixup.hpp"\
|
||||
{$(INCLUDE)}"\Common\Gdata.hpp"\
|
||||
{$(INCLUDE)}"\Common\Gdata.tpp"\
|
||||
{$(INCLUDE)}"\Common\Gdiobj.hpp"\
|
||||
{$(INCLUDE)}"\common\gdipoint.hpp"\
|
||||
{$(INCLUDE)}"\Common\Guiwnd.hpp"\
|
||||
{$(INCLUDE)}"\Common\Math.hpp"\
|
||||
{$(INCLUDE)}"\Common\Palentry.hpp"\
|
||||
{$(INCLUDE)}"\Common\Pcallbck.hpp"\
|
||||
{$(INCLUDE)}"\Common\Pen.hpp"\
|
||||
{$(INCLUDE)}"\Common\Point.hpp"\
|
||||
{$(INCLUDE)}"\Common\Pointer.hpp"\
|
||||
{$(INCLUDE)}"\Common\Purebmp.hpp"\
|
||||
{$(INCLUDE)}"\Common\Purehdc.hpp"\
|
||||
{$(INCLUDE)}"\Common\Purepal.hpp"\
|
||||
{$(INCLUDE)}"\Common\Pvector.hpp"\
|
||||
{$(INCLUDE)}"\Common\Pvector.tpp"\
|
||||
{$(INCLUDE)}"\Common\Rect.hpp"\
|
||||
{$(INCLUDE)}"\Common\Rgbcolor.hpp"\
|
||||
{$(INCLUDE)}"\Common\Rgbquad.hpp"\
|
||||
{$(INCLUDE)}"\Common\Stdlib.hpp"\
|
||||
{$(INCLUDE)}"\Common\String.hpp"\
|
||||
{$(INCLUDE)}"\Common\Types.hpp"\
|
||||
{$(INCLUDE)}"\Common\Vhandler.hpp"\
|
||||
{$(INCLUDE)}"\Common\Window.hpp"\
|
||||
{$(INCLUDE)}"\Common\Windows.hpp"\
|
||||
{$(INCLUDE)}"\Common\Windowsx.hpp"\
|
||||
{$(INCLUDE)}"\engine\angle.hpp"\
|
||||
{$(INCLUDE)}"\engine\angle3d.hpp"\
|
||||
{$(INCLUDE)}"\Engine\Dib3d.hpp"\
|
||||
{$(INCLUDE)}"\Engine\Point3d.hpp"\
|
||||
{$(INCLUDE)}"\Engine\Purevsys.hpp"\
|
||||
{$(INCLUDE)}"\Engine\Rect3d.hpp"\
|
||||
{$(INCLUDE)}"\Engine\Spacial.hpp"\
|
||||
{$(INCLUDE)}"\Engine\Vector3d.hpp"\
|
||||
{$(INCLUDE)}"\Engine\Viewsys.hpp"\
|
||||
|
||||
|
||||
"$(INTDIR)\graphwnd.obj" : $(SOURCE) $(DEP_CPP_GRAPH) "$(INTDIR)"
|
||||
|
||||
|
||||
# End Source File
|
||||
################################################################################
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=\work\exe\msengine.lib
|
||||
|
||||
!IF "$(CFG)" == "cashflow - Win32 Release"
|
||||
|
||||
!ELSEIF "$(CFG)" == "cashflow - Win32 Debug"
|
||||
|
||||
!ENDIF
|
||||
|
||||
# End Source File
|
||||
################################################################################
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\graph3d.cpp
|
||||
DEP_CPP_GRAPH3=\
|
||||
{$(INCLUDE)}"\.\Graph3d.hpp"\
|
||||
{$(INCLUDE)}"\Common\Assert.hpp"\
|
||||
{$(INCLUDE)}"\Common\Block.hpp"\
|
||||
{$(INCLUDE)}"\Common\Block.tpp"\
|
||||
{$(INCLUDE)}"\Common\Bminfo.hpp"\
|
||||
{$(INCLUDE)}"\Common\Callback.hpp"\
|
||||
{$(INCLUDE)}"\Common\Callback.tpp"\
|
||||
{$(INCLUDE)}"\Common\Cbdata.hpp"\
|
||||
{$(INCLUDE)}"\Common\Cbptr.hpp"\
|
||||
{$(INCLUDE)}"\Common\Dib.hpp"\
|
||||
{$(INCLUDE)}"\Common\Fixup.hpp"\
|
||||
{$(INCLUDE)}"\Common\Gdata.hpp"\
|
||||
{$(INCLUDE)}"\Common\Gdata.tpp"\
|
||||
{$(INCLUDE)}"\Common\Gdiobj.hpp"\
|
||||
{$(INCLUDE)}"\common\gdipoint.hpp"\
|
||||
{$(INCLUDE)}"\Common\Guiwnd.hpp"\
|
||||
{$(INCLUDE)}"\Common\Math.hpp"\
|
||||
{$(INCLUDE)}"\Common\Palentry.hpp"\
|
||||
{$(INCLUDE)}"\Common\Pcallbck.hpp"\
|
||||
{$(INCLUDE)}"\Common\Pen.hpp"\
|
||||
{$(INCLUDE)}"\Common\Point.hpp"\
|
||||
{$(INCLUDE)}"\Common\Purebmp.hpp"\
|
||||
{$(INCLUDE)}"\Common\Purehdc.hpp"\
|
||||
{$(INCLUDE)}"\Common\Purepal.hpp"\
|
||||
{$(INCLUDE)}"\Common\Pvector.hpp"\
|
||||
{$(INCLUDE)}"\Common\Pvector.tpp"\
|
||||
{$(INCLUDE)}"\Common\Rect.hpp"\
|
||||
{$(INCLUDE)}"\Common\Rgbcolor.hpp"\
|
||||
{$(INCLUDE)}"\Common\Rgbquad.hpp"\
|
||||
{$(INCLUDE)}"\Common\Stdlib.hpp"\
|
||||
{$(INCLUDE)}"\Common\String.hpp"\
|
||||
{$(INCLUDE)}"\Common\Types.hpp"\
|
||||
{$(INCLUDE)}"\Common\Vhandler.hpp"\
|
||||
{$(INCLUDE)}"\Common\Windows.hpp"\
|
||||
{$(INCLUDE)}"\Common\Windowsx.hpp"\
|
||||
{$(INCLUDE)}"\engine\angle.hpp"\
|
||||
{$(INCLUDE)}"\engine\angle3d.hpp"\
|
||||
{$(INCLUDE)}"\Engine\Dib3d.hpp"\
|
||||
{$(INCLUDE)}"\Engine\Point3d.hpp"\
|
||||
{$(INCLUDE)}"\Engine\Purevsys.hpp"\
|
||||
{$(INCLUDE)}"\Engine\Viewsys.hpp"\
|
||||
|
||||
|
||||
"$(INTDIR)\graph3d.obj" : $(SOURCE) $(DEP_CPP_GRAPH3) "$(INTDIR)"
|
||||
|
||||
|
||||
# End Source File
|
||||
# End Target
|
||||
# End Project
|
||||
################################################################################
|
||||
163
cashflow/CASHFLOW.CPP
Normal file
163
cashflow/CASHFLOW.CPP
Normal file
@@ -0,0 +1,163 @@
|
||||
#include <cashflow/cashflow.hpp>
|
||||
|
||||
WORD CashFlow::generateCashFlows(const PurePassThru &purePassThru,Block<PureCashFlow> &cashFlows)
|
||||
{
|
||||
double issBal(purePassThru.issBal());
|
||||
double tempCPR;
|
||||
short actualMonth;
|
||||
short indexFlows;
|
||||
|
||||
cashFlows.remove();
|
||||
indexFlows=cashFlows.size();
|
||||
cashFlows.insert(&PureCashFlow());
|
||||
for(short wam=purePassThru.wam();wam>0&&issBal>0.00;wam--)
|
||||
{
|
||||
actualMonth=(purePassThru.origTerm()-wam)+1;
|
||||
if(actualMonth<=30)tempCPR=.002*(double)actualMonth;
|
||||
else tempCPR=.06;
|
||||
cashFlows[indexFlows].beginBal(issBal);
|
||||
cashFlows[indexFlows].smm(1.00-::pow(1.00-(tempCPR*purePassThru.psa()/100.00),1.00/12.00));
|
||||
if(!indexFlows)
|
||||
{
|
||||
cashFlows[indexFlows].mtgPay((issBal*(purePassThru.wac()/1200.00))/
|
||||
(1.00-::pow(1.00/(1.00+(purePassThru.wac()/1200.00)),(double)wam)));
|
||||
}
|
||||
else cashFlows[indexFlows].mtgPay(cashFlows[indexFlows-1].mtgPay());
|
||||
if(issBal<=cashFlows[indexFlows].mtgPay())cashFlows[indexFlows].mtgPay(issBal);
|
||||
cashFlows[indexFlows].netIntPay(issBal*(purePassThru.coupon()/1200.00));
|
||||
if(!indexFlows)cashFlows[indexFlows].grossIntPay(cashFlows[indexFlows].netIntPay());
|
||||
else cashFlows[indexFlows].grossIntPay(cashFlows[indexFlows-1].grossIntPay()+cashFlows[indexFlows].netIntPay());
|
||||
cashFlows[indexFlows].schedPrinPay(cashFlows[indexFlows].mtgPay()-cashFlows[indexFlows].netIntPay());
|
||||
cashFlows[indexFlows].prepayment(0.00);
|
||||
cashFlows[indexFlows].totPrin(cashFlows[indexFlows].schedPrinPay()+cashFlows[indexFlows].prepayment());
|
||||
cashFlows[indexFlows].cashFlow(cashFlows[indexFlows].netIntPay()+cashFlows[indexFlows].totPrin());
|
||||
cashFlows[indexFlows].factor(issBal/purePassThru.issBal());
|
||||
issBal-=cashFlows[indexFlows].totPrin();
|
||||
indexFlows=cashFlows.size();
|
||||
if(1!=wam&&issBal>0.00)cashFlows.insert(&PureCashFlow());
|
||||
}
|
||||
return cashFlows.size();
|
||||
}
|
||||
|
||||
WORD CashFlow::generateCashFlows(const PurePassThru &purePassThru,Block<PureCashFlow> &cashFlows,PrePay prePay)
|
||||
{
|
||||
double issBal(purePassThru.issBal());
|
||||
double tempCPR;
|
||||
short actualMonth;
|
||||
short indexFlows;
|
||||
|
||||
cashFlows.remove();
|
||||
indexFlows=cashFlows.size();
|
||||
cashFlows.insert(&PureCashFlow());
|
||||
for(short wam=purePassThru.wam();wam>0&&issBal>0.00;wam--)
|
||||
{
|
||||
actualMonth=(purePassThru.origTerm()-wam)+1;
|
||||
if(actualMonth<=30)tempCPR=.002*(double)actualMonth;
|
||||
else tempCPR=.06;
|
||||
cashFlows[indexFlows].beginBal(issBal);
|
||||
cashFlows[indexFlows].smm(1.00-::pow(1.00-(tempCPR*purePassThru.psa()/100.00),1.00/12.00));
|
||||
if(!indexFlows)cashFlows[indexFlows].mtgPay((issBal*(purePassThru.wac()/1200.00))/
|
||||
(1.00-::pow(1.00/(1.00+(purePassThru.wac()/1200.00)),(double)wam)));
|
||||
else cashFlows[indexFlows].mtgPay(cashFlows[indexFlows-1].mtgPay());
|
||||
if(issBal<=cashFlows[indexFlows].mtgPay())cashFlows[indexFlows].mtgPay(issBal);
|
||||
cashFlows[indexFlows].netIntPay(issBal*(purePassThru.coupon()/1200.00));
|
||||
if(!indexFlows)cashFlows[indexFlows].grossIntPay(cashFlows[indexFlows].netIntPay());
|
||||
else cashFlows[indexFlows].grossIntPay(cashFlows[indexFlows-1].grossIntPay()+cashFlows[indexFlows].netIntPay());
|
||||
cashFlows[indexFlows].schedPrinPay(cashFlows[indexFlows].mtgPay()-cashFlows[indexFlows].netIntPay());
|
||||
cashFlows[indexFlows].prepayment(prePay.amount());
|
||||
prePay.period(prePay.period()+1);
|
||||
if(prePay.period()>prePay.frequency())
|
||||
{
|
||||
prePay.amount(prePay.amount()+prePay.increment());
|
||||
prePay.period(1);
|
||||
}
|
||||
cashFlows[indexFlows].totPrin(cashFlows[indexFlows].schedPrinPay()+cashFlows[indexFlows].prepayment());
|
||||
cashFlows[indexFlows].cashFlow(cashFlows[indexFlows].netIntPay()+cashFlows[indexFlows].totPrin());
|
||||
cashFlows[indexFlows].factor(issBal/purePassThru.issBal());
|
||||
issBal-=cashFlows[indexFlows].totPrin();
|
||||
indexFlows=cashFlows.size();
|
||||
if(1!=wam&&issBal>0.00)cashFlows.insert(&PureCashFlow());
|
||||
}
|
||||
return cashFlows.size();
|
||||
}
|
||||
|
||||
WORD CashFlow::convergePSA(PurePassThru &purePassThru,double convergeFactor,double issueBal,short runMonths)
|
||||
{
|
||||
double cashFlowFactor;
|
||||
double smallestDiff(999);
|
||||
double tempDiff;
|
||||
short closestPSA;
|
||||
|
||||
for(short psaValue=MinPSA;psaValue<MaxPSA;psaValue++)
|
||||
{
|
||||
purePassThru.psa(psaValue);
|
||||
cashFlowFactor=factorFlows(purePassThru,issueBal,runMonths);
|
||||
tempDiff=convergeFactor-cashFlowFactor;
|
||||
if(tempDiff<0.00)tempDiff*=-1.00;
|
||||
if(tempDiff<smallestDiff){smallestDiff=tempDiff;closestPSA=psaValue;}
|
||||
}
|
||||
return closestPSA;
|
||||
}
|
||||
|
||||
WORD CashFlow::binaryPartitionPSA(PurePassThru &purePassThru,double convergeFactor,double issueBal,short runMonths)
|
||||
{
|
||||
double cashFlowFactor;
|
||||
short psaFloor(MinPSA);
|
||||
short psaCeiling(MaxPSA);
|
||||
short psaCurr(MaxPSA/2);
|
||||
short newCurr;
|
||||
double threshold(.000025);
|
||||
|
||||
while(TRUE)
|
||||
{
|
||||
purePassThru.psa(psaCurr);
|
||||
cashFlowFactor=factorFlows(purePassThru,issueBal,runMonths);
|
||||
if(cashFlowFactor-threshold<=convergeFactor&&cashFlowFactor+threshold>=convergeFactor)return psaCurr;
|
||||
if(cashFlowFactor>convergeFactor)
|
||||
{
|
||||
psaFloor=psaCurr;
|
||||
newCurr=(psaCeiling+psaFloor)/2;
|
||||
}
|
||||
else
|
||||
{
|
||||
psaCeiling=psaCurr;
|
||||
newCurr=(psaFloor+psaCeiling)/2;
|
||||
}
|
||||
if(newCurr==psaCurr)return psaCurr;
|
||||
psaCurr=newCurr;
|
||||
}
|
||||
}
|
||||
|
||||
double CashFlow::factorFlows(const PurePassThru &purePassThru,double issueBalance,short runMonths)
|
||||
{
|
||||
double issBal(purePassThru.issBal());
|
||||
Block<PureCashFlow> cashFlows;
|
||||
double tempCPR;
|
||||
short actualMonth;
|
||||
short indexFlows;
|
||||
|
||||
indexFlows=cashFlows.size();
|
||||
cashFlows.insert(&PureCashFlow());
|
||||
for(short wam=purePassThru.wam();wam>=purePassThru.wam()-runMonths;wam--)
|
||||
{
|
||||
actualMonth=(purePassThru.origTerm()-wam)+1;
|
||||
if(actualMonth<=30)tempCPR=.002*(double)actualMonth;
|
||||
else tempCPR=.06;
|
||||
cashFlows[indexFlows].beginBal(issBal);
|
||||
cashFlows[indexFlows].smm(1.00-::pow(1.00-(tempCPR*purePassThru.psa()/100.00),1.00/12.00));
|
||||
cashFlows[indexFlows].mtgPay((issBal*(purePassThru.wac()/1200.00))/
|
||||
(1.00-::pow(1.00/(1.00+(purePassThru.wac()/1200.00)),(double)wam)));
|
||||
cashFlows[indexFlows].netIntPay(issBal*(purePassThru.coupon()/1200.00));
|
||||
cashFlows[indexFlows].grossIntPay(issBal*(purePassThru.wac()/1200.00));
|
||||
cashFlows[indexFlows].schedPrinPay(cashFlows[indexFlows].mtgPay()-cashFlows[indexFlows].grossIntPay());
|
||||
cashFlows[indexFlows].prepayment(cashFlows[indexFlows].smm()*(issBal-cashFlows[indexFlows].schedPrinPay()));
|
||||
cashFlows[indexFlows].totPrin(cashFlows[indexFlows].schedPrinPay()+cashFlows[indexFlows].prepayment());
|
||||
cashFlows[indexFlows].cashFlow(cashFlows[indexFlows].netIntPay()+cashFlows[indexFlows].totPrin());
|
||||
cashFlows[indexFlows].factor(issBal/issueBalance);
|
||||
issBal-=cashFlows[indexFlows].totPrin();
|
||||
indexFlows=cashFlows.size();
|
||||
if(1!=wam)cashFlows.insert(&PureCashFlow());
|
||||
}
|
||||
return cashFlows[runMonths].factor();
|
||||
}
|
||||
|
||||
104
cashflow/CASHFLOW.DSW
Normal file
104
cashflow/CASHFLOW.DSW
Normal file
@@ -0,0 +1,104 @@
|
||||
Microsoft Developer Studio Workspace File, Format Version 6.00
|
||||
# WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE!
|
||||
|
||||
###############################################################################
|
||||
|
||||
Project: "bsptree"=..\bsptree\bsptree.dsp - Package Owner=<4>
|
||||
|
||||
Package=<5>
|
||||
{{{
|
||||
}}}
|
||||
|
||||
Package=<4>
|
||||
{{{
|
||||
}}}
|
||||
|
||||
###############################################################################
|
||||
|
||||
Project: "cashflow"=.\cashflow.dsp - Package Owner=<4>
|
||||
|
||||
Package=<5>
|
||||
{{{
|
||||
}}}
|
||||
|
||||
Package=<4>
|
||||
{{{
|
||||
Begin Project Dependency
|
||||
Project_Dep_Name common
|
||||
End Project Dependency
|
||||
Begin Project Dependency
|
||||
Project_Dep_Name engine
|
||||
End Project Dependency
|
||||
Begin Project Dependency
|
||||
Project_Dep_Name fpsheet
|
||||
End Project Dependency
|
||||
Begin Project Dependency
|
||||
Project_Dep_Name thread
|
||||
End Project Dependency
|
||||
Begin Project Dependency
|
||||
Project_Dep_Name bsptree
|
||||
End Project Dependency
|
||||
}}}
|
||||
|
||||
###############################################################################
|
||||
|
||||
Project: "common"=..\common\common.dsp - Package Owner=<4>
|
||||
|
||||
Package=<5>
|
||||
{{{
|
||||
}}}
|
||||
|
||||
Package=<4>
|
||||
{{{
|
||||
}}}
|
||||
|
||||
###############################################################################
|
||||
|
||||
Project: "engine"=..\engine\engine.dsp - Package Owner=<4>
|
||||
|
||||
Package=<5>
|
||||
{{{
|
||||
}}}
|
||||
|
||||
Package=<4>
|
||||
{{{
|
||||
}}}
|
||||
|
||||
###############################################################################
|
||||
|
||||
Project: "fpsheet"=..\fpsheet\Fpsheet.dsp - Package Owner=<4>
|
||||
|
||||
Package=<5>
|
||||
{{{
|
||||
}}}
|
||||
|
||||
Package=<4>
|
||||
{{{
|
||||
}}}
|
||||
|
||||
###############################################################################
|
||||
|
||||
Project: "thread"=..\thread\thread.dsp - Package Owner=<4>
|
||||
|
||||
Package=<5>
|
||||
{{{
|
||||
}}}
|
||||
|
||||
Package=<4>
|
||||
{{{
|
||||
}}}
|
||||
|
||||
###############################################################################
|
||||
|
||||
Global:
|
||||
|
||||
Package=<5>
|
||||
{{{
|
||||
}}}
|
||||
|
||||
Package=<3>
|
||||
{{{
|
||||
}}}
|
||||
|
||||
###############################################################################
|
||||
|
||||
10
cashflow/CASHFLOW.H
Normal file
10
cashflow/CASHFLOW.H
Normal file
@@ -0,0 +1,10 @@
|
||||
|
||||
#define PPY_FREQUENCY 103
|
||||
#define PPY_INCREMENT 102
|
||||
#define PPY_AMOUNT 101
|
||||
#define CALC_PREPAYMENTS 104
|
||||
#define CALC_CALCULATE 105
|
||||
#define CALC_TERM 103
|
||||
#define CALC_COUPON 102
|
||||
#define CALC_PRINCIPAL 101
|
||||
|
||||
32
cashflow/CASHFLOW.HPP
Normal file
32
cashflow/CASHFLOW.HPP
Normal file
@@ -0,0 +1,32 @@
|
||||
#ifndef _CASHFLOW_CASHFLOW_HPP_
|
||||
#define _CASHFLOW_CASHFLOW_HPP_
|
||||
#include <math.h>
|
||||
#include <cashflow/passthru.hpp>
|
||||
#include <cashflow/purecflo.hpp>
|
||||
#include <cashflow/prepay.hpp>
|
||||
#include <common/block.hpp>
|
||||
|
||||
class CashFlow
|
||||
{
|
||||
public:
|
||||
CashFlow();
|
||||
~CashFlow();
|
||||
WORD generateCashFlows(const PurePassThru &somePurePassThru,Block<PureCashFlow> &cashFlows);
|
||||
WORD generateCashFlows(const PurePassThru &purePassThru,Block<PureCashFlow> &cashFlows,PrePay somePrepay);
|
||||
WORD convergePSA(PurePassThru &purePassThru,double convergeFactor,double issueBal,short runMonths);
|
||||
WORD binaryPartitionPSA(PurePassThru &purePassThru,double convergeFactor,double issueBal,short runMonths);
|
||||
private:
|
||||
enum {MinPSA=0,MaxPSA=1600};
|
||||
double factorFlows(const PurePassThru &purePassThru,double issueBalance,short runMonths);
|
||||
};
|
||||
|
||||
inline
|
||||
CashFlow::CashFlow()
|
||||
{
|
||||
}
|
||||
|
||||
inline
|
||||
CashFlow::~CashFlow()
|
||||
{
|
||||
}
|
||||
#endif
|
||||
BIN
cashflow/CASHFLOW.IDE
Normal file
BIN
cashflow/CASHFLOW.IDE
Normal file
Binary file not shown.
860
cashflow/CASHFLOW.MAK
Normal file
860
cashflow/CASHFLOW.MAK
Normal file
@@ -0,0 +1,860 @@
|
||||
# Microsoft Developer Studio Generated NMAKE File, Format Version 4.20
|
||||
# ** DO NOT EDIT **
|
||||
|
||||
# TARGTYPE "Win32 (x86) Application" 0x0101
|
||||
|
||||
!IF "$(CFG)" == ""
|
||||
CFG=cashflow - Win32 Debug
|
||||
!MESSAGE No configuration specified. Defaulting to cashflow - Win32 Debug.
|
||||
!ENDIF
|
||||
|
||||
!IF "$(CFG)" != "cashflow - Win32 Release" && "$(CFG)" !=\
|
||||
"cashflow - Win32 Debug"
|
||||
!MESSAGE Invalid configuration "$(CFG)" specified.
|
||||
!MESSAGE You can specify a configuration when running NMAKE on this makefile
|
||||
!MESSAGE by defining the macro CFG on the command line. For example:
|
||||
!MESSAGE
|
||||
!MESSAGE NMAKE /f "Cashflow.mak" CFG="cashflow - Win32 Debug"
|
||||
!MESSAGE
|
||||
!MESSAGE Possible choices for configuration are:
|
||||
!MESSAGE
|
||||
!MESSAGE "cashflow - Win32 Release" (based on "Win32 (x86) Application")
|
||||
!MESSAGE "cashflow - Win32 Debug" (based on "Win32 (x86) Application")
|
||||
!MESSAGE
|
||||
!ERROR An invalid configuration is specified.
|
||||
!ENDIF
|
||||
|
||||
!IF "$(OS)" == "Windows_NT"
|
||||
NULL=
|
||||
!ELSE
|
||||
NULL=nul
|
||||
!ENDIF
|
||||
################################################################################
|
||||
# Begin Project
|
||||
# PROP Target_Last_Scanned "cashflow - Win32 Debug"
|
||||
MTL=mktyplib.exe
|
||||
CPP=cl.exe
|
||||
RSC=rc.exe
|
||||
|
||||
!IF "$(CFG)" == "cashflow - Win32 Release"
|
||||
|
||||
# PROP BASE Use_MFC 0
|
||||
# PROP BASE Use_Debug_Libraries 0
|
||||
# PROP BASE Output_Dir "Release"
|
||||
# PROP BASE Intermediate_Dir "Release"
|
||||
# PROP BASE Target_Dir ""
|
||||
# PROP Use_MFC 0
|
||||
# PROP Use_Debug_Libraries 0
|
||||
# PROP Output_Dir "Release"
|
||||
# PROP Intermediate_Dir "Release"
|
||||
# PROP Target_Dir ""
|
||||
OUTDIR=.\Release
|
||||
INTDIR=.\Release
|
||||
|
||||
ALL : "$(OUTDIR)\Cashflow.exe"
|
||||
|
||||
CLEAN :
|
||||
-@erase "$(INTDIR)\Calcdlg.obj"
|
||||
-@erase "$(INTDIR)\Calcthrd.obj"
|
||||
-@erase "$(INTDIR)\Cashflow.obj"
|
||||
-@erase "$(INTDIR)\Cashflow.res"
|
||||
-@erase "$(INTDIR)\graph3d.obj"
|
||||
-@erase "$(INTDIR)\graphwnd.obj"
|
||||
-@erase "$(INTDIR)\Main.obj"
|
||||
-@erase "$(INTDIR)\Ppydlg.obj"
|
||||
-@erase "$(INTDIR)\Purecflo.obj"
|
||||
-@erase "$(INTDIR)\Stdtmpl.obj"
|
||||
-@erase "$(OUTDIR)\Cashflow.exe"
|
||||
|
||||
"$(OUTDIR)" :
|
||||
if not exist "$(OUTDIR)/$(NULL)" mkdir "$(OUTDIR)"
|
||||
|
||||
# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /YX /c
|
||||
# ADD CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /YX /c
|
||||
CPP_PROJ=/nologo /ML /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS"\
|
||||
/Fp"$(INTDIR)/Cashflow.pch" /YX /Fo"$(INTDIR)/" /c
|
||||
CPP_OBJS=.\Release/
|
||||
CPP_SBRS=.\.
|
||||
# ADD BASE MTL /nologo /D "NDEBUG" /win32
|
||||
# ADD MTL /nologo /D "NDEBUG" /win32
|
||||
MTL_PROJ=/nologo /D "NDEBUG" /win32
|
||||
# ADD BASE RSC /l 0x409 /d "NDEBUG"
|
||||
# ADD RSC /l 0x409 /d "NDEBUG"
|
||||
RSC_PROJ=/l 0x409 /fo"$(INTDIR)/Cashflow.res" /d "NDEBUG"
|
||||
BSC32=bscmake.exe
|
||||
# ADD BASE BSC32 /nologo
|
||||
# ADD BSC32 /nologo
|
||||
BSC32_FLAGS=/nologo /o"$(OUTDIR)/Cashflow.bsc"
|
||||
BSC32_SBRS= \
|
||||
|
||||
LINK32=link.exe
|
||||
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /machine:I386
|
||||
# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /machine:I386
|
||||
LINK32_FLAGS=kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib\
|
||||
advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib\
|
||||
odbccp32.lib /nologo /subsystem:windows /incremental:no\
|
||||
/pdb:"$(OUTDIR)/Cashflow.pdb" /machine:I386 /out:"$(OUTDIR)/Cashflow.exe"
|
||||
LINK32_OBJS= \
|
||||
"$(INTDIR)\Calcdlg.obj" \
|
||||
"$(INTDIR)\Calcthrd.obj" \
|
||||
"$(INTDIR)\Cashflow.obj" \
|
||||
"$(INTDIR)\Cashflow.res" \
|
||||
"$(INTDIR)\graph3d.obj" \
|
||||
"$(INTDIR)\graphwnd.obj" \
|
||||
"$(INTDIR)\Main.obj" \
|
||||
"$(INTDIR)\Ppydlg.obj" \
|
||||
"$(INTDIR)\Purecflo.obj" \
|
||||
"$(INTDIR)\Stdtmpl.obj" \
|
||||
"..\exe\fpsheet.lib" \
|
||||
"..\exe\mscommon.lib" \
|
||||
"..\exe\msengine.lib" \
|
||||
"..\exe\msthread.lib"
|
||||
|
||||
"$(OUTDIR)\Cashflow.exe" : "$(OUTDIR)" $(DEF_FILE) $(LINK32_OBJS)
|
||||
$(LINK32) @<<
|
||||
$(LINK32_FLAGS) $(LINK32_OBJS)
|
||||
<<
|
||||
|
||||
!ELSEIF "$(CFG)" == "cashflow - Win32 Debug"
|
||||
|
||||
# PROP BASE Use_MFC 0
|
||||
# PROP BASE Use_Debug_Libraries 1
|
||||
# PROP BASE Output_Dir "Debug"
|
||||
# PROP BASE Intermediate_Dir "Debug"
|
||||
# PROP BASE Target_Dir ""
|
||||
# PROP Use_MFC 0
|
||||
# PROP Use_Debug_Libraries 1
|
||||
# PROP Output_Dir "msvcobj"
|
||||
# PROP Intermediate_Dir "msvcobj"
|
||||
# PROP Target_Dir ""
|
||||
OUTDIR=.\msvcobj
|
||||
INTDIR=.\msvcobj
|
||||
|
||||
ALL : "..\exe\cashflow.exe"
|
||||
|
||||
CLEAN :
|
||||
-@erase "$(INTDIR)\Calcdlg.obj"
|
||||
-@erase "$(INTDIR)\Calcthrd.obj"
|
||||
-@erase "$(INTDIR)\Cashflow.obj"
|
||||
-@erase "$(INTDIR)\Cashflow.res"
|
||||
-@erase "$(INTDIR)\graph3d.obj"
|
||||
-@erase "$(INTDIR)\graphwnd.obj"
|
||||
-@erase "$(INTDIR)\Main.obj"
|
||||
-@erase "$(INTDIR)\Ppydlg.obj"
|
||||
-@erase "$(INTDIR)\Purecflo.obj"
|
||||
-@erase "$(INTDIR)\Stdtmpl.obj"
|
||||
-@erase "$(OUTDIR)\cashflow.pdb"
|
||||
-@erase "..\exe\cashflow.exe"
|
||||
-@erase "..\exe\cashflow.ilk"
|
||||
|
||||
"$(OUTDIR)" :
|
||||
if not exist "$(OUTDIR)/$(NULL)" mkdir "$(OUTDIR)"
|
||||
|
||||
# ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /YX /c
|
||||
# ADD CPP /nologo /Zp1 /MTd /Z7 /O2 /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "__FLAT__" /D "STRICT" /Fp"c:\work\exe\msvc42.pch" /YX"windows.h" /c
|
||||
CPP_PROJ=/nologo /Zp1 /MTd /Z7 /O2 /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D\
|
||||
"__FLAT__" /D "STRICT" /Fp"c:\work\exe\msvc42.pch" /YX"windows.h"\
|
||||
/Fo"$(INTDIR)/" /c
|
||||
CPP_OBJS=.\msvcobj/
|
||||
CPP_SBRS=.\.
|
||||
# ADD BASE MTL /nologo /D "_DEBUG" /win32
|
||||
# ADD MTL /nologo /D "_DEBUG" /win32
|
||||
MTL_PROJ=/nologo /D "_DEBUG" /win32
|
||||
# ADD BASE RSC /l 0x409 /d "_DEBUG"
|
||||
# ADD RSC /l 0x409 /d "_DEBUG"
|
||||
RSC_PROJ=/l 0x409 /fo"$(INTDIR)/Cashflow.res" /d "_DEBUG"
|
||||
BSC32=bscmake.exe
|
||||
# ADD BASE BSC32 /nologo
|
||||
# ADD BSC32 /nologo
|
||||
BSC32_FLAGS=/nologo /o"$(OUTDIR)/Cashflow.bsc"
|
||||
BSC32_SBRS= \
|
||||
|
||||
LINK32=link.exe
|
||||
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /debug /machine:I386
|
||||
# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib uuid.lib /nologo /subsystem:windows /debug /machine:I386 /out:"..\exe\cashflow.exe"
|
||||
# SUBTRACT LINK32 /pdb:none
|
||||
LINK32_FLAGS=kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib\
|
||||
advapi32.lib shell32.lib uuid.lib /nologo /subsystem:windows /incremental:yes\
|
||||
/pdb:"$(OUTDIR)/cashflow.pdb" /debug /machine:I386 /out:"..\exe\cashflow.exe"
|
||||
LINK32_OBJS= \
|
||||
"$(INTDIR)\Calcdlg.obj" \
|
||||
"$(INTDIR)\Calcthrd.obj" \
|
||||
"$(INTDIR)\Cashflow.obj" \
|
||||
"$(INTDIR)\Cashflow.res" \
|
||||
"$(INTDIR)\graph3d.obj" \
|
||||
"$(INTDIR)\graphwnd.obj" \
|
||||
"$(INTDIR)\Main.obj" \
|
||||
"$(INTDIR)\Ppydlg.obj" \
|
||||
"$(INTDIR)\Purecflo.obj" \
|
||||
"$(INTDIR)\Stdtmpl.obj" \
|
||||
"..\exe\fpsheet.lib" \
|
||||
"..\exe\mscommon.lib" \
|
||||
"..\exe\msengine.lib" \
|
||||
"..\exe\msthread.lib"
|
||||
|
||||
"..\exe\cashflow.exe" : "$(OUTDIR)" $(DEF_FILE) $(LINK32_OBJS)
|
||||
$(LINK32) @<<
|
||||
$(LINK32_FLAGS) $(LINK32_OBJS)
|
||||
<<
|
||||
|
||||
!ENDIF
|
||||
|
||||
.c{$(CPP_OBJS)}.obj:
|
||||
$(CPP) $(CPP_PROJ) $<
|
||||
|
||||
.cpp{$(CPP_OBJS)}.obj:
|
||||
$(CPP) $(CPP_PROJ) $<
|
||||
|
||||
.cxx{$(CPP_OBJS)}.obj:
|
||||
$(CPP) $(CPP_PROJ) $<
|
||||
|
||||
.c{$(CPP_SBRS)}.sbr:
|
||||
$(CPP) $(CPP_PROJ) $<
|
||||
|
||||
.cpp{$(CPP_SBRS)}.sbr:
|
||||
$(CPP) $(CPP_PROJ) $<
|
||||
|
||||
.cxx{$(CPP_SBRS)}.sbr:
|
||||
$(CPP) $(CPP_PROJ) $<
|
||||
|
||||
################################################################################
|
||||
# Begin Target
|
||||
|
||||
# Name "cashflow - Win32 Release"
|
||||
# Name "cashflow - Win32 Debug"
|
||||
|
||||
!IF "$(CFG)" == "cashflow - Win32 Release"
|
||||
|
||||
!ELSEIF "$(CFG)" == "cashflow - Win32 Debug"
|
||||
|
||||
!ENDIF
|
||||
|
||||
################################################################################
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Stdtmpl.cpp
|
||||
|
||||
!IF "$(CFG)" == "cashflow - Win32 Release"
|
||||
|
||||
DEP_CPP_STDTM=\
|
||||
{$(INCLUDE)}"\.\Calcdlg.hpp"\
|
||||
{$(INCLUDE)}"\.\Calcthrd.hpp"\
|
||||
{$(INCLUDE)}"\.\Ppydlg.hpp"\
|
||||
{$(INCLUDE)}"\.\Prepay.hpp"\
|
||||
{$(INCLUDE)}"\.\Purecflo.hpp"\
|
||||
{$(INCLUDE)}"\Common\Assert.hpp"\
|
||||
{$(INCLUDE)}"\Common\Block.hpp"\
|
||||
{$(INCLUDE)}"\Common\Block.tpp"\
|
||||
{$(INCLUDE)}"\Common\Callback.hpp"\
|
||||
{$(INCLUDE)}"\Common\Callback.tpp"\
|
||||
{$(INCLUDE)}"\Common\Cbdata.hpp"\
|
||||
{$(INCLUDE)}"\Common\Cbptr.hpp"\
|
||||
{$(INCLUDE)}"\Common\Dwindow.hpp"\
|
||||
{$(INCLUDE)}"\Common\Filetime.hpp"\
|
||||
{$(INCLUDE)}"\Common\Fixup.hpp"\
|
||||
{$(INCLUDE)}"\Common\Font.hpp"\
|
||||
{$(INCLUDE)}"\Common\Gdiobj.hpp"\
|
||||
{$(INCLUDE)}"\Common\Guiwnd.hpp"\
|
||||
{$(INCLUDE)}"\Common\Pcallbck.hpp"\
|
||||
{$(INCLUDE)}"\Common\Point.hpp"\
|
||||
{$(INCLUDE)}"\Common\Pvector.hpp"\
|
||||
{$(INCLUDE)}"\Common\Pvector.tpp"\
|
||||
{$(INCLUDE)}"\Common\Stdio.hpp"\
|
||||
{$(INCLUDE)}"\Common\Stdlib.hpp"\
|
||||
{$(INCLUDE)}"\Common\String.hpp"\
|
||||
{$(INCLUDE)}"\Common\Systime.hpp"\
|
||||
{$(INCLUDE)}"\Common\Types.hpp"\
|
||||
{$(INCLUDE)}"\Common\Vhandler.hpp"\
|
||||
{$(INCLUDE)}"\Common\Windows.hpp"\
|
||||
{$(INCLUDE)}"\Common\Windowsx.hpp"\
|
||||
{$(INCLUDE)}"\Common\Winnt.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Context.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Event.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Msgqueue.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Mthread.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Mutex.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Ptcllbck.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Qthread.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Savearea.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Tcallbck.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Tcallbck.tpp"\
|
||||
{$(INCLUDE)}"\Thread\Thmsg.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Thread.hpp"\
|
||||
|
||||
|
||||
"$(INTDIR)\Stdtmpl.obj" : $(SOURCE) $(DEP_CPP_STDTM) "$(INTDIR)"
|
||||
|
||||
|
||||
!ELSEIF "$(CFG)" == "cashflow - Win32 Debug"
|
||||
|
||||
DEP_CPP_STDTM=\
|
||||
{$(INCLUDE)}"\.\Calcdlg.hpp"\
|
||||
{$(INCLUDE)}"\.\Calcthrd.hpp"\
|
||||
{$(INCLUDE)}"\.\Ppydlg.hpp"\
|
||||
{$(INCLUDE)}"\.\Prepay.hpp"\
|
||||
{$(INCLUDE)}"\.\Purecflo.hpp"\
|
||||
{$(INCLUDE)}"\Common\Assert.hpp"\
|
||||
{$(INCLUDE)}"\Common\Block.hpp"\
|
||||
{$(INCLUDE)}"\Common\Block.tpp"\
|
||||
{$(INCLUDE)}"\Common\Callback.hpp"\
|
||||
{$(INCLUDE)}"\Common\Callback.tpp"\
|
||||
{$(INCLUDE)}"\Common\Cbdata.hpp"\
|
||||
{$(INCLUDE)}"\Common\Cbptr.hpp"\
|
||||
{$(INCLUDE)}"\Common\Dwindow.hpp"\
|
||||
{$(INCLUDE)}"\Common\Filetime.hpp"\
|
||||
{$(INCLUDE)}"\Common\Fixup.hpp"\
|
||||
{$(INCLUDE)}"\Common\Font.hpp"\
|
||||
{$(INCLUDE)}"\Common\Gdiobj.hpp"\
|
||||
{$(INCLUDE)}"\Common\Guiwnd.hpp"\
|
||||
{$(INCLUDE)}"\Common\Pcallbck.hpp"\
|
||||
{$(INCLUDE)}"\Common\Point.hpp"\
|
||||
{$(INCLUDE)}"\Common\Pvector.hpp"\
|
||||
{$(INCLUDE)}"\Common\Pvector.tpp"\
|
||||
{$(INCLUDE)}"\Common\Stdlib.hpp"\
|
||||
{$(INCLUDE)}"\Common\String.hpp"\
|
||||
{$(INCLUDE)}"\Common\Systime.hpp"\
|
||||
{$(INCLUDE)}"\Common\Types.hpp"\
|
||||
{$(INCLUDE)}"\Common\Vhandler.hpp"\
|
||||
{$(INCLUDE)}"\Common\Windows.hpp"\
|
||||
{$(INCLUDE)}"\Common\Windowsx.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Mthread.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Ptcllbck.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Qthread.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Tcallbck.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Tcallbck.tpp"\
|
||||
{$(INCLUDE)}"\Thread\Thmsg.hpp"\
|
||||
|
||||
|
||||
"$(INTDIR)\Stdtmpl.obj" : $(SOURCE) $(DEP_CPP_STDTM) "$(INTDIR)"
|
||||
|
||||
|
||||
!ENDIF
|
||||
|
||||
# End Source File
|
||||
################################################################################
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Calcthrd.cpp
|
||||
|
||||
!IF "$(CFG)" == "cashflow - Win32 Release"
|
||||
|
||||
DEP_CPP_CALCT=\
|
||||
"..\..\Parts\tbpro32\Include\Ssdll.h"\
|
||||
{$(INCLUDE)}"\.\Calcdlg.hpp"\
|
||||
{$(INCLUDE)}"\.\Calcthrd.hpp"\
|
||||
{$(INCLUDE)}"\.\Cashdefs.hpp"\
|
||||
{$(INCLUDE)}"\.\Cashflow.h"\
|
||||
{$(INCLUDE)}"\.\Cashflow.hpp"\
|
||||
{$(INCLUDE)}"\.\Graphwnd.hpp"\
|
||||
{$(INCLUDE)}"\.\Passthru.hpp"\
|
||||
{$(INCLUDE)}"\.\Ppydlg.hpp"\
|
||||
{$(INCLUDE)}"\.\Prepay.hpp"\
|
||||
{$(INCLUDE)}"\.\Purecflo.hpp"\
|
||||
{$(INCLUDE)}"\Common\Assert.hpp"\
|
||||
{$(INCLUDE)}"\Common\Block.hpp"\
|
||||
{$(INCLUDE)}"\Common\Block.tpp"\
|
||||
{$(INCLUDE)}"\Common\Callback.hpp"\
|
||||
{$(INCLUDE)}"\Common\Callback.tpp"\
|
||||
{$(INCLUDE)}"\Common\Cbdata.hpp"\
|
||||
{$(INCLUDE)}"\Common\Cbptr.hpp"\
|
||||
{$(INCLUDE)}"\Common\Crsctrl.hpp"\
|
||||
{$(INCLUDE)}"\Common\Dwindow.hpp"\
|
||||
{$(INCLUDE)}"\Common\Filetime.hpp"\
|
||||
{$(INCLUDE)}"\Common\Font.hpp"\
|
||||
{$(INCLUDE)}"\Common\Gdiobj.hpp"\
|
||||
{$(INCLUDE)}"\common\gdipoint.hpp"\
|
||||
{$(INCLUDE)}"\Common\Guiwnd.hpp"\
|
||||
{$(INCLUDE)}"\Common\Pcallbck.hpp"\
|
||||
{$(INCLUDE)}"\Common\Point.hpp"\
|
||||
{$(INCLUDE)}"\Common\Pointer.hpp"\
|
||||
{$(INCLUDE)}"\Common\Rect.hpp"\
|
||||
{$(INCLUDE)}"\Common\Stdio.hpp"\
|
||||
{$(INCLUDE)}"\Common\Stdlib.hpp"\
|
||||
{$(INCLUDE)}"\Common\String.hpp"\
|
||||
{$(INCLUDE)}"\Common\Systime.hpp"\
|
||||
{$(INCLUDE)}"\Common\Vhandler.hpp"\
|
||||
{$(INCLUDE)}"\Common\Window.hpp"\
|
||||
{$(INCLUDE)}"\Common\Windows.hpp"\
|
||||
{$(INCLUDE)}"\Common\Windowsx.hpp"\
|
||||
{$(INCLUDE)}"\Common\Winnt.hpp"\
|
||||
{$(INCLUDE)}"\Fpsheet\Coltype.hpp"\
|
||||
{$(INCLUDE)}"\Fpsheet\Fpapi.hpp"\
|
||||
{$(INCLUDE)}"\Fpsheet\Fpsheet.hpp"\
|
||||
{$(INCLUDE)}"\Fpsheet\Menuitem.hpp"\
|
||||
{$(INCLUDE)}"\Tbpro32\Ssdll.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Context.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Event.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Msgqueue.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Mthread.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Mutex.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Ptcllbck.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Qthread.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Savearea.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Tcallbck.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Tcallbck.tpp"\
|
||||
{$(INCLUDE)}"\Thread\Thmsg.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Thread.hpp"\
|
||||
|
||||
|
||||
"$(INTDIR)\Calcthrd.obj" : $(SOURCE) $(DEP_CPP_CALCT) "$(INTDIR)"
|
||||
|
||||
|
||||
!ELSEIF "$(CFG)" == "cashflow - Win32 Debug"
|
||||
|
||||
DEP_CPP_CALCT=\
|
||||
"..\..\Parts\tbpro32\Include\Ssdll.h"\
|
||||
{$(INCLUDE)}"\.\Calcdlg.hpp"\
|
||||
{$(INCLUDE)}"\.\Calcthrd.hpp"\
|
||||
{$(INCLUDE)}"\.\Cashdefs.hpp"\
|
||||
{$(INCLUDE)}"\.\Cashflow.h"\
|
||||
{$(INCLUDE)}"\.\Cashflow.hpp"\
|
||||
{$(INCLUDE)}"\.\Graphwnd.hpp"\
|
||||
{$(INCLUDE)}"\.\Passthru.hpp"\
|
||||
{$(INCLUDE)}"\.\Ppydlg.hpp"\
|
||||
{$(INCLUDE)}"\.\Prepay.hpp"\
|
||||
{$(INCLUDE)}"\.\Purecflo.hpp"\
|
||||
{$(INCLUDE)}"\Common\Assert.hpp"\
|
||||
{$(INCLUDE)}"\Common\Block.hpp"\
|
||||
{$(INCLUDE)}"\Common\Block.tpp"\
|
||||
{$(INCLUDE)}"\Common\Callback.hpp"\
|
||||
{$(INCLUDE)}"\Common\Callback.tpp"\
|
||||
{$(INCLUDE)}"\Common\Cbdata.hpp"\
|
||||
{$(INCLUDE)}"\Common\Cbptr.hpp"\
|
||||
{$(INCLUDE)}"\Common\Crsctrl.hpp"\
|
||||
{$(INCLUDE)}"\Common\Dwindow.hpp"\
|
||||
{$(INCLUDE)}"\Common\Font.hpp"\
|
||||
{$(INCLUDE)}"\Common\Gdiobj.hpp"\
|
||||
{$(INCLUDE)}"\common\gdipoint.hpp"\
|
||||
{$(INCLUDE)}"\Common\Guiwnd.hpp"\
|
||||
{$(INCLUDE)}"\Common\Pcallbck.hpp"\
|
||||
{$(INCLUDE)}"\Common\Point.hpp"\
|
||||
{$(INCLUDE)}"\Common\Pointer.hpp"\
|
||||
{$(INCLUDE)}"\Common\Rect.hpp"\
|
||||
{$(INCLUDE)}"\Common\Stdio.hpp"\
|
||||
{$(INCLUDE)}"\Common\Stdlib.hpp"\
|
||||
{$(INCLUDE)}"\Common\String.hpp"\
|
||||
{$(INCLUDE)}"\Common\Vhandler.hpp"\
|
||||
{$(INCLUDE)}"\Common\Window.hpp"\
|
||||
{$(INCLUDE)}"\Common\Windows.hpp"\
|
||||
{$(INCLUDE)}"\Common\Windowsx.hpp"\
|
||||
{$(INCLUDE)}"\Fpsheet\Coltype.hpp"\
|
||||
{$(INCLUDE)}"\Fpsheet\Fpapi.hpp"\
|
||||
{$(INCLUDE)}"\Fpsheet\Fpsheet.hpp"\
|
||||
{$(INCLUDE)}"\Fpsheet\Menuitem.hpp"\
|
||||
{$(INCLUDE)}"\Tbpro32\Ssdll.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Mthread.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Qthread.hpp"\
|
||||
|
||||
|
||||
"$(INTDIR)\Calcthrd.obj" : $(SOURCE) $(DEP_CPP_CALCT) "$(INTDIR)"
|
||||
|
||||
|
||||
!ENDIF
|
||||
|
||||
# End Source File
|
||||
################################################################################
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Cashflow.cpp
|
||||
DEP_CPP_CASHF=\
|
||||
{$(INCLUDE)}"\.\Cashflow.hpp"\
|
||||
{$(INCLUDE)}"\.\Passthru.hpp"\
|
||||
{$(INCLUDE)}"\.\Prepay.hpp"\
|
||||
{$(INCLUDE)}"\.\Purecflo.hpp"\
|
||||
{$(INCLUDE)}"\Common\Assert.hpp"\
|
||||
{$(INCLUDE)}"\Common\Block.hpp"\
|
||||
{$(INCLUDE)}"\Common\Block.tpp"\
|
||||
{$(INCLUDE)}"\Common\Stdlib.hpp"\
|
||||
{$(INCLUDE)}"\Common\String.hpp"\
|
||||
{$(INCLUDE)}"\Common\Windows.hpp"\
|
||||
|
||||
|
||||
"$(INTDIR)\Cashflow.obj" : $(SOURCE) $(DEP_CPP_CASHF) "$(INTDIR)"
|
||||
|
||||
|
||||
# End Source File
|
||||
################################################################################
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Cashflow.h
|
||||
|
||||
!IF "$(CFG)" == "cashflow - Win32 Release"
|
||||
|
||||
!ELSEIF "$(CFG)" == "cashflow - Win32 Debug"
|
||||
|
||||
!ENDIF
|
||||
|
||||
# End Source File
|
||||
################################################################################
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Cashflow.rc
|
||||
DEP_RSC_CASHFL=\
|
||||
{$(INCLUDE)}"\Ctype.h"\
|
||||
{$(INCLUDE)}"\Dde.h"\
|
||||
{$(INCLUDE)}"\Ddeml.h"\
|
||||
{$(INCLUDE)}"\Dlgs.h"\
|
||||
{$(INCLUDE)}"\Excpt.h"\
|
||||
{$(INCLUDE)}"\Lzexpand.h"\
|
||||
{$(INCLUDE)}"\Mmsystem.h"\
|
||||
{$(INCLUDE)}"\Mswsock.h"\
|
||||
{$(INCLUDE)}"\Nb30.h"\
|
||||
{$(INCLUDE)}"\Poppack.h"\
|
||||
{$(INCLUDE)}"\Pshpack1.h"\
|
||||
{$(INCLUDE)}"\Pshpack2.h"\
|
||||
{$(INCLUDE)}"\Pshpack4.h"\
|
||||
{$(INCLUDE)}"\Rpc.h"\
|
||||
{$(INCLUDE)}"\Rpcdce.h"\
|
||||
{$(INCLUDE)}"\Rpcdcep.h"\
|
||||
{$(INCLUDE)}"\Rpcnsi.h"\
|
||||
{$(INCLUDE)}"\Rpcnterr.h"\
|
||||
{$(INCLUDE)}"\Shellapi.h"\
|
||||
{$(INCLUDE)}"\Stdarg.h"\
|
||||
{$(INCLUDE)}"\String.h"\
|
||||
{$(INCLUDE)}"\Winbase.h"\
|
||||
{$(INCLUDE)}"\Wincon.h"\
|
||||
{$(INCLUDE)}"\Wincrypt.h"\
|
||||
{$(INCLUDE)}"\Windef.h"\
|
||||
{$(INCLUDE)}"\Windows.h"\
|
||||
{$(INCLUDE)}"\Winerror.h"\
|
||||
{$(INCLUDE)}"\Wingdi.h"\
|
||||
{$(INCLUDE)}"\Winnetwk.h"\
|
||||
{$(INCLUDE)}"\Winnls.h"\
|
||||
{$(INCLUDE)}"\Winnt.h"\
|
||||
{$(INCLUDE)}"\Winperf.h"\
|
||||
{$(INCLUDE)}"\Winreg.h"\
|
||||
{$(INCLUDE)}"\Winspool.h"\
|
||||
{$(INCLUDE)}"\Winuser.h"\
|
||||
{$(INCLUDE)}"\Winver.h"\
|
||||
|
||||
|
||||
"$(INTDIR)\Cashflow.res" : $(SOURCE) $(DEP_RSC_CASHFL) "$(INTDIR)"
|
||||
$(RSC) $(RSC_PROJ) $(SOURCE)
|
||||
|
||||
|
||||
# End Source File
|
||||
################################################################################
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Main.cpp
|
||||
DEP_CPP_MAIN_=\
|
||||
{$(INCLUDE)}"\.\Calcdlg.hpp"\
|
||||
{$(INCLUDE)}"\.\Calcthrd.hpp"\
|
||||
{$(INCLUDE)}"\.\Prepay.hpp"\
|
||||
{$(INCLUDE)}"\Common\Assert.hpp"\
|
||||
{$(INCLUDE)}"\Common\Block.hpp"\
|
||||
{$(INCLUDE)}"\Common\Block.tpp"\
|
||||
{$(INCLUDE)}"\Common\Callback.hpp"\
|
||||
{$(INCLUDE)}"\Common\Callback.tpp"\
|
||||
{$(INCLUDE)}"\Common\Cbdata.hpp"\
|
||||
{$(INCLUDE)}"\Common\Cbptr.hpp"\
|
||||
{$(INCLUDE)}"\Common\Dwindow.hpp"\
|
||||
{$(INCLUDE)}"\Common\Filetime.hpp"\
|
||||
{$(INCLUDE)}"\Common\Font.hpp"\
|
||||
{$(INCLUDE)}"\Common\Gdiobj.hpp"\
|
||||
{$(INCLUDE)}"\Common\Guiwnd.hpp"\
|
||||
{$(INCLUDE)}"\Common\Pcallbck.hpp"\
|
||||
{$(INCLUDE)}"\Common\Stdio.hpp"\
|
||||
{$(INCLUDE)}"\Common\Stdlib.hpp"\
|
||||
{$(INCLUDE)}"\Common\String.hpp"\
|
||||
{$(INCLUDE)}"\Common\Systime.hpp"\
|
||||
{$(INCLUDE)}"\Common\Vhandler.hpp"\
|
||||
{$(INCLUDE)}"\Common\Windows.hpp"\
|
||||
{$(INCLUDE)}"\Common\Windowsx.hpp"\
|
||||
{$(INCLUDE)}"\Common\Winnt.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Context.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Event.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Msgqueue.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Mthread.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Mutex.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Ptcllbck.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Qthread.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Savearea.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Tcallbck.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Tcallbck.tpp"\
|
||||
{$(INCLUDE)}"\Thread\Thmsg.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Thread.hpp"\
|
||||
|
||||
|
||||
"$(INTDIR)\Main.obj" : $(SOURCE) $(DEP_CPP_MAIN_) "$(INTDIR)"
|
||||
|
||||
|
||||
# End Source File
|
||||
################################################################################
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Ppydlg.cpp
|
||||
DEP_CPP_PPYDL=\
|
||||
{$(INCLUDE)}"\.\Cashdefs.hpp"\
|
||||
{$(INCLUDE)}"\.\Cashflow.h"\
|
||||
{$(INCLUDE)}"\.\Ppydlg.hpp"\
|
||||
{$(INCLUDE)}"\.\Prepay.hpp"\
|
||||
{$(INCLUDE)}"\Common\Assert.hpp"\
|
||||
{$(INCLUDE)}"\Common\Block.hpp"\
|
||||
{$(INCLUDE)}"\Common\Block.tpp"\
|
||||
{$(INCLUDE)}"\Common\Callback.hpp"\
|
||||
{$(INCLUDE)}"\Common\Callback.tpp"\
|
||||
{$(INCLUDE)}"\Common\Cbdata.hpp"\
|
||||
{$(INCLUDE)}"\Common\Cbptr.hpp"\
|
||||
{$(INCLUDE)}"\Common\Dwindow.hpp"\
|
||||
{$(INCLUDE)}"\Common\Guiwnd.hpp"\
|
||||
{$(INCLUDE)}"\Common\Pcallbck.hpp"\
|
||||
{$(INCLUDE)}"\Common\Stdio.hpp"\
|
||||
{$(INCLUDE)}"\Common\Stdlib.hpp"\
|
||||
{$(INCLUDE)}"\Common\String.hpp"\
|
||||
{$(INCLUDE)}"\Common\Vhandler.hpp"\
|
||||
{$(INCLUDE)}"\Common\Windows.hpp"\
|
||||
{$(INCLUDE)}"\Common\Windowsx.hpp"\
|
||||
|
||||
|
||||
"$(INTDIR)\Ppydlg.obj" : $(SOURCE) $(DEP_CPP_PPYDL) "$(INTDIR)"
|
||||
|
||||
|
||||
# End Source File
|
||||
################################################################################
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Purecflo.cpp
|
||||
DEP_CPP_PUREC=\
|
||||
{$(INCLUDE)}"\.\Purecflo.hpp"\
|
||||
{$(INCLUDE)}"\Common\Assert.hpp"\
|
||||
{$(INCLUDE)}"\Common\Block.hpp"\
|
||||
{$(INCLUDE)}"\Common\Block.tpp"\
|
||||
{$(INCLUDE)}"\Common\Stdlib.hpp"\
|
||||
{$(INCLUDE)}"\Common\String.hpp"\
|
||||
{$(INCLUDE)}"\Common\Windows.hpp"\
|
||||
|
||||
|
||||
"$(INTDIR)\Purecflo.obj" : $(SOURCE) $(DEP_CPP_PUREC) "$(INTDIR)"
|
||||
|
||||
|
||||
# End Source File
|
||||
################################################################################
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Calcdlg.cpp
|
||||
DEP_CPP_CALCD=\
|
||||
"..\..\Parts\tbpro32\Include\Ssdll.h"\
|
||||
{$(INCLUDE)}"\.\Calcdlg.hpp"\
|
||||
{$(INCLUDE)}"\.\Calcthrd.hpp"\
|
||||
{$(INCLUDE)}"\.\Cashdefs.hpp"\
|
||||
{$(INCLUDE)}"\.\Cashflow.h"\
|
||||
{$(INCLUDE)}"\.\Cashflow.hpp"\
|
||||
{$(INCLUDE)}"\.\Graphwnd.hpp"\
|
||||
{$(INCLUDE)}"\.\Passthru.hpp"\
|
||||
{$(INCLUDE)}"\.\Ppydlg.hpp"\
|
||||
{$(INCLUDE)}"\.\Prepay.hpp"\
|
||||
{$(INCLUDE)}"\.\Purecflo.hpp"\
|
||||
{$(INCLUDE)}"\Common\Assert.hpp"\
|
||||
{$(INCLUDE)}"\Common\Block.hpp"\
|
||||
{$(INCLUDE)}"\Common\Block.tpp"\
|
||||
{$(INCLUDE)}"\Common\Callback.hpp"\
|
||||
{$(INCLUDE)}"\Common\Callback.tpp"\
|
||||
{$(INCLUDE)}"\Common\Cbdata.hpp"\
|
||||
{$(INCLUDE)}"\Common\Cbptr.hpp"\
|
||||
{$(INCLUDE)}"\Common\Crsctrl.hpp"\
|
||||
{$(INCLUDE)}"\Common\Dwindow.hpp"\
|
||||
{$(INCLUDE)}"\Common\Filetime.hpp"\
|
||||
{$(INCLUDE)}"\Common\Font.hpp"\
|
||||
{$(INCLUDE)}"\Common\Gdiobj.hpp"\
|
||||
{$(INCLUDE)}"\common\gdipoint.hpp"\
|
||||
{$(INCLUDE)}"\Common\Guiwnd.hpp"\
|
||||
{$(INCLUDE)}"\Common\Pcallbck.hpp"\
|
||||
{$(INCLUDE)}"\Common\Point.hpp"\
|
||||
{$(INCLUDE)}"\Common\Pointer.hpp"\
|
||||
{$(INCLUDE)}"\Common\Rect.hpp"\
|
||||
{$(INCLUDE)}"\Common\Stdio.hpp"\
|
||||
{$(INCLUDE)}"\Common\Stdlib.hpp"\
|
||||
{$(INCLUDE)}"\Common\String.hpp"\
|
||||
{$(INCLUDE)}"\Common\Systime.hpp"\
|
||||
{$(INCLUDE)}"\Common\Vhandler.hpp"\
|
||||
{$(INCLUDE)}"\Common\Window.hpp"\
|
||||
{$(INCLUDE)}"\Common\Windows.hpp"\
|
||||
{$(INCLUDE)}"\Common\Windowsx.hpp"\
|
||||
{$(INCLUDE)}"\Common\Winnt.hpp"\
|
||||
{$(INCLUDE)}"\Fpsheet\Coltype.hpp"\
|
||||
{$(INCLUDE)}"\Fpsheet\Fpapi.hpp"\
|
||||
{$(INCLUDE)}"\Fpsheet\Fpsheet.hpp"\
|
||||
{$(INCLUDE)}"\Fpsheet\Menuitem.hpp"\
|
||||
{$(INCLUDE)}"\Tbpro32\Ssdll.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Context.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Event.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Msgqueue.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Mthread.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Mutex.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Ptcllbck.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Qthread.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Savearea.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Tcallbck.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Tcallbck.tpp"\
|
||||
{$(INCLUDE)}"\Thread\Thmsg.hpp"\
|
||||
{$(INCLUDE)}"\Thread\Thread.hpp"\
|
||||
|
||||
|
||||
"$(INTDIR)\Calcdlg.obj" : $(SOURCE) $(DEP_CPP_CALCD) "$(INTDIR)"
|
||||
|
||||
|
||||
# End Source File
|
||||
################################################################################
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=\work\exe\mscommon.lib
|
||||
|
||||
!IF "$(CFG)" == "cashflow - Win32 Release"
|
||||
|
||||
!ELSEIF "$(CFG)" == "cashflow - Win32 Debug"
|
||||
|
||||
!ENDIF
|
||||
|
||||
# End Source File
|
||||
################################################################################
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=\work\exe\msthread.lib
|
||||
|
||||
!IF "$(CFG)" == "cashflow - Win32 Release"
|
||||
|
||||
!ELSEIF "$(CFG)" == "cashflow - Win32 Debug"
|
||||
|
||||
!ENDIF
|
||||
|
||||
# End Source File
|
||||
################################################################################
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=\work\exe\fpsheet.lib
|
||||
|
||||
!IF "$(CFG)" == "cashflow - Win32 Release"
|
||||
|
||||
!ELSEIF "$(CFG)" == "cashflow - Win32 Debug"
|
||||
|
||||
!ENDIF
|
||||
|
||||
# End Source File
|
||||
################################################################################
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\graphwnd.cpp
|
||||
DEP_CPP_GRAPH=\
|
||||
{$(INCLUDE)}"\.\Clrrect.hpp"\
|
||||
{$(INCLUDE)}"\.\Graph3d.hpp"\
|
||||
{$(INCLUDE)}"\.\Graphwnd.hpp"\
|
||||
{$(INCLUDE)}"\.\Purecflo.hpp"\
|
||||
{$(INCLUDE)}"\Common\Assert.hpp"\
|
||||
{$(INCLUDE)}"\Common\Block.hpp"\
|
||||
{$(INCLUDE)}"\Common\Block.tpp"\
|
||||
{$(INCLUDE)}"\Common\Bminfo.hpp"\
|
||||
{$(INCLUDE)}"\Common\Callback.hpp"\
|
||||
{$(INCLUDE)}"\Common\Callback.tpp"\
|
||||
{$(INCLUDE)}"\Common\Cbdata.hpp"\
|
||||
{$(INCLUDE)}"\Common\Cbptr.hpp"\
|
||||
{$(INCLUDE)}"\Common\Dib.hpp"\
|
||||
{$(INCLUDE)}"\Common\Fixup.hpp"\
|
||||
{$(INCLUDE)}"\Common\Gdata.hpp"\
|
||||
{$(INCLUDE)}"\Common\Gdata.tpp"\
|
||||
{$(INCLUDE)}"\Common\Gdiobj.hpp"\
|
||||
{$(INCLUDE)}"\common\gdipoint.hpp"\
|
||||
{$(INCLUDE)}"\Common\Guiwnd.hpp"\
|
||||
{$(INCLUDE)}"\Common\Math.hpp"\
|
||||
{$(INCLUDE)}"\Common\Palentry.hpp"\
|
||||
{$(INCLUDE)}"\Common\Pcallbck.hpp"\
|
||||
{$(INCLUDE)}"\Common\Pen.hpp"\
|
||||
{$(INCLUDE)}"\Common\Point.hpp"\
|
||||
{$(INCLUDE)}"\Common\Pointer.hpp"\
|
||||
{$(INCLUDE)}"\Common\Purebmp.hpp"\
|
||||
{$(INCLUDE)}"\Common\Purehdc.hpp"\
|
||||
{$(INCLUDE)}"\Common\Purepal.hpp"\
|
||||
{$(INCLUDE)}"\Common\Pvector.hpp"\
|
||||
{$(INCLUDE)}"\Common\Pvector.tpp"\
|
||||
{$(INCLUDE)}"\Common\Rect.hpp"\
|
||||
{$(INCLUDE)}"\Common\Rgbcolor.hpp"\
|
||||
{$(INCLUDE)}"\Common\Rgbquad.hpp"\
|
||||
{$(INCLUDE)}"\Common\Stdlib.hpp"\
|
||||
{$(INCLUDE)}"\Common\String.hpp"\
|
||||
{$(INCLUDE)}"\Common\Types.hpp"\
|
||||
{$(INCLUDE)}"\Common\Vhandler.hpp"\
|
||||
{$(INCLUDE)}"\Common\Window.hpp"\
|
||||
{$(INCLUDE)}"\Common\Windows.hpp"\
|
||||
{$(INCLUDE)}"\Common\Windowsx.hpp"\
|
||||
{$(INCLUDE)}"\engine\angle.hpp"\
|
||||
{$(INCLUDE)}"\engine\angle3d.hpp"\
|
||||
{$(INCLUDE)}"\Engine\Dib3d.hpp"\
|
||||
{$(INCLUDE)}"\Engine\Point3d.hpp"\
|
||||
{$(INCLUDE)}"\Engine\Purevsys.hpp"\
|
||||
{$(INCLUDE)}"\Engine\Rect3d.hpp"\
|
||||
{$(INCLUDE)}"\Engine\Spacial.hpp"\
|
||||
{$(INCLUDE)}"\Engine\Vector3d.hpp"\
|
||||
{$(INCLUDE)}"\Engine\Viewsys.hpp"\
|
||||
|
||||
|
||||
"$(INTDIR)\graphwnd.obj" : $(SOURCE) $(DEP_CPP_GRAPH) "$(INTDIR)"
|
||||
|
||||
|
||||
# End Source File
|
||||
################################################################################
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=\work\exe\msengine.lib
|
||||
|
||||
!IF "$(CFG)" == "cashflow - Win32 Release"
|
||||
|
||||
!ELSEIF "$(CFG)" == "cashflow - Win32 Debug"
|
||||
|
||||
!ENDIF
|
||||
|
||||
# End Source File
|
||||
################################################################################
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\graph3d.cpp
|
||||
DEP_CPP_GRAPH3=\
|
||||
{$(INCLUDE)}"\.\Graph3d.hpp"\
|
||||
{$(INCLUDE)}"\Common\Assert.hpp"\
|
||||
{$(INCLUDE)}"\Common\Block.hpp"\
|
||||
{$(INCLUDE)}"\Common\Block.tpp"\
|
||||
{$(INCLUDE)}"\Common\Bminfo.hpp"\
|
||||
{$(INCLUDE)}"\Common\Callback.hpp"\
|
||||
{$(INCLUDE)}"\Common\Callback.tpp"\
|
||||
{$(INCLUDE)}"\Common\Cbdata.hpp"\
|
||||
{$(INCLUDE)}"\Common\Cbptr.hpp"\
|
||||
{$(INCLUDE)}"\Common\Dib.hpp"\
|
||||
{$(INCLUDE)}"\Common\Fixup.hpp"\
|
||||
{$(INCLUDE)}"\Common\Gdata.hpp"\
|
||||
{$(INCLUDE)}"\Common\Gdata.tpp"\
|
||||
{$(INCLUDE)}"\Common\Gdiobj.hpp"\
|
||||
{$(INCLUDE)}"\common\gdipoint.hpp"\
|
||||
{$(INCLUDE)}"\Common\Guiwnd.hpp"\
|
||||
{$(INCLUDE)}"\Common\Math.hpp"\
|
||||
{$(INCLUDE)}"\Common\Palentry.hpp"\
|
||||
{$(INCLUDE)}"\Common\Pcallbck.hpp"\
|
||||
{$(INCLUDE)}"\Common\Pen.hpp"\
|
||||
{$(INCLUDE)}"\Common\Point.hpp"\
|
||||
{$(INCLUDE)}"\Common\Purebmp.hpp"\
|
||||
{$(INCLUDE)}"\Common\Purehdc.hpp"\
|
||||
{$(INCLUDE)}"\Common\Purepal.hpp"\
|
||||
{$(INCLUDE)}"\Common\Pvector.hpp"\
|
||||
{$(INCLUDE)}"\Common\Pvector.tpp"\
|
||||
{$(INCLUDE)}"\Common\Rect.hpp"\
|
||||
{$(INCLUDE)}"\Common\Rgbcolor.hpp"\
|
||||
{$(INCLUDE)}"\Common\Rgbquad.hpp"\
|
||||
{$(INCLUDE)}"\Common\Stdlib.hpp"\
|
||||
{$(INCLUDE)}"\Common\String.hpp"\
|
||||
{$(INCLUDE)}"\Common\Types.hpp"\
|
||||
{$(INCLUDE)}"\Common\Vhandler.hpp"\
|
||||
{$(INCLUDE)}"\Common\Windows.hpp"\
|
||||
{$(INCLUDE)}"\Common\Windowsx.hpp"\
|
||||
{$(INCLUDE)}"\engine\angle.hpp"\
|
||||
{$(INCLUDE)}"\engine\angle3d.hpp"\
|
||||
{$(INCLUDE)}"\Engine\Dib3d.hpp"\
|
||||
{$(INCLUDE)}"\Engine\Point3d.hpp"\
|
||||
{$(INCLUDE)}"\Engine\Purevsys.hpp"\
|
||||
{$(INCLUDE)}"\Engine\Viewsys.hpp"\
|
||||
|
||||
|
||||
"$(INTDIR)\graph3d.obj" : $(SOURCE) $(DEP_CPP_GRAPH3) "$(INTDIR)"
|
||||
|
||||
|
||||
# End Source File
|
||||
# End Target
|
||||
# End Project
|
||||
################################################################################
|
||||
BIN
cashflow/CASHFLOW.MDP
Normal file
BIN
cashflow/CASHFLOW.MDP
Normal file
Binary file not shown.
BIN
cashflow/CASHFLOW.OPT
Normal file
BIN
cashflow/CASHFLOW.OPT
Normal file
Binary file not shown.
92
cashflow/CASHFLOW.PLG
Normal file
92
cashflow/CASHFLOW.PLG
Normal file
@@ -0,0 +1,92 @@
|
||||
<html>
|
||||
<body>
|
||||
<pre>
|
||||
<h1>Build Log</h1>
|
||||
<h3>
|
||||
--------------------Configuration: cashflow - Win32 Debug--------------------
|
||||
</h3>
|
||||
<h3>Command Lines</h3>
|
||||
Creating command line "rc.exe /l 0x409 /fo".\msvcobj/Cashflow.res" /d "_DEBUG" "F:\work\cashflow\Cashflow.rc""
|
||||
Creating temporary file "C:\DOCUME~1\TERNET~1\LOCALS~1\Temp\RSP203.tmp" with contents
|
||||
[
|
||||
/nologo /MTd /Zi /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "__FLAT__" /D "STRICT" /Fp"\work\exe\msvc42.pch" /YX"windows.h" /Fo".\msvcobj/" /Fd".\msvcobj/" /FD /c
|
||||
"F:\work\cashflow\Calcdlg.cpp"
|
||||
"F:\work\cashflow\Calcthrd.cpp"
|
||||
"F:\work\cashflow\Cashflow.cpp"
|
||||
"F:\work\cashflow\graph3d.cpp"
|
||||
"F:\work\cashflow\graphwnd.cpp"
|
||||
"F:\work\cashflow\irr.cpp"
|
||||
"F:\work\cashflow\Main.cpp"
|
||||
"F:\work\cashflow\Ppydlg.cpp"
|
||||
"F:\work\cashflow\Purecflo.cpp"
|
||||
]
|
||||
Creating command line "cl.exe @C:\DOCUME~1\TERNET~1\LOCALS~1\Temp\RSP203.tmp"
|
||||
Creating temporary file "C:\DOCUME~1\TERNET~1\LOCALS~1\Temp\RSP204.tmp" with contents
|
||||
[
|
||||
kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib uuid.lib /nologo /subsystem:windows /incremental:yes /pdb:".\msvcobj/cashflow.pdb" /debug /machine:I386 /out:"..\exe\cashflow.exe"
|
||||
.\msvcobj\Calcdlg.obj
|
||||
.\msvcobj\Calcthrd.obj
|
||||
.\msvcobj\Cashflow.obj
|
||||
.\msvcobj\graph3d.obj
|
||||
.\msvcobj\graphwnd.obj
|
||||
.\msvcobj\irr.obj
|
||||
.\msvcobj\Main.obj
|
||||
.\msvcobj\Ppydlg.obj
|
||||
.\msvcobj\Purecflo.obj
|
||||
.\msvcobj\Cashflow.res
|
||||
..\exe\msengine.lib
|
||||
..\exe\msthread.lib
|
||||
\work\exe\mscommon.lib
|
||||
\work\exe\msbsp.lib
|
||||
]
|
||||
Creating command line "link.exe @C:\DOCUME~1\TERNET~1\LOCALS~1\Temp\RSP204.tmp"
|
||||
<h3>Output Window</h3>
|
||||
Compiling resources...
|
||||
Compiling...
|
||||
Calcdlg.cpp
|
||||
F:\work\cashflow\Calcdlg.cpp(6) : fatal error C1083: Cannot open include file: 'fpsheet/fpsheet.hpp': No such file or directory
|
||||
Calcthrd.cpp
|
||||
F:\work\cashflow\Calcthrd.cpp(8) : fatal error C1083: Cannot open include file: 'fpsheet/fpsheet.hpp': No such file or directory
|
||||
Cashflow.cpp
|
||||
graph3d.cpp
|
||||
graphwnd.cpp
|
||||
F:\work\cashflow\graphwnd.cpp(147) : error C2079: 'vectorInt' uses undefined class 'PureVector<int>'
|
||||
F:\work\cashflow\graphwnd.cpp(151) : error C2228: left of '.size' must have class/struct/union type
|
||||
F:\work\cashflow\graphwnd.cpp(152) : error C2109: subscript requires array or pointer type
|
||||
F:\work\cashflow\graphwnd.cpp(152) : error C2106: '=' : left operand must be l-value
|
||||
F:\work\cashflow\graphwnd.cpp(153) : error C2664: 'void __thiscall GraphWindow::showFlows(class Block<class PureCashFlow> &,int,class PureVector<int> &,unsigned char,int)' : cannot convert parameter 3 from 'int' to 'class PureVector<int> &'
|
||||
A reference that is not to 'const' cannot be bound to a non-lvalue
|
||||
F:\work\cashflow\graphwnd.cpp(154) : error C2109: subscript requires array or pointer type
|
||||
F:\work\cashflow\graphwnd.cpp(154) : error C2106: '=' : left operand must be l-value
|
||||
F:\work\cashflow\graphwnd.cpp(155) : error C2664: 'void __thiscall GraphWindow::showFlows(class Block<class PureCashFlow> &,int,class PureVector<int> &,unsigned char,int)' : cannot convert parameter 3 from 'int' to 'class PureVector<int> &'
|
||||
A reference that is not to 'const' cannot be bound to a non-lvalue
|
||||
F:\work\cashflow\graphwnd.cpp(161) : error C2079: 'scrnInt' uses undefined class 'PureVector<int>'
|
||||
F:\work\cashflow\graphwnd.cpp(167) : error C2664: 'transform' : cannot convert parameter 1 from 'class PureVector<int>' to 'class Array<int> &'
|
||||
A reference that is not to 'const' cannot be bound to a non-lvalue
|
||||
F:\work\cashflow\graphwnd.cpp(168) : error C2228: left of '.size' must have class/struct/union type
|
||||
F:\work\cashflow\graphwnd.cpp(170) : error C2109: subscript requires array or pointer type
|
||||
F:\work\cashflow\graphwnd.cpp(170) : error C2109: subscript requires array or pointer type
|
||||
F:\work\cashflow\graphwnd.cpp(184) : error C2027: use of undefined type 'PureVector<int>'
|
||||
F:\work\cashflow\graphwnd.cpp(184) : error C2228: left of '.size' must have class/struct/union type
|
||||
F:\work\cashflow\graphwnd.cpp(185) : error C2027: use of undefined type 'PureVector<int>'
|
||||
F:\work\cashflow\graphwnd.cpp(185) : error C2228: left of '.size' must have class/struct/union type
|
||||
F:\work\cashflow\graphwnd.cpp(187) : error C2676: binary '[' : 'class PureVector<int>' does not define this operator or a conversion to a type acceptable to the predefined operator
|
||||
F:\work\cashflow\graphwnd.cpp(188) : error C2676: binary '[' : 'class PureVector<int>' does not define this operator or a conversion to a type acceptable to the predefined operator
|
||||
F:\work\cashflow\graphwnd.cpp(188) : error C2676: binary '[' : 'class PureVector<int>' does not define this operator or a conversion to a type acceptable to the predefined operator
|
||||
F:\work\cashflow\graphwnd.cpp(191) : error C2027: use of undefined type 'PureVector<int>'
|
||||
F:\work\cashflow\graphwnd.cpp(191) : error C2228: left of '.size' must have class/struct/union type
|
||||
F:\work\cashflow\graphwnd.cpp(191) : error C2676: binary '[' : 'class PureVector<int>' does not define this operator or a conversion to a type acceptable to the predefined operator
|
||||
F:\work\cashflow\graphwnd.cpp(191) : error C2676: binary '[' : 'class PureVector<int>' does not define this operator or a conversion to a type acceptable to the predefined operator
|
||||
irr.cpp
|
||||
Main.cpp
|
||||
Ppydlg.cpp
|
||||
Purecflo.cpp
|
||||
Error executing cl.exe.
|
||||
|
||||
|
||||
|
||||
<h3>Results</h3>
|
||||
cashflow.exe - 26 error(s), 0 warning(s)
|
||||
</pre>
|
||||
</body>
|
||||
</html>
|
||||
34
cashflow/CASHFLOW.RC
Normal file
34
cashflow/CASHFLOW.RC
Normal file
@@ -0,0 +1,34 @@
|
||||
#include <windows.h>
|
||||
#include <cashflow.h>
|
||||
|
||||
Cashflow DIALOG 7, 18, 375, 251
|
||||
STYLE DS_MODALFRAME | 0x4L | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
|
||||
CAPTION "Cashflow"
|
||||
FONT 8, "MS Sans Serif"
|
||||
{
|
||||
LTEXT "Principal:", -1, 5, 10, 34, 8
|
||||
EDITTEXT CALC_PRINCIPAL, 37, 8, 57, 12, WS_BORDER | WS_TABSTOP
|
||||
LTEXT "Coupon:", -1, 99, 10, 31, 8
|
||||
EDITTEXT CALC_COUPON, 127, 8, 59, 12, WS_BORDER | WS_TABSTOP
|
||||
LTEXT "Term:", -1, 191, 10, 22, 8
|
||||
EDITTEXT CALC_TERM, 213, 8, 32, 12, WS_BORDER | WS_TABSTOP
|
||||
AUTORADIOBUTTON "Prepayments", CALC_PREPAYMENTS, 252, 8, 60, 12
|
||||
PUSHBUTTON "Calculate", CALC_CALCULATE, 318, 8, 50, 14
|
||||
}
|
||||
|
||||
|
||||
Prepayments DIALOG 6, 15, 180, 69
|
||||
STYLE DS_MODALFRAME | 0x4L | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
|
||||
CAPTION "Prepayment Schedule"
|
||||
FONT 8, "MS Sans Serif"
|
||||
{
|
||||
DEFPUSHBUTTON "Apply", IDOK, 113, 8, 50, 14
|
||||
LTEXT "Amount :", -1, 6, 10, 32, 8
|
||||
LTEXT "Increment :", -1, 2, 23, 37, 8
|
||||
LTEXT "Frequency :", -1, 2, 35, 40, 8
|
||||
EDITTEXT PPY_AMOUNT, 41, 8, 67, 12, WS_BORDER | WS_TABSTOP
|
||||
EDITTEXT PPY_INCREMENT, 41, 21, 67, 12, WS_BORDER | WS_TABSTOP
|
||||
EDITTEXT PPY_FREQUENCY, 41, 34, 67, 12, WS_BORDER | WS_TABSTOP
|
||||
PUSHBUTTON "Cancel", IDCANCEL, 113, 22, 50, 14
|
||||
}
|
||||
|
||||
BIN
cashflow/CASHFLOW.RWS
Normal file
BIN
cashflow/CASHFLOW.RWS
Normal file
Binary file not shown.
363
cashflow/CASHFLOW.TXT
Normal file
363
cashflow/CASHFLOW.TXT
Normal file
@@ -0,0 +1,363 @@
|
||||
MBSFLOWS
|
||||
Iss Bal SMM MtgPay NetIntPay GrossInt SchdPrn Prepay TotPrin CashFlow Factor
|
||||
==========================================================================================================
|
||||
255000.00 0.0000000 1848.93 1673.44 1673.44 175.49 0.00 175.49 1848.93 1.0000000000
|
||||
254824.51 0.0000000 1848.93 1672.29 3345.72 176.64 0.00 176.64 1848.93 0.9993118061
|
||||
254647.87 0.0000000 1848.93 1671.13 5016.85 177.80 0.00 177.80 1848.93 0.9986190959
|
||||
254470.07 0.0000000 1848.93 1669.96 6686.81 178.97 0.00 178.97 1848.93 0.9979218398
|
||||
254291.10 0.0000000 1848.93 1668.79 8355.60 180.14 0.00 180.14 1848.93 0.9972200079
|
||||
254110.96 0.0000000 1848.93 1667.60 10023.20 181.32 0.00 181.32 1848.93 0.9965135703
|
||||
253929.64 0.0000000 1848.93 1666.41 11689.61 182.51 0.00 182.51 1848.93 0.9958024967
|
||||
253747.12 0.0000000 1848.93 1665.22 13354.83 183.71 0.00 183.71 1848.93 0.9950867567
|
||||
253563.41 0.0000000 1848.93 1664.01 15018.84 184.92 0.00 184.92 1848.93 0.9943663196
|
||||
253378.49 0.0000000 1848.93 1662.80 16681.63 186.13 0.00 186.13 1848.93 0.9936411546
|
||||
253192.36 0.0000000 1848.93 1661.57 18343.21 187.35 0.00 187.35 1848.93 0.9929112308
|
||||
253005.01 0.0000000 1848.93 1660.35 20003.55 188.58 0.00 188.58 1848.93 0.9921765168
|
||||
252816.43 0.0000000 1848.93 1659.11 21662.66 189.82 0.00 189.82 1848.93 0.9914369813
|
||||
252626.61 0.0000000 1848.93 1657.86 23320.52 191.06 0.00 191.06 1848.93 0.9906925926
|
||||
252435.55 0.0000000 1848.93 1656.61 24977.13 192.32 0.00 192.32 1848.93 0.9899433188
|
||||
252243.23 0.0000000 1848.93 1655.35 26632.48 193.58 0.00 193.58 1848.93 0.9891891279
|
||||
252049.65 0.0000000 1848.93 1654.08 28286.55 194.85 0.00 194.85 1848.93 0.9884299876
|
||||
251854.80 0.0000000 1848.93 1652.80 29939.35 196.13 0.00 196.13 1848.93 0.9876658655
|
||||
251658.67 0.0000000 1848.93 1651.51 31590.86 197.42 0.00 197.42 1848.93 0.9868967288
|
||||
251461.25 0.0000000 1848.93 1650.21 33241.08 198.71 0.00 198.71 1848.93 0.9861225447
|
||||
251262.54 0.0000000 1848.93 1648.91 34889.99 200.02 0.00 200.02 1848.93 0.9853432799
|
||||
251062.52 0.0000000 1848.93 1647.60 36537.58 201.33 0.00 201.33 1848.93 0.9845589013
|
||||
250861.19 0.0000000 1848.93 1646.28 38183.86 202.65 0.00 202.65 1848.93 0.9837693752
|
||||
250658.54 0.0000000 1848.93 1644.95 39828.81 203.98 0.00 203.98 1848.93 0.9829746678
|
||||
250454.56 0.0000000 1848.93 1643.61 41472.41 205.32 0.00 205.32 1848.93 0.9821747451
|
||||
250249.24 0.0000000 1848.93 1642.26 43114.68 206.67 0.00 206.67 1848.93 0.9813695729
|
||||
250042.57 0.0000000 1848.93 1640.90 44755.58 208.02 0.00 208.02 1848.93 0.9805591168
|
||||
249834.55 0.0000000 1848.93 1639.54 46395.12 209.39 0.00 209.39 1848.93 0.9797433421
|
||||
249625.16 0.0000000 1848.93 1638.17 48033.28 210.76 0.00 210.76 1848.93 0.9789222139
|
||||
249414.40 0.0000000 1848.93 1636.78 49670.07 212.14 0.00 212.14 1848.93 0.9780956970
|
||||
249202.26 0.0000000 1848.93 1635.39 51305.46 213.54 0.00 213.54 1848.93 0.9772637561
|
||||
248988.72 0.0000000 1848.93 1633.99 52939.44 214.94 0.00 214.94 1848.93 0.9764263556
|
||||
248773.78 0.0000000 1848.93 1632.58 54572.02 216.35 0.00 216.35 1848.93 0.9755834596
|
||||
248557.43 0.0000000 1848.93 1631.16 56203.18 217.77 0.00 217.77 1848.93 0.9747350321
|
||||
248339.66 0.0000000 1848.93 1629.73 57832.91 219.20 0.00 219.20 1848.93 0.9738810369
|
||||
248120.47 0.0000000 1848.93 1628.29 59461.20 220.64 0.00 220.64 1848.93 0.9730214372
|
||||
247899.83 0.0000000 1848.93 1626.84 61088.04 222.08 0.00 222.08 1848.93 0.9721561965
|
||||
247677.75 0.0000000 1848.93 1625.39 62713.43 223.54 0.00 223.54 1848.93 0.9712852776
|
||||
247454.20 0.0000000 1848.93 1623.92 64337.35 225.01 0.00 225.01 1848.93 0.9704086433
|
||||
247229.20 0.0000000 1848.93 1622.44 65959.79 226.49 0.00 226.49 1848.93 0.9695262561
|
||||
247002.71 0.0000000 1848.93 1620.96 67580.74 227.97 0.00 227.97 1848.93 0.9686380783
|
||||
246774.74 0.0000000 1848.93 1619.46 69200.20 229.47 0.00 229.47 1848.93 0.9677440717
|
||||
246545.27 0.0000000 1848.93 1617.95 70818.16 230.97 0.00 230.97 1848.93 0.9668441983
|
||||
246314.30 0.0000000 1848.93 1616.44 72434.59 232.49 0.00 232.49 1848.93 0.9659384194
|
||||
246081.81 0.0000000 1848.93 1614.91 74049.51 234.02 0.00 234.02 1848.93 0.9650266964
|
||||
245847.79 0.0000000 1848.93 1613.38 75662.88 235.55 0.00 235.55 1848.93 0.9641089901
|
||||
245612.24 0.0000000 1848.93 1611.83 77274.71 237.10 0.00 237.10 1848.93 0.9631852615
|
||||
245375.15 0.0000000 1848.93 1610.27 78884.99 238.65 0.00 238.65 1848.93 0.9622554708
|
||||
245136.49 0.0000000 1848.93 1608.71 80493.69 240.22 0.00 240.22 1848.93 0.9613195784
|
||||
244896.27 0.0000000 1848.93 1607.13 82100.83 241.80 0.00 241.80 1848.93 0.9603775442
|
||||
244654.48 0.0000000 1848.93 1605.55 83706.37 243.38 0.00 243.38 1848.93 0.9594293280
|
||||
244411.10 0.0000000 1848.93 1603.95 85310.32 244.98 0.00 244.98 1848.93 0.9584748890
|
||||
244166.12 0.0000000 1848.93 1602.34 86912.66 246.59 0.00 246.59 1848.93 0.9575141865
|
||||
243919.53 0.0000000 1848.93 1600.72 88513.38 248.21 0.00 248.21 1848.93 0.9565471795
|
||||
243671.33 0.0000000 1848.93 1599.09 90112.47 249.83 0.00 249.83 1848.93 0.9555738264
|
||||
243421.49 0.0000000 1848.93 1597.45 91709.93 251.47 0.00 251.47 1848.93 0.9545940857
|
||||
243170.02 0.0000000 1848.93 1595.80 93305.73 253.12 0.00 253.12 1848.93 0.9536079155
|
||||
242916.89 0.0000000 1848.93 1594.14 94899.87 254.78 0.00 254.78 1848.93 0.9526152735
|
||||
242662.11 0.0000000 1848.93 1592.47 96492.34 256.46 0.00 256.46 1848.93 0.9516161173
|
||||
242405.65 0.0000000 1848.93 1590.79 98083.13 258.14 0.00 258.14 1848.93 0.9506104042
|
||||
242147.51 0.0000000 1848.93 1589.09 99672.22 259.83 0.00 259.83 1848.93 0.9495980910
|
||||
241887.68 0.0000000 1848.93 1587.39 101259.61 261.54 0.00 261.54 1848.93 0.9485791346
|
||||
241626.14 0.0000000 1848.93 1585.67 102845.28 263.26 0.00 263.26 1848.93 0.9475534912
|
||||
241362.88 0.0000000 1848.93 1583.94 104429.23 264.98 0.00 264.98 1848.93 0.9465211171
|
||||
241097.90 0.0000000 1848.93 1582.20 106011.43 266.72 0.00 266.72 1848.93 0.9454819680
|
||||
240831.18 0.0000000 1848.93 1580.45 107591.89 268.47 0.00 268.47 1848.93 0.9444359995
|
||||
240562.71 0.0000000 1848.93 1578.69 109170.58 270.23 0.00 270.23 1848.93 0.9433831668
|
||||
240292.47 0.0000000 1848.93 1576.92 110747.50 272.01 0.00 272.01 1848.93 0.9423234249
|
||||
240020.47 0.0000000 1848.93 1575.13 112322.63 273.79 0.00 273.79 1848.93 0.9412567285
|
||||
239746.67 0.0000000 1848.93 1573.34 113895.97 275.59 0.00 275.59 1848.93 0.9401830318
|
||||
239471.08 0.0000000 1848.93 1571.53 115467.50 277.40 0.00 277.40 1848.93 0.9391022891
|
||||
239193.69 0.0000000 1848.93 1569.71 117037.21 279.22 0.00 279.22 1848.93 0.9380144539
|
||||
238914.47 0.0000000 1848.93 1567.88 118605.08 281.05 0.00 281.05 1848.93 0.9369194798
|
||||
238633.42 0.0000000 1848.93 1566.03 120171.12 282.90 0.00 282.90 1848.93 0.9358173200
|
||||
238350.52 0.0000000 1848.93 1564.18 121735.29 284.75 0.00 284.75 1848.93 0.9347079273
|
||||
238065.77 0.0000000 1848.93 1562.31 123297.60 286.62 0.00 286.62 1848.93 0.9335912541
|
||||
237779.15 0.0000000 1848.93 1560.43 124858.02 288.50 0.00 288.50 1848.93 0.9324672528
|
||||
237490.65 0.0000000 1848.93 1558.53 126416.56 290.39 0.00 290.39 1848.93 0.9313358752
|
||||
237200.25 0.0000000 1848.93 1556.63 127973.18 292.30 0.00 292.30 1848.93 0.9301970730
|
||||
236907.95 0.0000000 1848.93 1554.71 129527.89 294.22 0.00 294.22 1848.93 0.9290507973
|
||||
236613.73 0.0000000 1848.93 1552.78 131080.67 296.15 0.00 296.15 1848.93 0.9278969993
|
||||
236317.59 0.0000000 1848.93 1550.83 132631.50 298.09 0.00 298.09 1848.93 0.9267356294
|
||||
236019.49 0.0000000 1848.93 1548.88 134180.38 300.05 0.00 300.05 1848.93 0.9255666381
|
||||
235719.44 0.0000000 1848.93 1546.91 135727.29 302.02 0.00 302.02 1848.93 0.9243899752
|
||||
235417.43 0.0000000 1848.93 1544.93 137272.22 304.00 0.00 304.00 1848.93 0.9232055905
|
||||
235113.43 0.0000000 1848.93 1542.93 138815.15 306.00 0.00 306.00 1848.93 0.9220134333
|
||||
234807.43 0.0000000 1848.93 1540.92 140356.07 308.00 0.00 308.00 1848.93 0.9208134525
|
||||
234499.43 0.0000000 1848.93 1538.90 141894.97 310.02 0.00 310.02 1848.93 0.9196055969
|
||||
234189.40 0.0000000 1848.93 1536.87 143431.84 312.06 0.00 312.06 1848.93 0.9183898147
|
||||
233877.34 0.0000000 1848.93 1534.82 144966.66 314.11 0.00 314.11 1848.93 0.9171660539
|
||||
233563.24 0.0000000 1848.93 1532.76 146499.42 316.17 0.00 316.17 1848.93 0.9159342622
|
||||
233247.07 0.0000000 1848.93 1530.68 148030.10 318.24 0.00 318.24 1848.93 0.9146943869
|
||||
232928.83 0.0000000 1848.93 1528.60 149558.70 320.33 0.00 320.33 1848.93 0.9134463749
|
||||
232608.49 0.0000000 1848.93 1526.49 151085.19 322.43 0.00 322.43 1848.93 0.9121901728
|
||||
232286.06 0.0000000 1848.93 1524.38 152609.57 324.55 0.00 324.55 1848.93 0.9109257269
|
||||
231961.51 0.0000000 1848.93 1522.25 154131.82 326.68 0.00 326.68 1848.93 0.9096529830
|
||||
231634.83 0.0000000 1848.93 1520.10 155651.92 328.82 0.00 328.82 1848.93 0.9083718868
|
||||
231306.01 0.0000000 1848.93 1517.95 157169.87 330.98 0.00 330.98 1848.93 0.9070823834
|
||||
230975.03 0.0000000 1848.93 1515.77 158685.64 333.15 0.00 333.15 1848.93 0.9057844176
|
||||
230641.87 0.0000000 1848.93 1513.59 160199.23 335.34 0.00 335.34 1848.93 0.9044779339
|
||||
230306.53 0.0000000 1848.93 1511.39 161710.62 337.54 0.00 337.54 1848.93 0.9031628765
|
||||
229968.99 0.0000000 1848.93 1509.17 163219.79 339.76 0.00 339.76 1848.93 0.9018391889
|
||||
229629.24 0.0000000 1848.93 1506.94 164726.73 341.99 0.00 341.99 1848.93 0.9005068147
|
||||
229287.25 0.0000000 1848.93 1504.70 166231.43 344.23 0.00 344.23 1848.93 0.8991656967
|
||||
228943.02 0.0000000 1848.93 1502.44 167733.86 346.49 0.00 346.49 1848.93 0.8978157777
|
||||
228596.53 0.0000000 1848.93 1500.16 169234.03 348.76 0.00 348.76 1848.93 0.8964569998
|
||||
228247.77 0.0000000 1848.93 1497.88 170731.91 351.05 0.00 351.05 1848.93 0.8950893049
|
||||
227896.72 0.0000000 1848.93 1495.57 172227.48 353.35 0.00 353.35 1848.93 0.8937126346
|
||||
227543.37 0.0000000 1848.93 1493.25 173720.73 355.67 0.00 355.67 1848.93 0.8923269298
|
||||
227187.69 0.0000000 1848.93 1490.92 175211.65 358.01 0.00 358.01 1848.93 0.8909321314
|
||||
226829.69 0.0000000 1848.93 1488.57 176700.22 360.36 0.00 360.36 1848.93 0.8895281796
|
||||
226469.33 0.0000000 1848.93 1486.20 178186.43 362.72 0.00 362.72 1848.93 0.8881150143
|
||||
226106.61 0.0000000 1848.93 1483.82 179670.25 365.10 0.00 365.10 1848.93 0.8866925752
|
||||
225741.50 0.0000000 1848.93 1481.43 181151.68 367.50 0.00 367.50 1848.93 0.8852608013
|
||||
225374.01 0.0000000 1848.93 1479.02 182630.70 369.91 0.00 369.91 1848.93 0.8838196314
|
||||
225004.10 0.0000000 1848.93 1476.59 184107.28 372.34 0.00 372.34 1848.93 0.8823690038
|
||||
224631.76 0.0000000 1848.93 1474.15 185581.43 374.78 0.00 374.78 1848.93 0.8809088565
|
||||
224256.98 0.0000000 1848.93 1471.69 187053.12 377.24 0.00 377.24 1848.93 0.8794391269
|
||||
223879.74 0.0000000 1848.93 1469.21 188522.33 379.72 0.00 379.72 1848.93 0.8779597523
|
||||
223500.02 0.0000000 1848.93 1466.72 189989.05 382.21 0.00 382.21 1848.93 0.8764706692
|
||||
223117.81 0.0000000 1848.93 1464.21 191453.26 384.72 0.00 384.72 1848.93 0.8749718140
|
||||
222733.10 0.0000000 1848.93 1461.69 192914.94 387.24 0.00 387.24 1848.93 0.8734631227
|
||||
222345.86 0.0000000 1848.93 1459.14 194374.09 389.78 0.00 389.78 1848.93 0.8719445305
|
||||
221956.07 0.0000000 1848.93 1456.59 195830.67 392.34 0.00 392.34 1848.93 0.8704159725
|
||||
221563.73 0.0000000 1848.93 1454.01 197284.69 394.91 0.00 394.91 1848.93 0.8688773834
|
||||
221168.82 0.0000000 1848.93 1451.42 198736.11 397.51 0.00 397.51 1848.93 0.8673286973
|
||||
220771.31 0.0000000 1848.93 1448.81 200184.92 400.12 0.00 400.12 1848.93 0.8657698480
|
||||
220371.20 0.0000000 1848.93 1446.19 201631.10 402.74 0.00 402.74 1848.93 0.8642007687
|
||||
219968.46 0.0000000 1848.93 1443.54 203074.65 405.38 0.00 405.38 1848.93 0.8626213923
|
||||
219563.07 0.0000000 1848.93 1440.88 204515.53 408.04 0.00 408.04 1848.93 0.8610316513
|
||||
219155.03 0.0000000 1848.93 1438.20 205953.74 410.72 0.00 410.72 1848.93 0.8594314776
|
||||
218744.30 0.0000000 1848.93 1435.51 207389.24 413.42 0.00 413.42 1848.93 0.8578208027
|
||||
218330.89 0.0000000 1848.93 1432.80 208822.04 416.13 0.00 416.13 1848.93 0.8561995578
|
||||
217914.76 0.0000000 1848.93 1430.07 210252.11 418.86 0.00 418.86 1848.93 0.8545676735
|
||||
217495.90 0.0000000 1848.93 1427.32 211679.42 421.61 0.00 421.61 1848.93 0.8529250799
|
||||
217074.29 0.0000000 1848.93 1424.55 213103.97 424.38 0.00 424.38 1848.93 0.8512717069
|
||||
216649.91 0.0000000 1848.93 1421.77 214525.74 427.16 0.00 427.16 1848.93 0.8496074835
|
||||
216222.75 0.0000000 1848.93 1418.96 215944.70 429.97 0.00 429.97 1848.93 0.8479323387
|
||||
215792.78 0.0000000 1848.93 1416.14 217360.84 432.79 0.00 432.79 1848.93 0.8462462008
|
||||
215359.99 0.0000000 1848.93 1413.30 218774.14 435.63 0.00 435.63 1848.93 0.8445489975
|
||||
214924.37 0.0000000 1848.93 1410.44 220184.58 438.49 0.00 438.49 1848.93 0.8428406564
|
||||
214485.88 0.0000000 1848.93 1407.56 221592.15 441.36 0.00 441.36 1848.93 0.8411211043
|
||||
214044.52 0.0000000 1848.93 1404.67 222996.81 444.26 0.00 444.26 1848.93 0.8393902676
|
||||
213600.26 0.0000000 1848.93 1401.75 224398.56 447.18 0.00 447.18 1848.93 0.8376480723
|
||||
213153.08 0.0000000 1848.93 1398.82 225797.38 450.11 0.00 450.11 1848.93 0.8358944439
|
||||
212702.97 0.0000000 1848.93 1395.86 227193.24 453.06 0.00 453.06 1848.93 0.8341293072
|
||||
212249.91 0.0000000 1848.93 1392.89 228586.13 456.04 0.00 456.04 1848.93 0.8323525869
|
||||
211793.87 0.0000000 1848.93 1389.90 229976.03 459.03 0.00 459.03 1848.93 0.8305642068
|
||||
211334.84 0.0000000 1848.93 1386.88 231362.92 462.04 0.00 462.04 1848.93 0.8287640905
|
||||
210872.80 0.0000000 1848.93 1383.85 232746.77 465.07 0.00 465.07 1848.93 0.8269521609
|
||||
210407.73 0.0000000 1848.93 1380.80 234127.57 468.13 0.00 468.13 1848.93 0.8251283406
|
||||
209939.60 0.0000000 1848.93 1377.73 235505.30 471.20 0.00 471.20 1848.93 0.8232925514
|
||||
209468.40 0.0000000 1848.93 1374.64 236879.94 474.29 0.00 474.29 1848.93 0.8214447148
|
||||
208994.11 0.0000000 1848.93 1371.52 238251.46 477.40 0.00 477.40 1848.93 0.8195847518
|
||||
208516.71 0.0000000 1848.93 1368.39 239619.85 480.54 0.00 480.54 1848.93 0.8177125829
|
||||
208036.17 0.0000000 1848.93 1365.24 240985.09 483.69 0.00 483.69 1848.93 0.8158281278
|
||||
207552.48 0.0000000 1848.93 1362.06 242347.15 486.86 0.00 486.86 1848.93 0.8139313059
|
||||
207065.62 0.0000000 1848.93 1358.87 243706.02 490.06 0.00 490.06 1848.93 0.8120220362
|
||||
206575.56 0.0000000 1848.93 1355.65 245061.67 493.27 0.00 493.27 1848.93 0.8101002369
|
||||
206082.29 0.0000000 1848.93 1352.41 246414.09 496.51 0.00 496.51 1848.93 0.8081658258
|
||||
205585.77 0.0000000 1848.93 1349.16 247763.24 499.77 0.00 499.77 1848.93 0.8062187201
|
||||
205086.00 0.0000000 1848.93 1345.88 249109.12 503.05 0.00 503.05 1848.93 0.8042588365
|
||||
204582.95 0.0000000 1848.93 1342.58 250451.69 506.35 0.00 506.35 1848.93 0.8022860912
|
||||
204076.60 0.0000000 1848.93 1339.25 251790.95 509.67 0.00 509.67 1848.93 0.8003003998
|
||||
203566.93 0.0000000 1848.93 1335.91 253126.86 513.02 0.00 513.02 1848.93 0.7983016772
|
||||
203053.91 0.0000000 1848.93 1332.54 254459.40 516.39 0.00 516.39 1848.93 0.7962898380
|
||||
202537.52 0.0000000 1848.93 1329.15 255788.55 519.77 0.00 519.77 1848.93 0.7942647962
|
||||
202017.75 0.0000000 1848.93 1325.74 257114.29 523.19 0.00 523.19 1848.93 0.7922264650
|
||||
201494.56 0.0000000 1848.93 1322.31 258436.60 526.62 0.00 526.62 1848.93 0.7901747572
|
||||
200967.94 0.0000000 1848.93 1318.85 259755.45 530.07 0.00 530.07 1848.93 0.7881095852
|
||||
200437.87 0.0000000 1848.93 1315.37 261070.82 533.55 0.00 533.55 1848.93 0.7860308604
|
||||
199904.32 0.0000000 1848.93 1311.87 262382.70 537.05 0.00 537.05 1848.93 0.7839384940
|
||||
199367.26 0.0000000 1848.93 1308.35 263691.04 540.58 0.00 540.58 1848.93 0.7818323964
|
||||
198826.68 0.0000000 1848.93 1304.80 264995.84 544.13 0.00 544.13 1848.93 0.7797124776
|
||||
198282.55 0.0000000 1848.93 1301.23 266297.07 547.70 0.00 547.70 1848.93 0.7775786468
|
||||
197734.86 0.0000000 1848.93 1297.64 267594.71 551.29 0.00 551.29 1848.93 0.7754308128
|
||||
197183.57 0.0000000 1848.93 1294.02 268888.73 554.91 0.00 554.91 1848.93 0.7732688836
|
||||
196628.66 0.0000000 1848.93 1290.38 270179.10 558.55 0.00 558.55 1848.93 0.7710927667
|
||||
196070.10 0.0000000 1848.93 1286.71 271465.81 562.22 0.00 562.22 1848.93 0.7689023691
|
||||
195507.89 0.0000000 1848.93 1283.02 272748.83 565.91 0.00 565.91 1848.93 0.7666975969
|
||||
194941.98 0.0000000 1848.93 1279.31 274028.14 569.62 0.00 569.62 1848.93 0.7644783560
|
||||
194372.36 0.0000000 1848.93 1275.57 275303.71 573.36 0.00 573.36 1848.93 0.7622445513
|
||||
193799.00 0.0000000 1848.93 1271.81 276575.51 577.12 0.00 577.12 1848.93 0.7599960872
|
||||
193221.88 0.0000000 1848.93 1268.02 277843.53 580.91 0.00 580.91 1848.93 0.7577328676
|
||||
192640.97 0.0000000 1848.93 1264.21 279107.74 584.72 0.00 584.72 1848.93 0.7554547957
|
||||
192056.25 0.0000000 1848.93 1260.37 280368.11 588.56 0.00 588.56 1848.93 0.7531617738
|
||||
191467.69 0.0000000 1848.93 1256.51 281624.61 592.42 0.00 592.42 1848.93 0.7508537040
|
||||
190875.27 0.0000000 1848.93 1252.62 282877.23 596.31 0.00 596.31 1848.93 0.7485304876
|
||||
190278.97 0.0000000 1848.93 1248.71 284125.94 600.22 0.00 600.22 1848.93 0.7461920250
|
||||
189678.75 0.0000000 1848.93 1244.77 285370.71 604.16 0.00 604.16 1848.93 0.7438382162
|
||||
189074.58 0.0000000 1848.93 1240.80 286611.51 608.12 0.00 608.12 1848.93 0.7414689606
|
||||
188466.46 0.0000000 1848.93 1236.81 287848.32 612.12 0.00 612.12 1848.93 0.7390841567
|
||||
187854.34 0.0000000 1848.93 1232.79 289081.11 616.13 0.00 616.13 1848.93 0.7366837026
|
||||
187238.21 0.0000000 1848.93 1228.75 290309.86 620.18 0.00 620.18 1848.93 0.7342674954
|
||||
186618.04 0.0000000 1848.93 1224.68 291534.54 624.25 0.00 624.25 1848.93 0.7318354320
|
||||
185993.79 0.0000000 1848.93 1220.58 292755.13 628.34 0.00 628.34 1848.93 0.7293874081
|
||||
185365.45 0.0000000 1848.93 1216.46 293971.59 632.47 0.00 632.47 1848.93 0.7269233190
|
||||
184732.98 0.0000000 1848.93 1212.31 295183.90 636.62 0.00 636.62 1848.93 0.7244430594
|
||||
184096.36 0.0000000 1848.93 1208.13 296392.03 640.79 0.00 640.79 1848.93 0.7219465230
|
||||
183455.57 0.0000000 1848.93 1203.93 297595.96 645.00 0.00 645.00 1848.93 0.7194336032
|
||||
182810.57 0.0000000 1848.93 1199.69 298795.65 649.23 0.00 649.23 1848.93 0.7169041923
|
||||
182161.34 0.0000000 1848.93 1195.43 299991.09 653.49 0.00 653.49 1848.93 0.7143581821
|
||||
181507.84 0.0000000 1848.93 1191.15 301182.23 657.78 0.00 657.78 1848.93 0.7117954637
|
||||
180850.06 0.0000000 1848.93 1186.83 302369.06 662.10 0.00 662.10 1848.93 0.7092159276
|
||||
180187.96 0.0000000 1848.93 1182.48 303551.54 666.44 0.00 666.44 1848.93 0.7066194632
|
||||
179521.52 0.0000000 1848.93 1178.11 304729.65 670.82 0.00 670.82 1848.93 0.7040059595
|
||||
178850.70 0.0000000 1848.93 1173.71 305903.36 675.22 0.00 675.22 1848.93 0.7013753046
|
||||
178175.48 0.0000000 1848.93 1169.28 307072.64 679.65 0.00 679.65 1848.93 0.6987273862
|
||||
177495.83 0.0000000 1848.93 1164.82 308237.46 684.11 0.00 684.11 1848.93 0.6960620907
|
||||
176811.72 0.0000000 1848.93 1160.33 309397.78 688.60 0.00 688.60 1848.93 0.6933793043
|
||||
176123.12 0.0000000 1848.93 1155.81 310553.59 693.12 0.00 693.12 1848.93 0.6906789120
|
||||
175430.00 0.0000000 1848.93 1151.26 311704.85 697.67 0.00 697.67 1848.93 0.6879607985
|
||||
174732.34 0.0000000 1848.93 1146.68 312851.53 702.25 0.00 702.25 1848.93 0.6852248473
|
||||
174030.09 0.0000000 1848.93 1142.07 313993.60 706.85 0.00 706.85 1848.93 0.6824709414
|
||||
173323.24 0.0000000 1848.93 1137.43 315131.04 711.49 0.00 711.49 1848.93 0.6796989631
|
||||
172611.74 0.0000000 1848.93 1132.76 316263.80 716.16 0.00 716.16 1848.93 0.6769087936
|
||||
171895.58 0.0000000 1848.93 1128.06 317391.87 720.86 0.00 720.86 1848.93 0.6741003136
|
||||
171174.72 0.0000000 1848.93 1123.33 318515.20 725.59 0.00 725.59 1848.93 0.6712734030
|
||||
170449.12 0.0000000 1848.93 1118.57 319633.77 730.35 0.00 730.35 1848.93 0.6684279408
|
||||
169718.77 0.0000000 1848.93 1113.78 320747.55 735.15 0.00 735.15 1848.93 0.6655638052
|
||||
168983.62 0.0000000 1848.93 1108.96 321856.51 739.97 0.00 739.97 1848.93 0.6626808738
|
||||
168243.65 0.0000000 1848.93 1104.10 322960.61 744.83 0.00 744.83 1848.93 0.6597790231
|
||||
167498.82 0.0000000 1848.93 1099.21 324059.82 749.72 0.00 749.72 1848.93 0.6568581290
|
||||
166749.11 0.0000000 1848.93 1094.29 325154.11 754.64 0.00 754.64 1848.93 0.6539180666
|
||||
165994.47 0.0000000 1848.93 1089.34 326243.45 759.59 0.00 759.59 1848.93 0.6509587099
|
||||
165234.88 0.0000000 1848.93 1084.35 327327.80 764.57 0.00 764.57 1848.93 0.6479799326
|
||||
164470.31 0.0000000 1848.93 1079.34 328407.14 769.59 0.00 769.59 1848.93 0.6449816069
|
||||
163700.72 0.0000000 1848.93 1074.29 329481.42 774.64 0.00 774.64 1848.93 0.6419636048
|
||||
162926.08 0.0000000 1848.93 1069.20 330550.63 779.72 0.00 779.72 1848.93 0.6389257970
|
||||
162146.35 0.0000000 1848.93 1064.09 331614.71 784.84 0.00 784.84 1848.93 0.6358680537
|
||||
161361.51 0.0000000 1848.93 1058.93 332673.65 789.99 0.00 789.99 1848.93 0.6327902439
|
||||
160571.52 0.0000000 1848.93 1053.75 333727.40 795.18 0.00 795.18 1848.93 0.6296922359
|
||||
159776.34 0.0000000 1848.93 1048.53 334775.93 800.39 0.00 800.39 1848.93 0.6265738973
|
||||
158975.95 0.0000000 1848.93 1043.28 335819.21 805.65 0.00 805.65 1848.93 0.6234350946
|
||||
158170.30 0.0000000 1848.93 1037.99 336857.20 810.93 0.00 810.93 1848.93 0.6202756934
|
||||
157359.37 0.0000000 1848.93 1032.67 337889.87 816.26 0.00 816.26 1848.93 0.6170955588
|
||||
156543.11 0.0000000 1848.93 1027.31 338917.19 821.61 0.00 821.61 1848.93 0.6138945544
|
||||
155721.50 0.0000000 1848.93 1021.92 339939.11 827.00 0.00 827.00 1848.93 0.6106725435
|
||||
154894.49 0.0000000 1848.93 1016.50 340955.60 832.43 0.00 832.43 1848.93 0.6074293882
|
||||
154062.06 0.0000000 1848.93 1011.03 341966.64 837.89 0.00 837.89 1848.93 0.6041649496
|
||||
153224.17 0.0000000 1848.93 1005.53 342972.17 843.39 0.00 843.39 1848.93 0.6008790882
|
||||
152380.77 0.0000000 1848.93 1000.00 343972.17 848.93 0.00 848.93 1848.93 0.5975716633
|
||||
151531.85 0.0000000 1848.93 994.43 344966.60 854.50 0.00 854.50 1848.93 0.5942425334
|
||||
150677.35 0.0000000 1848.93 988.82 345955.42 860.11 0.00 860.11 1848.93 0.5908915561
|
||||
149817.24 0.0000000 1848.93 983.18 346938.59 865.75 0.00 865.75 1848.93 0.5875185880
|
||||
148951.49 0.0000000 1848.93 977.49 347916.09 871.43 0.00 871.43 1848.93 0.5841234848
|
||||
148080.06 0.0000000 1848.93 971.78 348887.86 877.15 0.00 877.15 1848.93 0.5807061013
|
||||
147202.90 0.0000000 1848.93 966.02 349853.88 882.91 0.00 882.91 1848.93 0.5772662911
|
||||
146320.00 0.0000000 1848.93 960.22 350814.10 888.70 0.00 888.70 1848.93 0.5738039073
|
||||
145431.29 0.0000000 1848.93 954.39 351768.50 894.53 0.00 894.53 1848.93 0.5703188015
|
||||
144536.76 0.0000000 1848.93 948.52 352717.02 900.40 0.00 900.40 1848.93 0.5668108247
|
||||
143636.36 0.0000000 1848.93 942.61 353659.63 906.31 0.00 906.31 1848.93 0.5632798268
|
||||
142730.04 0.0000000 1848.93 936.67 354596.30 912.26 0.00 912.26 1848.93 0.5597256567
|
||||
141817.78 0.0000000 1848.93 930.68 355526.98 918.25 0.00 918.25 1848.93 0.5561481624
|
||||
140899.53 0.0000000 1848.93 924.65 356451.63 924.27 0.00 924.27 1848.93 0.5525471908
|
||||
139975.26 0.0000000 1848.93 918.59 357370.22 930.34 0.00 930.34 1848.93 0.5489225879
|
||||
139044.92 0.0000000 1848.93 912.48 358282.70 936.44 0.00 936.44 1848.93 0.5452741984
|
||||
138108.48 0.0000000 1848.93 906.34 359189.04 942.59 0.00 942.59 1848.93 0.5416018664
|
||||
137165.89 0.0000000 1848.93 900.15 360089.19 948.78 0.00 948.78 1848.93 0.5379054348
|
||||
136217.11 0.0000000 1848.93 893.92 360983.11 955.00 0.00 955.00 1848.93 0.5341847452
|
||||
135262.11 0.0000000 1848.93 887.66 361870.77 961.27 0.00 961.27 1848.93 0.5304396387
|
||||
134300.84 0.0000000 1848.93 881.35 362752.12 967.58 0.00 967.58 1848.93 0.5266699549
|
||||
133333.26 0.0000000 1848.93 875.00 363627.12 973.93 0.00 973.93 1848.93 0.5228755326
|
||||
132359.33 0.0000000 1848.93 868.61 364495.73 980.32 0.00 980.32 1848.93 0.5190562093
|
||||
131379.01 0.0000000 1848.93 862.17 365357.90 986.75 0.00 986.75 1848.93 0.5152118218
|
||||
130392.26 0.0000000 1848.93 855.70 366213.60 993.23 0.00 993.23 1848.93 0.5113422055
|
||||
129399.03 0.0000000 1848.93 849.18 367062.78 999.75 0.00 999.75 1848.93 0.5074471948
|
||||
128399.29 0.0000000 1848.93 842.62 367905.40 1006.31 0.00 1006.31 1848.93 0.5035266231
|
||||
127392.98 0.0000000 1848.93 836.02 368741.42 1012.91 0.00 1012.91 1848.93 0.4995803226
|
||||
126380.07 0.0000000 1848.93 829.37 369570.79 1019.56 0.00 1019.56 1848.93 0.4956081245
|
||||
125360.51 0.0000000 1848.93 822.68 370393.47 1026.25 0.00 1026.25 1848.93 0.4916098589
|
||||
124334.27 0.0000000 1848.93 815.94 371209.41 1032.98 0.00 1032.98 1848.93 0.4875853547
|
||||
123301.28 0.0000000 1848.93 809.16 372018.58 1039.76 0.00 1039.76 1848.93 0.4835344397
|
||||
122261.52 0.0000000 1848.93 802.34 372820.92 1046.59 0.00 1046.59 1848.93 0.4794569405
|
||||
121214.93 0.0000000 1848.93 795.47 373616.39 1053.45 0.00 1053.45 1848.93 0.4753526828
|
||||
120161.48 0.0000000 1848.93 788.56 374404.95 1060.37 0.00 1060.37 1848.93 0.4712214908
|
||||
119101.11 0.0000000 1848.93 781.60 375186.55 1067.33 0.00 1067.33 1848.93 0.4670631879
|
||||
118033.79 0.0000000 1848.93 774.60 375961.15 1074.33 0.00 1074.33 1848.93 0.4628775962
|
||||
116959.46 0.0000000 1848.93 767.55 376728.70 1081.38 0.00 1081.38 1848.93 0.4586645365
|
||||
115878.08 0.0000000 1848.93 760.45 377489.15 1088.48 0.00 1088.48 1848.93 0.4544238286
|
||||
114789.60 0.0000000 1848.93 753.31 378242.45 1095.62 0.00 1095.62 1848.93 0.4501552910
|
||||
113693.98 0.0000000 1848.93 746.12 378988.57 1102.81 0.00 1102.81 1848.93 0.4458587412
|
||||
112591.17 0.0000000 1848.93 738.88 379727.45 1110.05 0.00 1110.05 1848.93 0.4415339953
|
||||
111481.12 0.0000000 1848.93 731.59 380459.04 1117.33 0.00 1117.33 1848.93 0.4371808682
|
||||
110363.79 0.0000000 1848.93 724.26 381183.31 1124.66 0.00 1124.66 1848.93 0.4327991737
|
||||
109239.12 0.0000000 1848.93 716.88 381900.19 1132.05 0.00 1132.05 1848.93 0.4283887244
|
||||
108107.08 0.0000000 1848.93 709.45 382609.64 1139.47 0.00 1139.47 1848.93 0.4239493315
|
||||
106967.61 0.0000000 1848.93 701.97 383311.61 1146.95 0.00 1146.95 1848.93 0.4194808050
|
||||
105820.65 0.0000000 1848.93 694.45 384006.06 1154.48 0.00 1154.48 1848.93 0.4149829539
|
||||
104666.17 0.0000000 1848.93 686.87 384692.93 1162.06 0.00 1162.06 1848.93 0.4104555856
|
||||
103504.12 0.0000000 1848.93 679.25 385372.18 1169.68 0.00 1169.68 1848.93 0.4058985065
|
||||
102334.44 0.0000000 1848.93 671.57 386043.75 1177.36 0.00 1177.36 1848.93 0.4013115215
|
||||
101157.08 0.0000000 1848.93 663.84 386707.59 1185.08 0.00 1185.08 1848.93 0.3966944344
|
||||
99972.00 0.0000000 1848.93 656.07 387363.66 1192.86 0.00 1192.86 1848.93 0.3920470477
|
||||
98779.14 0.0000000 1848.93 648.24 388011.90 1200.69 0.00 1200.69 1848.93 0.3873691626
|
||||
97578.45 0.0000000 1848.93 640.36 388652.26 1208.57 0.00 1208.57 1848.93 0.3826605788
|
||||
96369.88 0.0000000 1848.93 632.43 389284.68 1216.50 0.00 1216.50 1848.93 0.3779210949
|
||||
95153.38 0.0000000 1848.93 624.44 389909.13 1224.48 0.00 1224.48 1848.93 0.3731505082
|
||||
93928.90 0.0000000 1848.93 616.41 390525.54 1232.52 0.00 1232.52 1848.93 0.3683486145
|
||||
92696.38 0.0000000 1848.93 608.32 391133.86 1240.61 0.00 1240.61 1848.93 0.3635152083
|
||||
91455.77 0.0000000 1848.93 600.18 391734.03 1248.75 0.00 1248.75 1848.93 0.3586500830
|
||||
90207.02 0.0000000 1848.93 591.98 392326.02 1256.94 0.00 1256.94 1848.93 0.3537530302
|
||||
88950.08 0.0000000 1848.93 583.73 392909.75 1265.19 0.00 1265.19 1848.93 0.3488238405
|
||||
87684.89 0.0000000 1848.93 575.43 393485.19 1273.49 0.00 1273.49 1848.93 0.3438623031
|
||||
86411.39 0.0000000 1848.93 567.07 394052.26 1281.85 0.00 1281.85 1848.93 0.3388682055
|
||||
85129.54 0.0000000 1848.93 558.66 394610.92 1290.26 0.00 1290.26 1848.93 0.3338413342
|
||||
83839.28 0.0000000 1848.93 550.20 395161.12 1298.73 0.00 1298.73 1848.93 0.3287814740
|
||||
82540.54 0.0000000 1848.93 541.67 395702.79 1307.25 0.00 1307.25 1848.93 0.3236884085
|
||||
81233.29 0.0000000 1848.93 533.09 396235.88 1315.83 0.00 1315.83 1848.93 0.3185619198
|
||||
79917.46 0.0000000 1848.93 524.46 396760.34 1324.47 0.00 1324.47 1848.93 0.3134017885
|
||||
78592.99 0.0000000 1848.93 515.77 397276.11 1333.16 0.00 1333.16 1848.93 0.3082077938
|
||||
77259.83 0.0000000 1848.93 507.02 397783.13 1341.91 0.00 1341.91 1848.93 0.3029797135
|
||||
75917.92 0.0000000 1848.93 498.21 398281.34 1350.72 0.00 1350.72 1848.93 0.2977173240
|
||||
74567.20 0.0000000 1848.93 489.35 398770.68 1359.58 0.00 1359.58 1848.93 0.2924204000
|
||||
73207.62 0.0000000 1848.93 480.43 399251.11 1368.50 0.00 1368.50 1848.93 0.2870887149
|
||||
71839.12 0.0000000 1848.93 471.44 399722.55 1377.48 0.00 1377.48 1848.93 0.2817220407
|
||||
70461.64 0.0000000 1848.93 462.40 400184.96 1386.52 0.00 1386.52 1848.93 0.2763201477
|
||||
69075.12 0.0000000 1848.93 453.31 400638.26 1395.62 0.00 1395.62 1848.93 0.2708828047
|
||||
67679.49 0.0000000 1848.93 444.15 401082.41 1404.78 0.00 1404.78 1848.93 0.2654097792
|
||||
66274.71 0.0000000 1848.93 434.93 401517.34 1414.00 0.00 1414.00 1848.93 0.2599008370
|
||||
64860.71 0.0000000 1848.93 425.65 401942.99 1423.28 0.00 1423.28 1848.93 0.2543557423
|
||||
63437.44 0.0000000 1848.93 416.31 402359.29 1432.62 0.00 1432.62 1848.93 0.2487742579
|
||||
62004.82 0.0000000 1848.93 406.91 402766.20 1442.02 0.00 1442.02 1848.93 0.2431561451
|
||||
60562.80 0.0000000 1848.93 397.44 403163.64 1451.48 0.00 1451.48 1848.93 0.2375011633
|
||||
59111.31 0.0000000 1848.93 387.92 403551.56 1461.01 0.00 1461.01 1848.93 0.2318090708
|
||||
57650.30 0.0000000 1848.93 378.33 403929.89 1470.60 0.00 1470.60 1848.93 0.2260796239
|
||||
56179.71 0.0000000 1848.93 368.68 404298.57 1480.25 0.00 1480.25 1848.93 0.2203125775
|
||||
54699.46 0.0000000 1848.93 358.97 404657.54 1489.96 0.00 1489.96 1848.93 0.2145076849
|
||||
53209.50 0.0000000 1848.93 349.19 405006.72 1499.74 0.00 1499.74 1848.93 0.2086646976
|
||||
51709.76 0.0000000 1848.93 339.35 405346.07 1509.58 0.00 1509.58 1848.93 0.2027833658
|
||||
50200.18 0.0000000 1848.93 329.44 405675.51 1519.49 0.00 1519.49 1848.93 0.1968634377
|
||||
48680.69 0.0000000 1848.93 319.47 405994.98 1529.46 0.00 1529.46 1848.93 0.1909046601
|
||||
47151.23 0.0000000 1848.93 309.43 406304.41 1539.50 0.00 1539.50 1848.93 0.1849067780
|
||||
45611.73 0.0000000 1848.93 299.33 406603.73 1549.60 0.00 1549.60 1848.93 0.1788695348
|
||||
44062.13 0.0000000 1848.93 289.16 406892.89 1559.77 0.00 1559.77 1848.93 0.1727926722
|
||||
42502.36 0.0000000 1848.93 278.92 407171.81 1570.01 0.00 1570.01 1848.93 0.1666759302
|
||||
40932.36 0.0000000 1848.93 268.62 407440.43 1580.31 0.00 1580.31 1848.93 0.1605190471
|
||||
39352.05 0.0000000 1848.93 258.25 407698.68 1590.68 0.00 1590.68 1848.93 0.1543217594
|
||||
37761.37 0.0000000 1848.93 247.81 407946.49 1601.12 0.00 1601.12 1848.93 0.1480838020
|
||||
36160.25 0.0000000 1848.93 237.30 408183.79 1611.63 0.00 1611.63 1848.93 0.1418049081
|
||||
34548.63 0.0000000 1848.93 226.73 408410.51 1622.20 0.00 1622.20 1848.93 0.1354848089
|
||||
32926.42 0.0000000 1848.93 216.08 408626.59 1632.85 0.00 1632.85 1848.93 0.1291232340
|
||||
31293.58 0.0000000 1848.93 205.36 408831.96 1643.56 0.00 1643.56 1848.93 0.1227199113
|
||||
29650.01 0.0000000 1848.93 194.58 409026.54 1654.35 0.00 1654.35 1848.93 0.1162745668
|
||||
27995.67 0.0000000 1848.93 183.72 409210.26 1665.21 0.00 1665.21 1848.93 0.1097869247
|
||||
26330.46 0.0000000 1848.93 172.79 409383.05 1676.13 0.00 1676.13 1848.93 0.1032567075
|
||||
24654.33 0.0000000 1848.93 161.79 409544.85 1687.13 0.00 1687.13 1848.93 0.0966836357
|
||||
22967.19 0.0000000 1848.93 150.72 409695.57 1698.20 0.00 1698.20 1848.93 0.0900674281
|
||||
21268.99 0.0000000 1848.93 139.58 409835.15 1709.35 0.00 1709.35 1848.93 0.0834078017
|
||||
19559.64 0.0000000 1848.93 128.36 409963.51 1720.57 0.00 1720.57 1848.93 0.0767044715
|
||||
17839.07 0.0000000 1848.93 117.07 410080.57 1731.86 0.00 1731.86 1848.93 0.0699571507
|
||||
16107.22 0.0000000 1848.93 105.70 410186.28 1743.22 0.00 1743.22 1848.93 0.0631655505
|
||||
14363.99 0.0000000 1848.93 94.26 410280.54 1754.66 0.00 1754.66 1848.93 0.0563293806
|
||||
12609.33 0.0000000 1848.93 82.75 410363.29 1766.18 0.00 1766.18 1848.93 0.0494483482
|
||||
10843.15 0.0000000 1848.93 71.16 410434.45 1777.77 0.00 1777.77 1848.93 0.0425221591
|
||||
9065.38 0.0000000 1848.93 59.49 410493.94 1789.44 0.00 1789.44 1848.93 0.0355505168
|
||||
7275.95 0.0000000 1848.93 47.75 410541.69 1801.18 0.00 1801.18 1848.93 0.0285331231
|
||||
5474.77 0.0000000 1848.93 35.93 410577.62 1813.00 0.00 1813.00 1848.93 0.0214696778
|
||||
3661.77 0.0000000 1848.93 24.03 410601.65 1824.90 0.00 1824.90 1848.93 0.0143598787
|
||||
1836.87 0.0000000 1848.93 12.05 410613.70 1836.87 0.00 1836.87 1848.93 0.0072034215
|
||||
BIN
cashflow/CASHFLOW.ncb
Normal file
BIN
cashflow/CASHFLOW.ncb
Normal file
Binary file not shown.
79
cashflow/CLRRECT.HPP
Normal file
79
cashflow/CLRRECT.HPP
Normal file
@@ -0,0 +1,79 @@
|
||||
#ifndef _CASHFLOW_COLORRECT_HPP_
|
||||
#define _CASHFLOW_COLORRECT_HPP_
|
||||
#ifndef _ENGINE_RECT3D_HPP_
|
||||
#include <engine/rect3d.hpp>
|
||||
#endif
|
||||
|
||||
class ColorRect : public Rect3D
|
||||
{
|
||||
public:
|
||||
ColorRect(void);
|
||||
ColorRect(const ColorRect &someColorRect);
|
||||
ColorRect(const Rect3D &someRect3D,BYTE paletteIndex);
|
||||
ColorRect(const ColorRect &someColorRect,BYTE paletteIndex);
|
||||
virtual~ColorRect();
|
||||
ColorRect &operator=(const ColorRect &someColorRect);
|
||||
WORD operator==(const ColorRect &someColorRect);
|
||||
BYTE paletteIndex(void)const;
|
||||
void paletteIndex(BYTE paletteIndex);
|
||||
private:
|
||||
BYTE mPaletteIndex;
|
||||
};
|
||||
|
||||
inline
|
||||
ColorRect::ColorRect(void)
|
||||
: mPaletteIndex(0)
|
||||
{
|
||||
}
|
||||
|
||||
inline
|
||||
ColorRect::ColorRect(const ColorRect &someColorRect)
|
||||
{
|
||||
*this=someColorRect;
|
||||
}
|
||||
|
||||
inline
|
||||
ColorRect::ColorRect(const ColorRect &someColorRect,BYTE paletteIndex)
|
||||
: Rect3D((Rect3D&)someColorRect), mPaletteIndex(paletteIndex)
|
||||
{
|
||||
}
|
||||
|
||||
inline
|
||||
ColorRect::ColorRect(const Rect3D &someRect3D,BYTE paletteIndex)
|
||||
: mPaletteIndex(paletteIndex)
|
||||
{
|
||||
(Rect3D&)*this=(Rect3D&)someRect3D;
|
||||
}
|
||||
|
||||
inline
|
||||
ColorRect::~ColorRect()
|
||||
{
|
||||
}
|
||||
|
||||
inline
|
||||
ColorRect &ColorRect::operator=(const ColorRect &someColorRect)
|
||||
{
|
||||
(Rect3D&)*this=(Rect3D&)someColorRect;
|
||||
paletteIndex(someColorRect.paletteIndex());
|
||||
return *this;
|
||||
}
|
||||
|
||||
inline
|
||||
WORD ColorRect::operator==(const ColorRect &someColorRect)
|
||||
{
|
||||
return ((Rect3D&)*this==(Rect3D&)someColorRect&&
|
||||
paletteIndex()==someColorRect.paletteIndex());
|
||||
}
|
||||
|
||||
inline
|
||||
BYTE ColorRect::paletteIndex(void)const
|
||||
{
|
||||
return mPaletteIndex;
|
||||
}
|
||||
|
||||
inline
|
||||
void ColorRect::paletteIndex(BYTE paletteIndex)
|
||||
{
|
||||
mPaletteIndex=paletteIndex;
|
||||
}
|
||||
#endif
|
||||
20
cashflow/GRAPH3D.CPP
Normal file
20
cashflow/GRAPH3D.CPP
Normal file
@@ -0,0 +1,20 @@
|
||||
#include <cashflow/graph3d.hpp>
|
||||
|
||||
Graph3D::Graph3D(GUIWindow &someGUIWindow)
|
||||
: mlpGUIWindow(&someGUIWindow), DIB3D(someGUIWindow)
|
||||
{
|
||||
}
|
||||
|
||||
Graph3D::~Graph3D()
|
||||
{
|
||||
}
|
||||
|
||||
WORD Graph3D::viewPortWidth(void)const
|
||||
{
|
||||
return mlpGUIWindow->width();
|
||||
}
|
||||
|
||||
WORD Graph3D::viewPortHeight(void)const
|
||||
{
|
||||
return mlpGUIWindow->height();
|
||||
}
|
||||
29
cashflow/GRAPH3D.HPP
Normal file
29
cashflow/GRAPH3D.HPP
Normal file
@@ -0,0 +1,29 @@
|
||||
#ifndef _CASHFLOW_GRAPH3D_HPP_
|
||||
#define _CASHFLOW_GRAPH3D_HPP_
|
||||
#ifndef _COMMON_WINDOWS_HPP_
|
||||
#include <common/windows.hpp>
|
||||
#endif
|
||||
#ifndef _ENGINE_DIB3D_HPP_
|
||||
#include <engine/dib3d.hpp>
|
||||
#endif
|
||||
|
||||
class Graph3D : public DIB3D
|
||||
{
|
||||
public:
|
||||
Graph3D(GUIWindow &someGUIWindow);
|
||||
virtual ~Graph3D();
|
||||
protected:
|
||||
WORD viewPortWidth(void)const;
|
||||
WORD viewPortHeight(void)const;
|
||||
private:
|
||||
Graph3D &operator=(const Graph3D &someGraph3D);
|
||||
|
||||
GUIWindow *mlpGUIWindow;
|
||||
};
|
||||
|
||||
inline
|
||||
Graph3D &Graph3D::operator=(const Graph3D &/*someGraph3D*/)
|
||||
{ // private implementation
|
||||
return *this;
|
||||
}
|
||||
#endif
|
||||
235
cashflow/GRAPHWND.CPP
Normal file
235
cashflow/GRAPHWND.CPP
Normal file
@@ -0,0 +1,235 @@
|
||||
#include <cashflow/graphwnd.hpp>
|
||||
#include <cashflow/graph3d.hpp>
|
||||
#include <cashflow/purecflo.hpp>
|
||||
#include <cashflow/clrrect.hpp>
|
||||
#include <engine/spacial.hpp>
|
||||
#include <engine/rect3d.hpp>
|
||||
#include <common/string.hpp>
|
||||
#include <common/rect.hpp>
|
||||
|
||||
char GraphWindow::smszClassName[]={"GraphWindow"};
|
||||
char GraphWindow::smszMenuName[]={""};
|
||||
|
||||
#pragma warning(disable:4355)
|
||||
GraphWindow::GraphWindow(GUIWindow &parentWindow,const Rect &winRect)
|
||||
{
|
||||
mPaintHandler.setCallback(this,&GraphWindow::paintHandler);
|
||||
mCreateHandler.setCallback(this,&GraphWindow::createHandler);
|
||||
mDestroyHandler.setCallback(this,&GraphWindow::destroyHandler);
|
||||
mKeyDownHandler.setCallback(this,&GraphWindow::keyDownHandler);
|
||||
mLeftButtonDownHandler.setCallback(this,&GraphWindow::leftButtonDownHandler);
|
||||
mDialogCodeHandler.setCallback(this,&GraphWindow::dialogCodeHandler);
|
||||
insertHandler(VectorHandler::PaintHandler,&mPaintHandler);
|
||||
insertHandler(VectorHandler::CreateHandler,&mCreateHandler);
|
||||
insertHandler(VectorHandler::DestroyHandler,&mDestroyHandler);
|
||||
insertHandler(VectorHandler::KeyDownHandler,&mKeyDownHandler);
|
||||
insertHandler(VectorHandler::LeftButtonDownHandler,&mLeftButtonDownHandler);
|
||||
insertHandler(VectorHandler::DialogCodeHandler,&mDialogCodeHandler);
|
||||
registerClass();
|
||||
createWindow(parentWindow,winRect);
|
||||
mGraph3D=new Graph3D(*this);
|
||||
mGraph3D.disposition(PointerDisposition::Delete);
|
||||
setPerspective();
|
||||
show(SW_SHOW);
|
||||
update();
|
||||
}
|
||||
|
||||
GraphWindow::GraphWindow(const GraphWindow &/*someGraphWindow*/)
|
||||
{ // private implementation
|
||||
}
|
||||
|
||||
GraphWindow::~GraphWindow()
|
||||
{
|
||||
removeHandler(VectorHandler::PaintHandler,&mPaintHandler);
|
||||
removeHandler(VectorHandler::CreateHandler,&mCreateHandler);
|
||||
removeHandler(VectorHandler::DestroyHandler,&mDestroyHandler);
|
||||
removeHandler(VectorHandler::KeyDownHandler,&mKeyDownHandler);
|
||||
removeHandler(VectorHandler::LeftButtonDownHandler,&mLeftButtonDownHandler);
|
||||
removeHandler(VectorHandler::DialogCodeHandler,&mDialogCodeHandler);
|
||||
}
|
||||
|
||||
void GraphWindow::registerClass(void)const
|
||||
{
|
||||
HINSTANCE hInstance(processInstance());
|
||||
WNDCLASS wndClass;
|
||||
|
||||
if(::GetClassInfo(hInstance,smszClassName,(WNDCLASS FAR*)&wndClass))return;
|
||||
wndClass.style =CS_HREDRAW|CS_VREDRAW|CS_DBLCLKS|CS_OWNDC;
|
||||
wndClass.lpfnWndProc =(WNDPROC)Window::WndProc;
|
||||
wndClass.cbClsExtra =0;
|
||||
wndClass.cbWndExtra =sizeof(GraphWindow*);
|
||||
wndClass.hInstance =hInstance;
|
||||
wndClass.hIcon =::LoadIcon(NULL,IDI_APPLICATION);
|
||||
wndClass.hCursor =::LoadCursor(NULL,IDC_ARROW);
|
||||
wndClass.hbrBackground =(HBRUSH)::GetStockObject(HOLLOW_BRUSH);
|
||||
wndClass.lpszMenuName =smszMenuName;
|
||||
wndClass.lpszClassName =smszClassName;
|
||||
::RegisterClass(&wndClass);
|
||||
assert(0!=::GetClassInfo(hInstance,smszClassName,(WNDCLASS FAR*)&wndClass));
|
||||
}
|
||||
|
||||
void GraphWindow::createWindow(GUIWindow &parentWindow,const Rect &winRect)
|
||||
{
|
||||
Window::createWindow(WS_EX_CLIENTEDGE,String(smszClassName),String(smszMenuName),
|
||||
WS_CHILD|WS_OVERLAPPED|WS_CLIPCHILDREN|WS_BORDER,winRect,
|
||||
parentWindow,(HMENU)103,processInstance(),(LPSTR)this);
|
||||
show(SW_SHOW);
|
||||
update();
|
||||
}
|
||||
|
||||
CallbackData::ReturnType GraphWindow::paintHandler(CallbackData &someCallbackData)
|
||||
{
|
||||
if(!mGraph3D.isOkay())return (CallbackData::ReturnType)FALSE;
|
||||
PaintInformation *pPaintInfo=(PaintInformation*)someCallbackData.lParam();
|
||||
mGraph3D->clearBits();
|
||||
for(int rectIndex=0;rectIndex<mGraphRects.size();rectIndex++)
|
||||
{
|
||||
ColorRect &colorRect=mGraphRects[rectIndex];
|
||||
mGraph3D->rectangle(colorRect,colorRect.paletteIndex());
|
||||
}
|
||||
mGraph3D->bitBlt((PureDevice&)*pPaintInfo);
|
||||
return (CallbackData::ReturnType)FALSE;
|
||||
}
|
||||
|
||||
CallbackData::ReturnType GraphWindow::createHandler(CallbackData &/*someCallbackData*/)
|
||||
{
|
||||
return (CallbackData::ReturnType)FALSE;
|
||||
}
|
||||
|
||||
CallbackData::ReturnType GraphWindow::leftButtonDownHandler(CallbackData &/*someCallbackData*/)
|
||||
{
|
||||
setFocus();
|
||||
return (CallbackData::ReturnType)FALSE;
|
||||
}
|
||||
|
||||
CallbackData::ReturnType GraphWindow::dialogCodeHandler(CallbackData &/*someCallbackData*/)
|
||||
{
|
||||
return (CallbackData::ReturnType)DLGC_WANTARROWS|DLGC_WANTCHARS;
|
||||
}
|
||||
|
||||
CallbackData::ReturnType GraphWindow::keyDownHandler(CallbackData &someCallbackData)
|
||||
{
|
||||
switch(someCallbackData.wParam())
|
||||
{
|
||||
case inKey :
|
||||
if(shiftKeyPressed())mGraph3D->cameraTwistDegrees(mGraph3D->cameraTwistDegrees()-ThetaDelta);
|
||||
mGraph3D->viewPlaneDistance(mGraph3D->viewPlaneDistance()+ViewDelta);
|
||||
invalidate(FALSE);
|
||||
break;
|
||||
case outKey :
|
||||
if(shiftKeyPressed())mGraph3D->cameraTwistDegrees(mGraph3D->cameraTwistDegrees()+ThetaDelta);
|
||||
mGraph3D->viewPlaneDistance(mGraph3D->viewPlaneDistance()-ViewDelta);
|
||||
invalidate(FALSE);
|
||||
break;
|
||||
case UpArrow :
|
||||
if(handleUpArrow())invalidate(FALSE);
|
||||
break;
|
||||
case DownArrow :
|
||||
if(handleDownArrow())invalidate(FALSE);
|
||||
break;
|
||||
case LeftArrow :
|
||||
if(handleLeftArrow())invalidate(FALSE);
|
||||
break;
|
||||
case RightArrow :
|
||||
if(handleRightArrow())invalidate(FALSE);
|
||||
break;
|
||||
}
|
||||
return (CallbackData::ReturnType)FALSE;
|
||||
}
|
||||
|
||||
CallbackData::ReturnType GraphWindow::destroyHandler(CallbackData &/*someCallbackData*/)
|
||||
{
|
||||
return (CallbackData::ReturnType)FALSE;
|
||||
}
|
||||
|
||||
void GraphWindow::showFlows(Block<PureCashFlow> &pureCashFlows,int baseMonths)
|
||||
{
|
||||
PureVector<int> vectorInt;
|
||||
|
||||
mGraphRects.remove();
|
||||
setPerspective();
|
||||
vectorInt.size(pureCashFlows.size());
|
||||
for(int itemIndex=0;itemIndex<pureCashFlows.size();itemIndex++)vectorInt[itemIndex]=int(pureCashFlows[itemIndex].totPrin());
|
||||
showFlows(pureCashFlows,baseMonths,vectorInt,32);
|
||||
for(itemIndex=0;itemIndex<pureCashFlows.size();itemIndex++)vectorInt[itemIndex]=int(pureCashFlows[itemIndex].netIntPay());
|
||||
showFlows(pureCashFlows,baseMonths,vectorInt,30,10);
|
||||
invalidate();
|
||||
}
|
||||
|
||||
void GraphWindow::showFlows(Block<PureCashFlow> &pureCashFlows,int baseMonths,PureVector<int> &vectorInt,BYTE paletteIndex,int zDepth)
|
||||
{
|
||||
PureVector<int> scrnInt;
|
||||
int widthAdjust(5);
|
||||
|
||||
clamp(vectorInt);
|
||||
WORD sizeFactor(((((float)width()-20)/(float)widthAdjust)/(float)baseMonths)*100.00);
|
||||
SpacialTransform resample;
|
||||
resample.transform(vectorInt,scrnInt,sizeFactor);
|
||||
for(int itemIndex=0,xPoint=widthAdjust;itemIndex<scrnInt.size();itemIndex++,xPoint+=widthAdjust)
|
||||
{
|
||||
Vector3D outerPlane(Point3D(xPoint,scrnInt[itemIndex]+1,zDepth),
|
||||
Point3D(xPoint+widthAdjust,scrnInt[itemIndex]+1,zDepth),
|
||||
Point3D(xPoint+widthAdjust,0,zDepth),
|
||||
Point3D(xPoint,0,zDepth));
|
||||
Rect3D rect3D(outerPlane,10);
|
||||
mGraphRects.insert(&ColorRect(rect3D,paletteIndex));
|
||||
}
|
||||
}
|
||||
|
||||
void GraphWindow::clamp(PureVector<int> &vectorInt)
|
||||
{
|
||||
float factor=0.00;
|
||||
int vectorMax;
|
||||
|
||||
if(!vectorInt.size())return;
|
||||
for(int itemIndex=0;itemIndex<vectorInt.size();itemIndex++)
|
||||
{
|
||||
if(!itemIndex)vectorMax=vectorInt[itemIndex];
|
||||
else if(vectorInt[itemIndex]>vectorMax)vectorMax=vectorInt[itemIndex];
|
||||
}
|
||||
factor=(1.00/(float)vectorMax);
|
||||
for(itemIndex=0;itemIndex<vectorInt.size();itemIndex++)vectorInt[itemIndex]=(float)vectorInt[itemIndex]*factor*100.00;
|
||||
}
|
||||
|
||||
WORD GraphWindow::handleUpArrow(void)
|
||||
{
|
||||
Point3D cameraPoint(mGraph3D->cameraPoint());
|
||||
cameraPoint.y(cameraPoint.y()+TurnDelta);
|
||||
mGraph3D->cameraPoint(cameraPoint);
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
WORD GraphWindow::handleDownArrow(void)
|
||||
{
|
||||
Point3D cameraPoint(mGraph3D->cameraPoint());
|
||||
cameraPoint.y(cameraPoint.y()-TurnDelta);
|
||||
mGraph3D->cameraPoint(cameraPoint);
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
WORD GraphWindow::handleLeftArrow(void)
|
||||
{
|
||||
Point3D cameraPoint(mGraph3D->cameraPoint());
|
||||
if(shiftKeyPressed())mGraph3D->cameraTwistDegrees(mGraph3D->cameraTwistDegrees()-ThetaDelta);
|
||||
else cameraPoint.x(cameraPoint.x()+TurnDelta);
|
||||
mGraph3D->cameraPoint(cameraPoint);
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
WORD GraphWindow::handleRightArrow(void)
|
||||
{
|
||||
Point3D cameraPoint(mGraph3D->cameraPoint());
|
||||
if(shiftKeyPressed())mGraph3D->cameraTwistDegrees(mGraph3D->cameraTwistDegrees()+ThetaDelta);
|
||||
else cameraPoint.x(cameraPoint.x()-TurnDelta);
|
||||
mGraph3D->cameraPoint(cameraPoint);
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
void GraphWindow::setPerspective(void)
|
||||
{
|
||||
mGraph3D->cameraTwistDegrees(134.64);
|
||||
mGraph3D->viewPlaneDistance(40);
|
||||
mGraph3D->cameraPoint(Point3D(-385,75,75));
|
||||
mGraph3D->focusPoint(Point3D(0,0,1));
|
||||
}
|
||||
|
||||
73
cashflow/GRAPHWND.HPP
Normal file
73
cashflow/GRAPHWND.HPP
Normal file
@@ -0,0 +1,73 @@
|
||||
#ifndef _CASHFLOW_GRAPHWINDOW_HPP_
|
||||
#define _CASHFLOW_GRAPHWINDOW_HPP_
|
||||
#ifndef _COMMON_WINDOW_HPP_
|
||||
#include <common/window.hpp>
|
||||
#endif
|
||||
#ifndef _COMMON_SMARTPOINTER_HPP_
|
||||
#include <common/pointer.hpp>
|
||||
#endif
|
||||
|
||||
template <class T>
|
||||
class Block;
|
||||
template <class T>
|
||||
class Callback;
|
||||
template <class T>
|
||||
class PureVector;
|
||||
class PureCashFlow;
|
||||
class Graph3D;
|
||||
class Rect3D;
|
||||
class ColorRect;
|
||||
|
||||
class GraphWindow : public Window
|
||||
{
|
||||
public:
|
||||
GraphWindow(GUIWindow &parentWindow,const Rect &winRect);
|
||||
virtual ~GraphWindow();
|
||||
void showFlows(Block<PureCashFlow> &pureCashFlows,int baseMonths);
|
||||
private:
|
||||
enum {MaxRotate=360,MinRotate=-360};
|
||||
enum {ThetaDelta=10,ViewDelta=5,TurnDelta=20};
|
||||
enum {LeftArrow=0x25,RightArrow=0x27,UpArrow=0x26,DownArrow=0x28,inKey=0x49,outKey=0x4F};
|
||||
GraphWindow(const GraphWindow &someGraphWindow);
|
||||
GraphWindow &operator=(const GraphWindow &someGraphWindow);
|
||||
void registerClass(void)const;
|
||||
void showFlows(Block<PureCashFlow> &pureCashFlows,int baseMonths,PureVector<int> &vectorInt,BYTE paletteIndex,int zDepth=0);
|
||||
void createWindow(GUIWindow &parentWindow,const Rect &winRect);
|
||||
void clamp(PureVector<int> &vectorInt);
|
||||
WORD handleLeftArrow(void);
|
||||
WORD handleRightArrow(void);
|
||||
WORD handleUpArrow(void);
|
||||
WORD handleDownArrow(void);
|
||||
void setPerspective(void);
|
||||
BOOL shiftKeyPressed(void)const;
|
||||
CallbackData::ReturnType paintHandler(CallbackData &someCallbackData);
|
||||
CallbackData::ReturnType createHandler(CallbackData &someCallbackData);
|
||||
CallbackData::ReturnType destroyHandler(CallbackData &someCallbackData);
|
||||
CallbackData::ReturnType keyDownHandler(CallbackData &someCallbackData);
|
||||
CallbackData::ReturnType leftButtonDownHandler(CallbackData &someCallbackData);
|
||||
CallbackData::ReturnType dialogCodeHandler(CallbackData &someCallbackData);
|
||||
|
||||
Callback<GraphWindow> mPaintHandler;
|
||||
Callback<GraphWindow> mCreateHandler;
|
||||
Callback<GraphWindow> mDestroyHandler;
|
||||
Callback<GraphWindow> mKeyDownHandler;
|
||||
Callback<GraphWindow> mLeftButtonDownHandler;
|
||||
Callback<GraphWindow> mDialogCodeHandler;
|
||||
SmartPointer<Graph3D> mGraph3D;
|
||||
Block<ColorRect> mGraphRects;
|
||||
static char smszClassName[];
|
||||
static char smszMenuName[];
|
||||
};
|
||||
|
||||
inline
|
||||
GraphWindow &GraphWindow::operator=(const GraphWindow &/*someGraphWindow*/)
|
||||
{ // private implementation
|
||||
return *this;
|
||||
}
|
||||
|
||||
inline
|
||||
BOOL GraphWindow::shiftKeyPressed(void)const
|
||||
{
|
||||
return ::GetKeyState(VK_SHIFT)&0x8000;
|
||||
}
|
||||
#endif
|
||||
22
cashflow/Irr.hpp
Normal file
22
cashflow/Irr.hpp
Normal file
@@ -0,0 +1,22 @@
|
||||
#ifndef _CASHFLOW_IRR_HPP_
|
||||
#define _CASHFLOW_IRR_HPP_
|
||||
#ifndef _COMMON_ARRAY_HPP_
|
||||
#include <common/array.hpp>
|
||||
#endif
|
||||
#ifndef _COMMON_MATH_HPP_
|
||||
#include <common/math.hpp>
|
||||
#endif
|
||||
|
||||
class IRR
|
||||
{
|
||||
public:
|
||||
static double irr(Array<double> &cashflows);
|
||||
static double npv(Array<double> &cashflows,double rate);
|
||||
static double pv(Array<double> &cashflows,double rate);
|
||||
static double pvD(Array<double> &cashflows,double rate);
|
||||
private:
|
||||
static double IRR_ERROR;
|
||||
static double IRR_ACCURACY;
|
||||
static int IRR_MAX_ITERATIONS;
|
||||
};
|
||||
#endif
|
||||
10
cashflow/MAIN.CPP
Normal file
10
cashflow/MAIN.CPP
Normal file
@@ -0,0 +1,10 @@
|
||||
#include <common/windows.hpp>
|
||||
#include <cashflow/calcdlg.hpp>
|
||||
|
||||
int PASCAL WinMain(HINSTANCE /*hInstance*/,HINSTANCE /*hPrevInstance*/,LPSTR /*lpszCmdLine*/,int /*nCmdShow*/)
|
||||
{
|
||||
CalcDlg calcDialog;
|
||||
calcDialog.createDialog((HWND)0);
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
153
cashflow/PASSTHRU.HPP
Normal file
153
cashflow/PASSTHRU.HPP
Normal file
@@ -0,0 +1,153 @@
|
||||
#ifndef _CASHFLOW_PUREPASSTHRU_HPP_
|
||||
#define _CASHFLOW_PUREPASSTHRU_HPP_
|
||||
#include <common/windows.hpp>
|
||||
|
||||
class PurePassThru
|
||||
{
|
||||
public:
|
||||
PurePassThru(void);
|
||||
PurePassThru(double issBal,double wac,double coupon,short wam,short origTerm,double psa);
|
||||
PurePassThru(const PurePassThru &somePurePassThru);
|
||||
~PurePassThru();
|
||||
PurePassThru &operator=(const PurePassThru &somePurePassThru);
|
||||
WORD size(void)const;
|
||||
double issBal(void)const;
|
||||
void issBal(double newIssBal);
|
||||
double wac(void)const;
|
||||
void wac(double newWAC);
|
||||
double coupon(void)const;
|
||||
void coupon(double newCoupon);
|
||||
short wam(void)const;
|
||||
void wam(short newWAM);
|
||||
short origTerm(void)const;
|
||||
void origTerm(short newOrigTerm);
|
||||
double psa(void)const;
|
||||
void psa(double newPSA);
|
||||
private:
|
||||
WORD mSanity;
|
||||
double mIssBal;
|
||||
double mWAC;
|
||||
double mCoupon;
|
||||
short mWAM;
|
||||
short mOrigTerm;
|
||||
double mPSA;
|
||||
};
|
||||
|
||||
#pragma warning(disable:4355)
|
||||
inline
|
||||
PurePassThru::PurePassThru(void)
|
||||
: mSanity(sizeof(*this)), mIssBal(0.00), mWAC(0.00), mCoupon(0.00), mWAM(0), mOrigTerm(0),
|
||||
mPSA(100.00)
|
||||
{
|
||||
}
|
||||
|
||||
inline
|
||||
PurePassThru::PurePassThru(const PurePassThru &somePurePassThru)
|
||||
: mSanity(sizeof(*this))
|
||||
{
|
||||
*this=somePurePassThru;
|
||||
}
|
||||
|
||||
inline
|
||||
PurePassThru::PurePassThru(double issBal,double wac,double coupon,short wam,short origTerm,double psa)
|
||||
: mSanity(sizeof(*this)), mIssBal(issBal), mWAC(wac), mCoupon(coupon), mWAM(wam),
|
||||
mOrigTerm(origTerm), mPSA(psa)
|
||||
{
|
||||
}
|
||||
#pragma warning(default:4355)
|
||||
|
||||
inline
|
||||
PurePassThru::~PurePassThru()
|
||||
{
|
||||
}
|
||||
|
||||
inline
|
||||
double PurePassThru::issBal(void)const
|
||||
{
|
||||
return mIssBal;
|
||||
}
|
||||
|
||||
inline
|
||||
void PurePassThru::issBal(double newIssBal)
|
||||
{
|
||||
mIssBal=newIssBal;
|
||||
}
|
||||
|
||||
inline
|
||||
double PurePassThru::wac(void)const
|
||||
{
|
||||
return mWAC;
|
||||
}
|
||||
|
||||
inline
|
||||
void PurePassThru::wac(double newWAC)
|
||||
{
|
||||
mWAC=newWAC;
|
||||
}
|
||||
|
||||
inline
|
||||
double PurePassThru::coupon(void)const
|
||||
{
|
||||
return mCoupon;
|
||||
}
|
||||
|
||||
inline
|
||||
void PurePassThru::coupon(double newCoupon)
|
||||
{
|
||||
mCoupon=newCoupon;
|
||||
}
|
||||
|
||||
inline
|
||||
short PurePassThru::wam(void)const
|
||||
{
|
||||
return mWAM;
|
||||
}
|
||||
|
||||
inline
|
||||
void PurePassThru::wam(short newWAM)
|
||||
{
|
||||
mWAM=newWAM;
|
||||
}
|
||||
|
||||
inline
|
||||
short PurePassThru::origTerm(void)const
|
||||
{
|
||||
return mOrigTerm;
|
||||
}
|
||||
|
||||
inline
|
||||
void PurePassThru::origTerm(short newOrigTerm)
|
||||
{
|
||||
mOrigTerm=newOrigTerm;
|
||||
}
|
||||
|
||||
inline
|
||||
double PurePassThru::psa(void)const
|
||||
{
|
||||
return mPSA;
|
||||
}
|
||||
|
||||
inline
|
||||
void PurePassThru::psa(double newPSA)
|
||||
{
|
||||
mPSA=newPSA;
|
||||
}
|
||||
|
||||
inline
|
||||
WORD PurePassThru::size(void)const
|
||||
{
|
||||
return mSanity;
|
||||
}
|
||||
|
||||
inline
|
||||
PurePassThru &PurePassThru::operator=(const PurePassThru &somePurePassThru)
|
||||
{
|
||||
issBal(somePurePassThru.issBal());
|
||||
wac(somePurePassThru.wac());
|
||||
coupon(somePurePassThru.coupon());
|
||||
wam(somePurePassThru.wam());
|
||||
origTerm(somePurePassThru.origTerm());
|
||||
psa(somePurePassThru.psa());
|
||||
return *this;
|
||||
}
|
||||
#endif
|
||||
63
cashflow/PPYDLG.CPP
Normal file
63
cashflow/PPYDLG.CPP
Normal file
@@ -0,0 +1,63 @@
|
||||
#include <common/stdio.hpp>
|
||||
#include <common/string.hpp>
|
||||
#include <cashflow/ppydlg.hpp>
|
||||
#include <cashflow/cashdefs.hpp>
|
||||
|
||||
CallbackData::ReturnType PPYDlg::initHandler(CallbackData &/*someCallbackData*/)
|
||||
{
|
||||
String workString;
|
||||
|
||||
::sprintf(workString,"%d",mPrePay.frequency());
|
||||
setText(PPY_FREQUENCY,workString);
|
||||
::sprintf(workString,"%9.2lf",mPrePay.amount());
|
||||
setText(PPY_AMOUNT,workString);
|
||||
::sprintf(workString,"%9.2lf",mPrePay.increment());
|
||||
setText(PPY_INCREMENT,workString);
|
||||
return (CallbackData::ReturnType)FALSE;
|
||||
}
|
||||
|
||||
CallbackData::ReturnType PPYDlg::destroyHandler(CallbackData &/*someCallbackData*/)
|
||||
{
|
||||
return (CallbackData::ReturnType)FALSE;
|
||||
}
|
||||
|
||||
CallbackData::ReturnType PPYDlg::closeHandler(CallbackData &/*someCallbackData*/)
|
||||
{
|
||||
endDialog(TRUE);
|
||||
return (CallbackData::ReturnType)FALSE;
|
||||
}
|
||||
|
||||
CallbackData::ReturnType PPYDlg::commandHandler(CallbackData &someCallbackData)
|
||||
{
|
||||
switch(someCallbackData.wmCommandID())
|
||||
{
|
||||
case IDCANCEL :
|
||||
endDialog(FALSE);
|
||||
break;
|
||||
case IDOK :
|
||||
getPPYInfo();
|
||||
endDialog(TRUE);
|
||||
break;
|
||||
case PPY_FREQUENCY :
|
||||
break;
|
||||
case PPY_INCREMENT :
|
||||
break;
|
||||
case PPY_AMOUNT :
|
||||
break;
|
||||
}
|
||||
return (CallbackData::ReturnType)FALSE;
|
||||
}
|
||||
|
||||
void PPYDlg::getPPYInfo(void)
|
||||
{
|
||||
String workString;
|
||||
|
||||
getText(PPY_FREQUENCY,workString);
|
||||
mPrePay.frequency(::atoi((LPSTR)workString));
|
||||
getText(PPY_INCREMENT,workString);
|
||||
mPrePay.increment(::atoi((LPSTR)workString));
|
||||
getText(PPY_AMOUNT,workString);
|
||||
mPrePay.amount(::atof((LPSTR)workString));
|
||||
}
|
||||
|
||||
|
||||
60
cashflow/PPYDLG.HPP
Normal file
60
cashflow/PPYDLG.HPP
Normal file
@@ -0,0 +1,60 @@
|
||||
#ifndef _CASHFLOW_PPYDLG_HPP_
|
||||
#define _CASHFLOW_PPYDLG_HPP_
|
||||
#include <common/dwindow.hpp>
|
||||
#include <cashflow/prepay.hpp>
|
||||
|
||||
class PPYDlg : private DWindow
|
||||
{
|
||||
public:
|
||||
PPYDlg(void);
|
||||
virtual ~PPYDlg();
|
||||
WORD createDialog(HWND hParent,PrePay &prePay);
|
||||
private:
|
||||
CallbackData::ReturnType destroyHandler(CallbackData &someCallbackData);
|
||||
CallbackData::ReturnType initHandler(CallbackData &someCallbackData);
|
||||
CallbackData::ReturnType commandHandler(CallbackData &someCallbackData);
|
||||
CallbackData::ReturnType closeHandler(CallbackData &someCallbackData);
|
||||
void getPPYInfo(void);
|
||||
|
||||
Callback<PPYDlg> mCommandHandler;
|
||||
Callback<PPYDlg> mDestroyHandler;
|
||||
Callback<PPYDlg> mInitHandler;
|
||||
Callback<PPYDlg> mCloseHandler;
|
||||
PrePay mPrePay;
|
||||
};
|
||||
|
||||
#pragma warning(disable:4355)
|
||||
inline
|
||||
PPYDlg::PPYDlg(void)
|
||||
{
|
||||
mDestroyHandler.setCallback(this,&PPYDlg::destroyHandler);
|
||||
mInitHandler.setCallback(this,&PPYDlg::initHandler);
|
||||
mCommandHandler.setCallback(this,&PPYDlg::commandHandler);
|
||||
mCloseHandler.setCallback(this,&PPYDlg::closeHandler);
|
||||
insertHandler(VectorHandler::DestroyHandler,&mDestroyHandler);
|
||||
insertHandler(VectorHandler::InitDialogHandler,&mInitHandler);
|
||||
insertHandler(VectorHandler::CommandHandler,&mCommandHandler);
|
||||
insertHandler(VectorHandler::CloseHandler,&mCloseHandler);
|
||||
}
|
||||
#pragma warning(default:4355)
|
||||
|
||||
inline
|
||||
PPYDlg::~PPYDlg()
|
||||
{
|
||||
removeHandler(VectorHandler::DestroyHandler,&mDestroyHandler);
|
||||
removeHandler(VectorHandler::InitDialogHandler,&mInitHandler);
|
||||
removeHandler(VectorHandler::CommandHandler,&mCommandHandler);
|
||||
removeHandler(VectorHandler::CloseHandler,&mCloseHandler);
|
||||
}
|
||||
|
||||
inline
|
||||
WORD PPYDlg::createDialog(HWND hParent,PrePay &prePay)
|
||||
{
|
||||
WORD returnCode;
|
||||
mPrePay=prePay;
|
||||
HINSTANCE hInstance((HINSTANCE)::GetWindowLong(hParent,GWL_HINSTANCE));
|
||||
returnCode=::DialogBoxParam(hInstance,(LPSTR)"Prepayments",hParent,DWindow::DlgProc,(LPARAM)(DWindow*)this);
|
||||
if(returnCode)prePay=mPrePay;
|
||||
return returnCode;
|
||||
}
|
||||
#endif
|
||||
110
cashflow/PREPAY.HPP
Normal file
110
cashflow/PREPAY.HPP
Normal file
@@ -0,0 +1,110 @@
|
||||
#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
|
||||
87
cashflow/PURECFLO.CPP
Normal file
87
cashflow/PURECFLO.CPP
Normal file
@@ -0,0 +1,87 @@
|
||||
#include <stdio.h>
|
||||
#include <cashflow/purecflo.hpp>
|
||||
#include <common/block.hpp>
|
||||
|
||||
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<String> &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);
|
||||
}
|
||||
203
cashflow/PURECFLO.HPP
Normal file
203
cashflow/PURECFLO.HPP
Normal file
@@ -0,0 +1,203 @@
|
||||
#ifndef _PURECASHFLOW_HPP_
|
||||
#define _PURECASHFLOW_HPP_
|
||||
#include <strstrea.h>
|
||||
#include <common/string.hpp>
|
||||
#include <common/windows.hpp>
|
||||
|
||||
class PureCashFlow
|
||||
{
|
||||
public:
|
||||
PureCashFlow(void);
|
||||
PureCashFlow(double beginBal,double smm,double mtgPay,double netIntPay,double grossIntPay,double schedPrinPay,double prepayment,double totPrin,double cashFlow,double factor);
|
||||
PureCashFlow(const PureCashFlow &somePureCashFlow);
|
||||
~PureCashFlow();
|
||||
void operator=(const PureCashFlow &somePureCashFlow);
|
||||
WORD operator==(const PureCashFlow &somePureCashFlow)const;
|
||||
strstream &operator>>(strstream &stream)const;
|
||||
void operator>>(String &someString)const;
|
||||
double beginBal(void)const;
|
||||
void beginBal(double newBeginBal);
|
||||
double smm(void)const;
|
||||
void smm(double newSMM);
|
||||
double mtgPay(void)const;
|
||||
void mtgPay(double newMtgPay);
|
||||
double netIntPay(void)const;
|
||||
void netIntPay(double newIntPay);
|
||||
double grossIntPay(void)const;
|
||||
void grossIntPay(double newGrossIntPay);
|
||||
double schedPrinPay(void)const;
|
||||
void schedPrinPay(double newSchedPrinPay);
|
||||
double prepayment(void)const;
|
||||
void prepayment(double newPrepayment);
|
||||
double totPrin(void)const;
|
||||
void totPrin(double newTotPrin);
|
||||
double cashFlow(void)const;
|
||||
void cashFlow(double newCashFlow);
|
||||
double factor(void)const;
|
||||
void factor(double newFactor);
|
||||
void itemStrings(Block<String> &strBlock);
|
||||
private:
|
||||
double mBeginBal;
|
||||
double mSMM;
|
||||
double mMtgPay;
|
||||
double mNetIntPay;
|
||||
double mGrossIntPay;
|
||||
double mSchedPrinPay;
|
||||
double mPrepayment;
|
||||
double mTotPrin;
|
||||
double mCashFlow;
|
||||
double mFactor;
|
||||
};
|
||||
|
||||
inline
|
||||
PureCashFlow::PureCashFlow(void)
|
||||
: mBeginBal(0.00), mSMM(0.00), mMtgPay(0.00), mNetIntPay(0.00), mGrossIntPay(0.00),
|
||||
mSchedPrinPay(0.00), mPrepayment(0.00), mTotPrin(0.00), mCashFlow(0.00), mFactor(0.00)
|
||||
{
|
||||
}
|
||||
|
||||
inline
|
||||
PureCashFlow::PureCashFlow(double beginBal,double smm,double mtgPay,
|
||||
double netIntPay,double grossIntPay,double schedPrinPay,
|
||||
double prepayment,double totPrin,double cashFlow,double factor)
|
||||
: mBeginBal(beginBal), mSMM(smm), mMtgPay(mtgPay), mNetIntPay(netIntPay),
|
||||
mGrossIntPay(grossIntPay), mSchedPrinPay(schedPrinPay), mPrepayment(prepayment),
|
||||
mTotPrin(totPrin), mCashFlow(cashFlow), mFactor(factor)
|
||||
{
|
||||
}
|
||||
|
||||
inline
|
||||
PureCashFlow::PureCashFlow(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)
|
||||
{
|
||||
}
|
||||
|
||||
inline
|
||||
PureCashFlow::~PureCashFlow()
|
||||
{
|
||||
}
|
||||
|
||||
inline
|
||||
double PureCashFlow::beginBal(void)const
|
||||
{
|
||||
return mBeginBal;
|
||||
}
|
||||
|
||||
inline
|
||||
void PureCashFlow::beginBal(double newBeginBal)
|
||||
{
|
||||
mBeginBal=newBeginBal;
|
||||
}
|
||||
|
||||
inline
|
||||
double PureCashFlow::smm(void)const
|
||||
{
|
||||
return mSMM;
|
||||
}
|
||||
|
||||
inline
|
||||
void PureCashFlow::smm(double newSMM)
|
||||
{
|
||||
mSMM=newSMM;
|
||||
}
|
||||
|
||||
inline
|
||||
double PureCashFlow::mtgPay(void)const
|
||||
{
|
||||
return mMtgPay;
|
||||
}
|
||||
|
||||
inline
|
||||
void PureCashFlow::mtgPay(double newMtgPay)
|
||||
{
|
||||
mMtgPay=newMtgPay;
|
||||
}
|
||||
|
||||
inline
|
||||
double PureCashFlow::netIntPay(void)const
|
||||
{
|
||||
return mNetIntPay;
|
||||
}
|
||||
|
||||
inline
|
||||
void PureCashFlow::netIntPay(double newNetIntPay)
|
||||
{
|
||||
mNetIntPay=newNetIntPay;
|
||||
}
|
||||
|
||||
inline
|
||||
double PureCashFlow::grossIntPay(void)const
|
||||
{
|
||||
return mGrossIntPay;
|
||||
}
|
||||
|
||||
inline
|
||||
void PureCashFlow::grossIntPay(double newGrossIntPay)
|
||||
{
|
||||
mGrossIntPay=newGrossIntPay;
|
||||
}
|
||||
|
||||
inline
|
||||
double PureCashFlow::schedPrinPay(void)const
|
||||
{
|
||||
return mSchedPrinPay;
|
||||
}
|
||||
|
||||
inline
|
||||
void PureCashFlow::schedPrinPay(double newSchedPrinPay)
|
||||
{
|
||||
mSchedPrinPay=newSchedPrinPay;
|
||||
}
|
||||
|
||||
inline
|
||||
double PureCashFlow::prepayment(void)const
|
||||
{
|
||||
return mPrepayment;
|
||||
}
|
||||
|
||||
inline
|
||||
void PureCashFlow::prepayment(double newPrepayment)
|
||||
{
|
||||
mPrepayment=newPrepayment;
|
||||
}
|
||||
|
||||
inline
|
||||
double PureCashFlow::totPrin(void)const
|
||||
{
|
||||
return mTotPrin;
|
||||
}
|
||||
|
||||
inline
|
||||
void PureCashFlow::totPrin(double newTotPrin)
|
||||
{
|
||||
mTotPrin=newTotPrin;
|
||||
}
|
||||
|
||||
inline
|
||||
double PureCashFlow::cashFlow(void)const
|
||||
{
|
||||
return mCashFlow;
|
||||
}
|
||||
|
||||
inline
|
||||
void PureCashFlow::cashFlow(double newCashFlow)
|
||||
{
|
||||
mCashFlow=newCashFlow;
|
||||
}
|
||||
|
||||
inline
|
||||
double PureCashFlow::factor(void)const
|
||||
{
|
||||
return mFactor;
|
||||
}
|
||||
|
||||
inline
|
||||
void PureCashFlow::factor(double newFactor)
|
||||
{
|
||||
mFactor=newFactor;
|
||||
}
|
||||
#endif
|
||||
82
cashflow/SCRAPS.TXT
Normal file
82
cashflow/SCRAPS.TXT
Normal file
@@ -0,0 +1,82 @@
|
||||
// ThreadMessage threadMessage(ThreadMessage::TM_USER,FooStart,0L);
|
||||
// if(!mhDisplay||!mlpLedDisplay)return;
|
||||
// if(mCounter>999)mCounter=0;
|
||||
// mlpLedDisplay->setNumber(mCounter++);
|
||||
// postMessage(threadMessage);
|
||||
|
||||
|
||||
#if 0
|
||||
void CalcDlg::generateFlows(void)
|
||||
{
|
||||
Block<PureCashFlow> cashFlows;
|
||||
PurePassThru passThru;
|
||||
CashFlow cashFlow;
|
||||
String trmString;
|
||||
String prnString;
|
||||
String cpnString;
|
||||
size_t numFlows;
|
||||
|
||||
getText(CALC_TERM,trmString);
|
||||
getText(CALC_PRINCIPAL,prnString);
|
||||
getText(CALC_COUPON,cpnString);
|
||||
if(trmString.isNull()||prnString.isNull()||cpnString.isNull()){::MessageBeep(0);return;}
|
||||
passThru.issBal(::atof((LPSTR)prnString));
|
||||
passThru.wac(::atof((LPSTR)cpnString));
|
||||
passThru.coupon(::atof((LPSTR)cpnString));
|
||||
passThru.wam(::atol((LPSTR)trmString));
|
||||
passThru.origTerm(::atol((LPSTR)trmString));
|
||||
passThru.psa(0.00);
|
||||
if(mPrePay.amount())cashFlow.generateCashFlows(passThru,cashFlows,mPrePay);
|
||||
else cashFlow.generateCashFlows(passThru,cashFlows);
|
||||
numFlows=cashFlows.size();
|
||||
mlpCalcSheet->clearData();
|
||||
mlpCalcSheet->setCurrentCell(1,1);
|
||||
CursorControl cursorControl;
|
||||
cursorControl.waitCursor(TRUE);
|
||||
for(short itemIndex=0;itemIndex<numFlows;itemIndex++)
|
||||
{
|
||||
Block<String> itemStrings;
|
||||
cashFlows[itemIndex].itemStrings(itemStrings);
|
||||
mlpCalcSheet->setCellData(itemIndex,IssBal,itemStrings[IssBal]);
|
||||
mlpCalcSheet->setCellData(itemIndex,SMM,itemStrings[SMM]);
|
||||
mlpCalcSheet->setCellData(itemIndex,MtgPay,itemStrings[MtgPay]);
|
||||
mlpCalcSheet->setCellData(itemIndex,NetIntPay,itemStrings[NetIntPay]);
|
||||
mlpCalcSheet->setCellData(itemIndex,GrossInt,itemStrings[GrossInt]);
|
||||
mlpCalcSheet->setCellData(itemIndex,SchPrn,itemStrings[SchPrn]);
|
||||
mlpCalcSheet->setCellData(itemIndex,Prepay,itemStrings[Prepay]);
|
||||
mlpCalcSheet->setCellData(itemIndex,TotPrin,itemStrings[TotPrin]);
|
||||
mlpCalcSheet->setCellData(itemIndex,Cashflow,itemStrings[Cashflow]);
|
||||
mlpCalcSheet->setCellData(itemIndex,Factor,itemStrings[Factor]);
|
||||
}
|
||||
cursorControl.waitCursor(FALSE);
|
||||
::SetFocus(mlpCalcSheet->getHandle());
|
||||
}
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
void GraphWindow::showFlows(Block<PureCashFlow> &pureCashFlows,PureVector<int> &vectorInt)
|
||||
{
|
||||
// PureVector<int> vectorInt;
|
||||
PureVector<int> scrnInt;
|
||||
int widthAdjust(5);
|
||||
int xPoint;
|
||||
|
||||
// vectorInt.size(pureCashFlows.size());
|
||||
// for(int itemIndex=0;itemIndex<pureCashFlows.size();itemIndex++)vectorInt[itemIndex]=int(pureCashFlows[itemIndex].totPrin());
|
||||
clamp(vectorInt);
|
||||
// WORD sizeFactor((((float)width()/(float)widthAdjust)/(float)vectorInt.size())*100.00);
|
||||
WORD sizeFactor(((((float)width()-20)/(float)widthAdjust)/(float)360.00)*100.00);
|
||||
SpacialTransform resample;
|
||||
resample.transform(vectorInt,scrnInt,sizeFactor);
|
||||
for(itemIndex=0,xPoint=widthAdjust;itemIndex<scrnInt.size();itemIndex++,xPoint+=widthAdjust)
|
||||
{
|
||||
Vector3D outerPlane(Point3D(xPoint,scrnInt[itemIndex]+1,0),
|
||||
Point3D(xPoint+widthAdjust,scrnInt[itemIndex]+1,0),
|
||||
Point3D(xPoint+widthAdjust,0,0),
|
||||
Point3D(xPoint,0,0));
|
||||
Rect3D rect3D(outerPlane,20);
|
||||
mGraphRects.insert(&rect3D);
|
||||
}
|
||||
invalidate();
|
||||
}
|
||||
24
cashflow/STDTMPL.CPP
Normal file
24
cashflow/STDTMPL.CPP
Normal file
@@ -0,0 +1,24 @@
|
||||
#ifndef _MSV_VER
|
||||
#define _EXPAND_BLOCK_TEMPLATES_
|
||||
#define _EXPAND_VECTOR_TEMPLATES_
|
||||
#include <common/block.hpp>
|
||||
#include <common/block.tpp>
|
||||
#include <common/pvector.hpp>
|
||||
#include <common/pvector.tpp>
|
||||
#include <common/point.hpp>
|
||||
#include <common/callback.hpp>
|
||||
#include <common/callback.tpp>
|
||||
#include <cashflow/purecflo.hpp>
|
||||
#include <cashflow/calcdlg.hpp>
|
||||
#include <cashflow/ppydlg.hpp>
|
||||
#include <cashflow/calcthrd.hpp>
|
||||
#include <thread/tcallbck.hpp>
|
||||
#include <thread/tcallbck.tpp>
|
||||
|
||||
typedef Block<PureCashFlow> a;
|
||||
typedef Callback<CalcDlg> b;
|
||||
typedef Callback<PPYDlg> c;
|
||||
typedef Block<CallbackPointer> d;
|
||||
typedef PureVector<Point> e;
|
||||
typedef ThreadCallback<CalcThread> f;
|
||||
#endif
|
||||
BIN
cashflow/TMP.RWS
Normal file
BIN
cashflow/TMP.RWS
Normal file
Binary file not shown.
209
cashflow/cashflow.001
Normal file
209
cashflow/cashflow.001
Normal file
@@ -0,0 +1,209 @@
|
||||
# Microsoft Developer Studio Project File - Name="cashflow" - Package Owner=<4>
|
||||
# Microsoft Developer Studio Generated Build File, Format Version 5.00
|
||||
# ** DO NOT EDIT **
|
||||
|
||||
# TARGTYPE "Win32 (x86) Application" 0x0101
|
||||
|
||||
CFG=cashflow - Win32 Release
|
||||
!MESSAGE This is not a valid makefile. To build this project using NMAKE,
|
||||
!MESSAGE use the Export Makefile command and run
|
||||
!MESSAGE
|
||||
!MESSAGE NMAKE /f "cashflow.mak".
|
||||
!MESSAGE
|
||||
!MESSAGE You can specify a configuration when running NMAKE
|
||||
!MESSAGE by defining the macro CFG on the command line. For example:
|
||||
!MESSAGE
|
||||
!MESSAGE NMAKE /f "cashflow.mak" CFG="cashflow - Win32 Release"
|
||||
!MESSAGE
|
||||
!MESSAGE Possible choices for configuration are:
|
||||
!MESSAGE
|
||||
!MESSAGE "cashflow - Win32 Release" (based on "Win32 (x86) Application")
|
||||
!MESSAGE "cashflow - Win32 Debug" (based on "Win32 (x86) Application")
|
||||
!MESSAGE
|
||||
|
||||
# Begin Project
|
||||
# PROP Scc_ProjName ""
|
||||
# PROP Scc_LocalPath ""
|
||||
CPP=cl.exe
|
||||
MTL=midl.exe
|
||||
RSC=rc.exe
|
||||
|
||||
!IF "$(CFG)" == "cashflow - Win32 Release"
|
||||
|
||||
# PROP BASE Use_MFC 0
|
||||
# PROP BASE Use_Debug_Libraries 0
|
||||
# PROP BASE Output_Dir ".\Release"
|
||||
# PROP BASE Intermediate_Dir ".\Release"
|
||||
# PROP BASE Target_Dir ""
|
||||
# PROP Use_MFC 0
|
||||
# PROP Use_Debug_Libraries 0
|
||||
# PROP Output_Dir ".\Release"
|
||||
# PROP Intermediate_Dir ".\Release"
|
||||
# PROP Target_Dir ""
|
||||
# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /YX /c
|
||||
# ADD CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /YX /FD /c
|
||||
# ADD BASE MTL /nologo /D "NDEBUG" /win32
|
||||
# ADD MTL /nologo /D "NDEBUG" /mktyplib203 /win32
|
||||
# ADD BASE RSC /l 0x409 /d "NDEBUG"
|
||||
# ADD RSC /l 0x409 /d "NDEBUG"
|
||||
BSC32=bscmake.exe
|
||||
# ADD BASE BSC32 /nologo
|
||||
# ADD BSC32 /nologo
|
||||
LINK32=link.exe
|
||||
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /machine:I386
|
||||
# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /machine:I386
|
||||
|
||||
!ELSEIF "$(CFG)" == "cashflow - Win32 Debug"
|
||||
|
||||
# PROP BASE Use_MFC 0
|
||||
# PROP BASE Use_Debug_Libraries 1
|
||||
# PROP BASE Output_Dir ".\Debug"
|
||||
# PROP BASE Intermediate_Dir ".\Debug"
|
||||
# PROP BASE Target_Dir ""
|
||||
# PROP Use_MFC 0
|
||||
# PROP Use_Debug_Libraries 1
|
||||
# PROP Output_Dir ".\msvcobj"
|
||||
# PROP Intermediate_Dir ".\msvcobj"
|
||||
# PROP Ignore_Export_Lib 0
|
||||
# PROP Target_Dir ""
|
||||
# ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /YX /c
|
||||
# ADD CPP /nologo /Zp1 /MTd /Z7 /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "__FLAT__" /D "STRICT" /Fp"\work\exe\msvc42.pch" /YX"windows.h" /FD /c
|
||||
# ADD BASE MTL /nologo /D "_DEBUG" /win32
|
||||
# ADD MTL /nologo /D "_DEBUG" /mktyplib203 /win32
|
||||
# ADD BASE RSC /l 0x409 /d "_DEBUG"
|
||||
# ADD RSC /l 0x409 /d "_DEBUG"
|
||||
BSC32=bscmake.exe
|
||||
# ADD BASE BSC32 /nologo
|
||||
# ADD BSC32 /nologo
|
||||
LINK32=link.exe
|
||||
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /debug /machine:I386
|
||||
# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib uuid.lib /nologo /subsystem:windows /debug /machine:I386 /out:"..\exe\cashflow.exe"
|
||||
# SUBTRACT LINK32 /pdb:none
|
||||
|
||||
!ENDIF
|
||||
|
||||
# Begin Target
|
||||
|
||||
# Name "cashflow - Win32 Release"
|
||||
# Name "cashflow - Win32 Debug"
|
||||
# Begin Group "Source Files"
|
||||
|
||||
# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;hpj;bat;for;f90"
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Calcdlg.cpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Calcthrd.cpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Cashflow.cpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Cashflow.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Cashflow.rc
|
||||
|
||||
!IF "$(CFG)" == "cashflow - Win32 Release"
|
||||
|
||||
!ELSEIF "$(CFG)" == "cashflow - Win32 Debug"
|
||||
|
||||
!ENDIF
|
||||
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=..\exe\fpsheet.lib
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\graph3d.cpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\graphwnd.cpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Main.cpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=..\exe\mscommon.lib
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=..\exe\msengine.lib
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=..\exe\msthread.lib
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Ppydlg.cpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Purecflo.cpp
|
||||
# End Source File
|
||||
# End Group
|
||||
# Begin Group "Header Files"
|
||||
|
||||
# PROP Default_Filter "h;hpp;hxx;hm;inl;fi;fd"
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Calcdlg.hpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Calcthrd.hpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Cashdefs.hpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Cashflow.hpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Clrrect.hpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Graph3d.hpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Graphwnd.hpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Passthru.hpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Ppydlg.hpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Prepay.hpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Purecflo.hpp
|
||||
# End Source File
|
||||
# End Group
|
||||
# Begin Group "Resource Files"
|
||||
|
||||
# PROP Default_Filter "ico;cur;bmp;dlg;rc2;rct;bin;cnt;rtf;gif;jpg;jpeg;jpe"
|
||||
# End Group
|
||||
# End Target
|
||||
# End Project
|
||||
199
cashflow/cashflow.dsp
Normal file
199
cashflow/cashflow.dsp
Normal file
@@ -0,0 +1,199 @@
|
||||
# Microsoft Developer Studio Project File - Name="cashflow" - Package Owner=<4>
|
||||
# Microsoft Developer Studio Generated Build File, Format Version 6.00
|
||||
# ** DO NOT EDIT **
|
||||
|
||||
# TARGTYPE "Win32 (x86) Application" 0x0101
|
||||
|
||||
CFG=cashflow - Win32 Release
|
||||
!MESSAGE This is not a valid makefile. To build this project using NMAKE,
|
||||
!MESSAGE use the Export Makefile command and run
|
||||
!MESSAGE
|
||||
!MESSAGE NMAKE /f "cashflow.mak".
|
||||
!MESSAGE
|
||||
!MESSAGE You can specify a configuration when running NMAKE
|
||||
!MESSAGE by defining the macro CFG on the command line. For example:
|
||||
!MESSAGE
|
||||
!MESSAGE NMAKE /f "cashflow.mak" CFG="cashflow - Win32 Release"
|
||||
!MESSAGE
|
||||
!MESSAGE Possible choices for configuration are:
|
||||
!MESSAGE
|
||||
!MESSAGE "cashflow - Win32 Release" (based on "Win32 (x86) Application")
|
||||
!MESSAGE "cashflow - Win32 Debug" (based on "Win32 (x86) Application")
|
||||
!MESSAGE
|
||||
|
||||
# Begin Project
|
||||
# PROP AllowPerConfigDependencies 0
|
||||
# PROP Scc_ProjName ""
|
||||
# PROP Scc_LocalPath ""
|
||||
CPP=cl.exe
|
||||
MTL=midl.exe
|
||||
RSC=rc.exe
|
||||
|
||||
!IF "$(CFG)" == "cashflow - Win32 Release"
|
||||
|
||||
# PROP BASE Use_MFC 0
|
||||
# PROP BASE Use_Debug_Libraries 0
|
||||
# PROP BASE Output_Dir ".\Release"
|
||||
# PROP BASE Intermediate_Dir ".\Release"
|
||||
# PROP BASE Target_Dir ""
|
||||
# PROP Use_MFC 0
|
||||
# PROP Use_Debug_Libraries 0
|
||||
# PROP Output_Dir ".\Release"
|
||||
# PROP Intermediate_Dir ".\Release"
|
||||
# PROP Target_Dir ""
|
||||
# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /YX /c
|
||||
# ADD CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /YX /FD /c
|
||||
# ADD BASE MTL /nologo /D "NDEBUG" /win32
|
||||
# ADD MTL /nologo /D "NDEBUG" /mktyplib203 /win32
|
||||
# ADD BASE RSC /l 0x409 /d "NDEBUG"
|
||||
# ADD RSC /l 0x409 /d "NDEBUG"
|
||||
BSC32=bscmake.exe
|
||||
# ADD BASE BSC32 /nologo
|
||||
# ADD BSC32 /nologo
|
||||
LINK32=link.exe
|
||||
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /machine:I386
|
||||
# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /machine:I386
|
||||
|
||||
!ELSEIF "$(CFG)" == "cashflow - Win32 Debug"
|
||||
|
||||
# PROP BASE Use_MFC 0
|
||||
# PROP BASE Use_Debug_Libraries 1
|
||||
# PROP BASE Output_Dir ".\Debug"
|
||||
# PROP BASE Intermediate_Dir ".\Debug"
|
||||
# PROP BASE Target_Dir ""
|
||||
# PROP Use_MFC 0
|
||||
# PROP Use_Debug_Libraries 1
|
||||
# PROP Output_Dir ".\msvcobj"
|
||||
# PROP Intermediate_Dir ".\msvcobj"
|
||||
# PROP Ignore_Export_Lib 0
|
||||
# PROP Target_Dir ""
|
||||
# ADD BASE CPP /nologo /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /YX /c
|
||||
# ADD CPP /nologo /MTd /Zi /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "__FLAT__" /D "STRICT" /Fp"\work\exe\msvc42.pch" /YX"windows.h" /FD /c
|
||||
# ADD BASE MTL /nologo /D "_DEBUG" /win32
|
||||
# ADD MTL /nologo /D "_DEBUG" /mktyplib203 /win32
|
||||
# ADD BASE RSC /l 0x409 /d "_DEBUG"
|
||||
# ADD RSC /l 0x409 /d "_DEBUG"
|
||||
BSC32=bscmake.exe
|
||||
# ADD BASE BSC32 /nologo
|
||||
# ADD BSC32 /nologo
|
||||
LINK32=link.exe
|
||||
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /debug /machine:I386
|
||||
# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib uuid.lib /nologo /subsystem:windows /debug /machine:I386 /out:"..\exe\cashflow.exe"
|
||||
# SUBTRACT LINK32 /pdb:none
|
||||
|
||||
!ENDIF
|
||||
|
||||
# Begin Target
|
||||
|
||||
# Name "cashflow - Win32 Release"
|
||||
# Name "cashflow - Win32 Debug"
|
||||
# Begin Group "Source Files"
|
||||
|
||||
# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;hpj;bat;for;f90"
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Calcdlg.cpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Calcthrd.cpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Cashflow.cpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Cashflow.h
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Cashflow.rc
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\graph3d.cpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\graphwnd.cpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\irr.cpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Main.cpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Ppydlg.cpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Purecflo.cpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=..\exe\msengine.lib
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=..\exe\msthread.lib
|
||||
# End Source File
|
||||
# End Group
|
||||
# Begin Group "Header Files"
|
||||
|
||||
# PROP Default_Filter "h;hpp;hxx;hm;inl;fi;fd"
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Calcdlg.hpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Calcthrd.hpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Cashdefs.hpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Cashflow.hpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Clrrect.hpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Graph3d.hpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Graphwnd.hpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Passthru.hpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Ppydlg.hpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Prepay.hpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\Purecflo.hpp
|
||||
# End Source File
|
||||
# End Group
|
||||
# Begin Group "Resource Files"
|
||||
|
||||
# PROP Default_Filter "ico;cur;bmp;dlg;rc2;rct;bin;cnt;rtf;gif;jpg;jpeg;jpe"
|
||||
# End Group
|
||||
# End Target
|
||||
# End Project
|
||||
104
cashflow/cflowlib.dsp
Normal file
104
cashflow/cflowlib.dsp
Normal file
@@ -0,0 +1,104 @@
|
||||
# Microsoft Developer Studio Project File - Name="cflowlib" - Package Owner=<4>
|
||||
# Microsoft Developer Studio Generated Build File, Format Version 6.00
|
||||
# ** DO NOT EDIT **
|
||||
|
||||
# TARGTYPE "Win32 (x86) Static Library" 0x0104
|
||||
|
||||
CFG=cflowlib - Win32 Debug
|
||||
!MESSAGE This is not a valid makefile. To build this project using NMAKE,
|
||||
!MESSAGE use the Export Makefile command and run
|
||||
!MESSAGE
|
||||
!MESSAGE NMAKE /f "cflowlib.mak".
|
||||
!MESSAGE
|
||||
!MESSAGE You can specify a configuration when running NMAKE
|
||||
!MESSAGE by defining the macro CFG on the command line. For example:
|
||||
!MESSAGE
|
||||
!MESSAGE NMAKE /f "cflowlib.mak" CFG="cflowlib - Win32 Debug"
|
||||
!MESSAGE
|
||||
!MESSAGE Possible choices for configuration are:
|
||||
!MESSAGE
|
||||
!MESSAGE "cflowlib - Win32 Release" (based on "Win32 (x86) Static Library")
|
||||
!MESSAGE "cflowlib - Win32 Debug" (based on "Win32 (x86) Static Library")
|
||||
!MESSAGE
|
||||
|
||||
# Begin Project
|
||||
# PROP AllowPerConfigDependencies 0
|
||||
# PROP Scc_ProjName ""
|
||||
# PROP Scc_LocalPath ""
|
||||
CPP=cl.exe
|
||||
RSC=rc.exe
|
||||
|
||||
!IF "$(CFG)" == "cflowlib - Win32 Release"
|
||||
|
||||
# PROP BASE Use_MFC 0
|
||||
# PROP BASE Use_Debug_Libraries 0
|
||||
# PROP BASE Output_Dir "Release"
|
||||
# PROP BASE Intermediate_Dir "Release"
|
||||
# PROP BASE Target_Dir ""
|
||||
# PROP Use_MFC 0
|
||||
# PROP Use_Debug_Libraries 0
|
||||
# PROP Output_Dir "Release"
|
||||
# PROP Intermediate_Dir "Release"
|
||||
# PROP Target_Dir ""
|
||||
# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_MBCS" /D "_LIB" /YX /FD /c
|
||||
# ADD CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_MBCS" /D "_LIB" /YX /FD /c
|
||||
# ADD BASE RSC /l 0x409 /d "NDEBUG"
|
||||
# ADD RSC /l 0x409 /d "NDEBUG"
|
||||
BSC32=bscmake.exe
|
||||
# ADD BASE BSC32 /nologo
|
||||
# ADD BSC32 /nologo
|
||||
LIB32=link.exe -lib
|
||||
# ADD BASE LIB32 /nologo
|
||||
# ADD LIB32 /nologo
|
||||
|
||||
!ELSEIF "$(CFG)" == "cflowlib - Win32 Debug"
|
||||
|
||||
# PROP BASE Use_MFC 0
|
||||
# PROP BASE Use_Debug_Libraries 1
|
||||
# PROP BASE Output_Dir "Debug"
|
||||
# PROP BASE Intermediate_Dir "Debug"
|
||||
# PROP BASE Target_Dir ""
|
||||
# PROP Use_MFC 0
|
||||
# PROP Use_Debug_Libraries 1
|
||||
# PROP Output_Dir "msvcobj"
|
||||
# PROP Intermediate_Dir "msvcobj"
|
||||
# PROP Target_Dir ""
|
||||
# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "_LIB" /YX /FD /GZ /c
|
||||
# ADD CPP /nologo /MTd /W1 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "_LIB" /D "STRICT" /D "__FLAT__" /YX /FD /GZ /c
|
||||
# ADD BASE RSC /l 0x409 /d "_DEBUG"
|
||||
# ADD RSC /l 0x409 /d "_DEBUG"
|
||||
BSC32=bscmake.exe
|
||||
# ADD BASE BSC32 /nologo
|
||||
# ADD BSC32 /nologo
|
||||
LIB32=link.exe -lib
|
||||
# ADD BASE LIB32 /nologo
|
||||
# ADD LIB32 /nologo /out:"..\exe\cflowlib.lib"
|
||||
|
||||
!ENDIF
|
||||
|
||||
# Begin Target
|
||||
|
||||
# Name "cflowlib - Win32 Release"
|
||||
# Name "cflowlib - Win32 Debug"
|
||||
# Begin Group "Source Files"
|
||||
|
||||
# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\CASHFLOW.CPP
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\irr.cpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\PURECFLO.CPP
|
||||
# End Source File
|
||||
# End Group
|
||||
# Begin Group "Header Files"
|
||||
|
||||
# PROP Default_Filter "h;hpp;hxx;hm;inl"
|
||||
# End Group
|
||||
# End Target
|
||||
# End Project
|
||||
29
cashflow/cflowlib.dsw
Normal file
29
cashflow/cflowlib.dsw
Normal file
@@ -0,0 +1,29 @@
|
||||
Microsoft Developer Studio Workspace File, Format Version 6.00
|
||||
# WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE!
|
||||
|
||||
###############################################################################
|
||||
|
||||
Project: "cflowlib"=.\cflowlib.dsp - Package Owner=<4>
|
||||
|
||||
Package=<5>
|
||||
{{{
|
||||
}}}
|
||||
|
||||
Package=<4>
|
||||
{{{
|
||||
}}}
|
||||
|
||||
###############################################################################
|
||||
|
||||
Global:
|
||||
|
||||
Package=<5>
|
||||
{{{
|
||||
}}}
|
||||
|
||||
Package=<3>
|
||||
{{{
|
||||
}}}
|
||||
|
||||
###############################################################################
|
||||
|
||||
BIN
cashflow/cflowlib.opt
Normal file
BIN
cashflow/cflowlib.opt
Normal file
Binary file not shown.
16
cashflow/cflowlib.plg
Normal file
16
cashflow/cflowlib.plg
Normal file
@@ -0,0 +1,16 @@
|
||||
<html>
|
||||
<body>
|
||||
<pre>
|
||||
<h1>Build Log</h1>
|
||||
<h3>
|
||||
--------------------Configuration: cflowlib - Win32 Debug--------------------
|
||||
</h3>
|
||||
<h3>Command Lines</h3>
|
||||
|
||||
|
||||
|
||||
<h3>Results</h3>
|
||||
cflowlib.lib - 0 error(s), 0 warning(s)
|
||||
</pre>
|
||||
</body>
|
||||
</html>
|
||||
89
cashflow/irr.cpp
Normal file
89
cashflow/irr.cpp
Normal file
@@ -0,0 +1,89 @@
|
||||
#include <cashflow/irr.hpp>
|
||||
|
||||
double IRR::IRR_ERROR=-1E30;
|
||||
int IRR::IRR_MAX_ITERATIONS=50;
|
||||
double IRR::IRR_ACCURACY=1.0E-5;
|
||||
|
||||
double IRR::irr(Array<double> &cashflows)
|
||||
{
|
||||
double x1=0.00;
|
||||
double x2=.20;
|
||||
double dx=0.00;
|
||||
double f1;
|
||||
double f2;
|
||||
double f;
|
||||
double rtb;
|
||||
double xmid;
|
||||
double fmid;
|
||||
int index;
|
||||
|
||||
// create initial bracket with root somewhere between bot,top
|
||||
f1=pv(cashflows,x1);
|
||||
f2=pv(cashflows,x2);
|
||||
for(index=0;index<IRR_MAX_ITERATIONS;index++)
|
||||
{
|
||||
if((f1*f2)<0.00)break;
|
||||
if(fabs(f1)<fabs(f2))
|
||||
{
|
||||
f1=pv(cashflows,x1+=1.6*(x1-x2));
|
||||
}
|
||||
else
|
||||
{
|
||||
f2=pv(cashflows,x2+=1.6*(x2-x1));
|
||||
}
|
||||
}
|
||||
if(f2*f1>0.00)return IRR_ERROR;
|
||||
f=pv(cashflows,x1);
|
||||
if(f<0.00)
|
||||
{
|
||||
rtb=x1;
|
||||
dx=x2-x1;
|
||||
}
|
||||
else
|
||||
{
|
||||
rtb=x2;
|
||||
dx=x1-x2;
|
||||
}
|
||||
for(index=0;index<IRR_MAX_ITERATIONS;index++)
|
||||
{
|
||||
dx*=.50;
|
||||
xmid=rtb+dx;
|
||||
fmid=pv(cashflows,xmid);
|
||||
if(fmid<=0.00)rtb=xmid;
|
||||
if((fabs(fmid)<IRR_ACCURACY)||(fabs(dx)<IRR_ACCURACY))
|
||||
{
|
||||
return xmid;
|
||||
}
|
||||
}
|
||||
return IRR_ERROR;
|
||||
}
|
||||
|
||||
double IRR::npv(Array<double> &cashflows,double rate)
|
||||
{
|
||||
double npv=0.00;
|
||||
for(int index=0;index<cashflows.size();index++)
|
||||
{
|
||||
npv+=cashflows[index]*pow(1+rate,index); // exp(-rate*(index+1)));
|
||||
}
|
||||
return npv;
|
||||
}
|
||||
|
||||
double IRR::pv(Array<double> &cashflows,double rate)
|
||||
{
|
||||
double pv=0.00;
|
||||
for(int index=0;index<cashflows.size();index++)
|
||||
{
|
||||
pv+=(cashflows[index]*exp(-rate*(index+1)));
|
||||
}
|
||||
return pv;
|
||||
}
|
||||
|
||||
double IRR::pvD(Array<double> &cashflows,double rate)
|
||||
{
|
||||
double pv=0.00;
|
||||
for(int index=0;index<cashflows.size();index++)
|
||||
{
|
||||
pv+=cashflows[index]/pow(1+rate,index+1);
|
||||
}
|
||||
return pv;
|
||||
}
|
||||
Reference in New Issue
Block a user