using System; using System.Collections.Generic; using System.Text; using System.Runtime.InteropServices; using System.Windows.Forms; using System.Drawing; namespace FPER { // 사용자가 쓰는 이벤트 함수는 여기 클래스에서 모아둔다 - cyim public class _Event // cyim 2015.8.4 수신반을 위한 static 클래스 정리 { // 소켓통신중 수신버퍼 오류시 팝업창 출력 public delegate void SocketBufferError_Inform_Handler(string ErrorText); public event SocketBufferError_Inform_Handler SocketBufferError_Inform_Event; public void SocketBufferError_Inform_Write(string ErrorText) { if (SocketBufferError_Inform_Event != null) { SocketBufferError_Inform_Event(ErrorText); } } // 타수신기화재 팝업창 갱신 - 변경된 내용이 있다면 팝업창에서 알려주고 팝업창은 갱신한다 public delegate void EtcFirePopup_Update_Handler(string RECEIVER_ID); public event EtcFirePopup_Update_Handler EtcFirePopup_Update_Inform_Event; public void EtcFirePopup_Update_Inform_Write(string RECEIVER_ID) { if (EtcFirePopup_Update_Inform_Event != null) { EtcFirePopup_Update_Inform_Event(RECEIVER_ID); } } // 차단정보 팝업창 갱신 - 변경된 내용이 있다면 팝업창에서 알려주고 팝업창은 갱신한다 public delegate void CutInfoPopup_Update_Handler(); public event CutInfoPopup_Update_Handler CutInfoPopup_Update_Inform_Event; public void CutInfoPopup_Update_Inform_Write() { if (CutInfoPopup_Update_Inform_Event != null) { CutInfoPopup_Update_Inform_Event(); } } // 디버그뷰에 텍스트 추가 이벤트 (예시 : 프로그램 구동시 LOG 를 남긴다) public delegate void DebugView_SendMessage_Handler(string Data); public event DebugView_SendMessage_Handler DebugView_SendMessage_Event; public void DebugView_SendMessage_Write(string Data) { if (DebugView_SendMessage_Event != null) { DebugView_SendMessage_Event(Data); } } // 클라이언트 메세지 수신 이벤트 (예시 : 클라이언트로 접속한 소켓으로부터 수신이벤트 발생) public delegate void ClientSocketReceive_SendMessage_Handler(string Data); public event ClientSocketReceive_SendMessage_Handler ClientSocketReceive_SendMessage_Event; public void ClientSocketReceive_SendMessage_Write(string Data) { if (ClientSocketReceive_SendMessage_Event != null) { ClientSocketReceive_SendMessage_Event(Data); } } // 현재내역 강제로 갱신하는 이벤트 (예시 : 모니터데몬이 응답이 없는 경우가 발생할수 있다) public delegate void FormLogView_Update_SendMessage_Handler(); public event FormLogView_Update_SendMessage_Handler FormLogView_Update_SendMessage_Event; public void FormLogView_Update_SendMessage_Write() { if (FormLogView_Update_SendMessage_Event != null) { FormLogView_Update_SendMessage_Event(); } } // cyim 2015.7.6 레벨값 갱신 이벤트 추가 // 아날로그 감지기 레벨값 쓰기한 이후에 중계기상태보기 화면에 통보해야된다 public delegate void AnalogLevel_Update_SendMessage_Handler(MDIParent mdi); public event AnalogLevel_Update_SendMessage_Handler AnalogLevel_Update_SendMessage_Event; public void AnalogLevel_Update_SendMessage_Write(MDIParent mdi) { if (AnalogLevel_Update_SendMessage_Event != null) { AnalogLevel_Update_SendMessage_Event(mdi); } } // cyim 2015.7.30 수신반 이벤트 추가 (카운터 정보와 같이 업데이트에 필요한 경우 보냄) public delegate void FireDesk_Update_SendMessage_Handler(int id, string cmd, string type, int data); public event FireDesk_Update_SendMessage_Handler FireDesk_Update_SendMessage_Event; public void FireDesk_Update_SendMessage_Write(int id, string cmd, string type, int data) { if (FireDesk_Update_SendMessage_Event != null) { FireDesk_Update_SendMessage_Event(id, cmd, type, data); } } // cyim 2015.10.1 시간 동기화를 위해 시간정보를 셋팅한것을 메인에게 알리는 이벤트 public delegate void TimeSync_Setup_SendMessage_Handler(string Data); public event TimeSync_Setup_SendMessage_Handler TimeSync_Setup_SendMessage_Event; public void TimeSync_Setup_SendMessage_Write(string Data) { if (TimeSync_Setup_SendMessage_Event != null) { TimeSync_Setup_SendMessage_Event(Data); } } // 로그를 출력하는 이벤트 public delegate void Log_SendMessage_Handler(string Data); public static event Log_SendMessage_Handler Log_SendMessage_Event; public static void Log_SendMessage_Write(string Data) { if (Log_SendMessage_Event != null) { Log_SendMessage_Event(Data); } } public delegate void AnalogDetecter_SendMessage_Handler(CmdInfo cmd); public static event AnalogDetecter_SendMessage_Handler AnalogDetecter_SendMessage_Event; public static void AnalogDetecter_SendMessage_Write(CmdInfo cmd) { if (AnalogDetecter_SendMessage_Event != null) { AnalogDetecter_SendMessage_Event(cmd); } } } }