using System; using System.Text; using System.Runtime.InteropServices; using Cosmos.UserFrame; /*-----------------------------------------------------------------------------------------------*/ // 설 명 : POS 주변장치 입력 이벤트 관련클래스 // 작 성 자 : // 변경 이력 : /*-----------------------------------------------------------------------------------------------*/ namespace Cosmos.Common { /// /// POS 주변장치 입력 이벤트 관련클래스 /// public class PosOLEDevice { /// /// IC READER 입력 델리게이트 /// /// /// [UnmanagedFunctionPointer(CallingConvention.Cdecl)] public delegate void DelegateIcReader(int a, StringBuilder b); [UnmanagedFunctionPointer(CallingConvention.Cdecl)] public delegate void CallbackIc(int returnValue, StringBuilder returnData); //#20171016 IC리더기 펌웨어 업데이트 Start, srlee /// /// IC 리더기 펌웨어 다운로드 상태 확인 /// /// /// /// [UnmanagedFunctionPointer(CallingConvention.Cdecl)] public delegate void CallbackRegFunc(int progress, int total); //#20171016 IC리더기 펌웨어 업데이트 End, srlee /// /// 주변장치 입력 델리게이트 /// /// 주변장치형태 /// 데이터1 /// 데이터2 /// 데이터3 public delegate void DelegateOlePos(string sDevice, string sData1, string sData2, string sData3); /// /// 델리게이트 선언 변수 /// public static DelegateOlePos m_delegateOlePos = null; /// /// 델리게이트 이벤트 핸들 설정 /// /// public static void SetEventHandle(DelegateOlePos delegateOPOS) { try { m_delegateOlePos = delegateOPOS; } catch (Exception ex) { UserLog.WriteLogFile(UserCom.LOG_ERROR, System.Reflection.Assembly.GetExecutingAssembly().ManifestModule.Name, "PosOleDevice.SetEventHandle()", "Exception." + ex.Message); } } /// /// 델리게이트 이벤트 핸들 해제 /// public static void ReleaseEventHandle() { try { m_delegateOlePos = null; } catch (Exception ex) { UserLog.WriteLogFile(UserCom.LOG_ERROR, System.Reflection.Assembly.GetExecutingAssembly().ManifestModule.Name, "PosOleDevice.ReleaseEventHandle()", "Exception." + ex.Message); } } } }