//--------------------------------------------------------------------------- #ifndef FrmMainFH #define FrmMainFH //--------------------------------------------------------------------------- #include #include #include #include #include #include #include #include #include #include #include #include #include "IdAntiFreeze.hpp" #include "IdAntiFreezeBase.hpp" #include "IdBaseComponent.hpp" #include "IdComponent.hpp" #include "IdUDPBase.hpp" #include "IdUDPServer.hpp" //--------------------------------------------------------------------------- #include "AppGlobalF.h" #include "CDSCtlrF.h" #include "DbmThreadF.h" #include "DbmReadThreadF.h" //--------------------------------------------------------------------------- //--------------------------------------------------------------------------- class TVmsCommMain : public TForm { __published: // IDE-managed Components TTimer *tmrAppState; TToolBar *tobMenu; TToolButton *tbConnect; TToolButton *tbSeparator1; TToolButton *tbDisconnect; TToolButton *tbSeparator2; TToolButton *tbOptions; TToolButton *tbSeparator3; TPanel *plBottom; TPanel *plStateAction; TPanel *plStateComm; TPanel *plStateDb; TPanel *plTime; TPanel *Panel1; TPanel *pnlLog; TPanel *pnlController; TSplitter *Splitter1; TPanel *Panel16; TPanel *plThread; TPanel *plMemory; TPanel *plGdi; TPanel *plHandle; TPanel *Panel2; TImageList *ImageList1; TIdUDPServer *IdUDPCenterServer; TPanel *plStateLog; TPanel *plStateDbm; TPanel *plStateJob; TTimer *tmrProvide; TTimer *tmrRunProvide; TPanel *plRemain; TTimer *tmrDbRead; TPanel *plStateDbmRead; TPanel *pnlTraf; TTimer *tmrDbWrite; void __fastcall FormCreate(TObject *Sender); void __fastcall FormShow(TObject *Sender); void __fastcall FormCloseQuery(TObject *Sender, bool &CanClose); void __fastcall FormClose(TObject *Sender, TCloseAction &Action); void __fastcall tmrAppStateTimer(TObject *Sender); void __fastcall tbConnectClick(TObject *Sender); void __fastcall tbDisconnectClick(TObject *Sender); void __fastcall tbOptionsClick(TObject *Sender); void __fastcall Panel16DblClick(TObject *Sender); void __fastcall plStateDbDblClick(TObject *Sender); void __fastcall plStateActionDblClick(TObject *Sender); void __fastcall plTimeDblClick(TObject *Sender); void __fastcall tmrProvideTimer(TObject *Sender); void __fastcall plStateCommDblClick(TObject *Sender); void __fastcall tmrRunProvideTimer(TObject *Sender); void __fastcall plRemainDblClick(TObject *Sender); void __fastcall tmrDbReadTimer(TObject *Sender); void __fastcall pnlTrafDblClick(TObject *Sender); void __fastcall tmrDbWriteTimer(TObject *Sender); void __fastcall tobMenuDblClick(TObject *Sender); private: // User declarations bool FServerRun; //¼­¹ö ±âµ¿/Á¤Áö char m_tTimer[15]; /* Traffic Timer */ char m_szOnOffTimer[15]; /* ON/OFF Timer */ char m_szTraffTimer[15]; /* Traffic Timer */ TDateTime m_dtProgBoot; TDateTime m_dtChkDbAlive; // µ¥ÀÌÅͺ£À̽º ¿¬°á üũ ŸÀÌ¸Ó TDateTime m_dtChkVmsJob; // VMS ÀÛ¾÷ ¹× ÁÖ±âÀÛ¾÷ TDateTime m_dtProvider; // Á¤º¸Á¦°ø ŸÀÌ¸Ó TDateTime m_dtTrafProvider; // Åë½ÅÀ¸·Î ¼ö½ÅÇÑ ±³ÅëÁ¤º¸ ŸÀÌ¸Ó TDateTime m_dtTimeOut; int FUnitSttsHsMin; int FCtlrSttsHsMin; int FCtlrSttsReqMin; int FTimeSyncDay; int FTimeSyncMin; int FCur1MinComm; int FCur1MinRun; int FCur5Min; bool FOneMinCycle; int FCurrDay; int FCurrHour; int FCurrMin; int FCurrSec; int FCurrTimeSec; bool FFirstRunning; int FDbReadJob; int FDbWriteJob; DWORD FDbReadTick; DWORD FDbWriteTick; void __fastcall OnAppException(TObject *Sender, Exception *exception); bool __fastcall InitApplication(); void __fastcall LoadStuffingVms(); void __fastcall LoadVideoVms(); void __fastcall CommClose(); void __fastcall AbnormalTerminate(char* AMsg); bool __fastcall JobThreadStart(); void __fastcall JobThreadCheck(); void __fastcall JobThreadStop(); void __fastcall AutoClose(); void __fastcall TerminateApplication(); void __fastcall UpdateProcessStatePanel(); void __fastcall CheckCommState(); void __fastcall SendVmsTrafficProvide(int AType); void __fastcall SendTerminal(); int __fastcall SendVmsThreadMessage(BYTE *AVmsId, IPC_MSG_DATA *ARcvData, BYTE AOpCode, char *AData); bool __fastcall CheckBasisTime(char *p, int Cycle, int Basis); void __fastcall SendTimeSync(); void __fastcall CheckProvideTimeout(); bool __fastcall CheckResource(size_t MaxMemory, DWORD MaxHandle, DWORD MaxThread, DWORD MaxGdi); void __fastcall ResetProviderTimer(); void __fastcall RestartApplication(String AHangJobName); public: // User declarations __fastcall TVmsCommMain(TComponent* Owner); size_t FMemSize; void __fastcall OnWMUserMessage(TMessage &Msg); void __fastcall OnWMDbReadThreadMessage(TMessage &Msg); void __fastcall OnWMDbWriteThreadMessage(TMessage &Msg); void __fastcall OnUdpDataRecvMessage(TMessage &Msg); void __fastcall OnTcpThreadMessage(TMessage &Msg); void __fastcall OnPanelRefreshMessage(TMessage &Msg); BEGIN_MESSAGE_MAP MESSAGE_HANDLER(WM_USER, TMessage, OnWMUserMessage) MESSAGE_HANDLER(WM_DB_THREAD, TMessage, OnWMDbReadThreadMessage) MESSAGE_HANDLER(WM_DB_WRITE_THREAD, TMessage, OnWMDbWriteThreadMessage) MESSAGE_HANDLER(WM_CENTERCOMM_DATA_RECV, TMessage, OnUdpDataRecvMessage) MESSAGE_HANDLER(WM_TCP_THREAD, TMessage, OnTcpThreadMessage) MESSAGE_HANDLER(WM_PANEL_REFRESH, TMessage, OnPanelRefreshMessage) END_MESSAGE_MAP(TForm) }; //--------------------------------------------------------------------------- extern PACKAGE TVmsCommMain *VmsCommMain; //--------------------------------------------------------------------------- #endif