1 #ifndef _DRVIRTX_PRIV_H_ 2 #define _DRVIRTX_PRIV_H_ 3 4 5 6 #include "MsTypes.h" 7 #include "drv_IR_TX.h" 8 9 typedef enum { 10 MDrv_CMD_IR_TX_Trigger, 11 MDrv_CMD_IR_TX_SetStatus, 12 MDrv_CMD_IR_TX_SetMemStatus, 13 MDrv_CMD_IR_TX_SetClkDiv, 14 MDrv_CMD_IR_TX_SetDelayCycleTime, 15 MDrv_CMD_IR_TX_SetMemAddr, 16 MDrv_CMD_IR_TX_SetMemData, 17 MDrv_CMD_IR_TX_SetUnitValue, 18 MDrv_CMD_IR_TX_SetShotCount, 19 MDrv_CMD_IR_TX_Init, 20 MDrv_CMD_IR_TX_SetCarrierCount 21 } ir_txIoctlOpt; 22 23 24 typedef struct _IR_TX_RESOURCE_PRIVATE 25 { 26 MS_U32 Dummy; 27 }IR_TX_RESOURCE_PRIVATE; 28 29 30 typedef MS_BOOL (*IOCTL_IRTX_SETSTATUS)(MS_U16); 31 typedef MS_BOOL (*IOCTL_IRTX_SETMEMSTATUS)(MS_U16); 32 typedef MS_BOOL (*IOCTL_IRTX_SETCLKDIV)(MS_U8); 33 typedef MS_BOOL (*IOCTL_IRTX_SETDELAYCLKTIME)(MS_U16, MS_U16); 34 typedef MS_BOOL (*IOCTL_IRTX_SETMEMADDR)(MS_U16); 35 typedef MS_BOOL (*IOCTL_IRTX_SETMEMDATA)(MS_U16); 36 typedef MS_BOOL (*IOCTL_IRTX_SETUNITVALUE)(MS_U16, MS_U8); 37 typedef MS_BOOL (*IOCTL_IRTX_SETSHOTCOUNT)(MS_U16, MS_U16, MS_U8); 38 typedef MS_BOOL (*IOCTL_IRTX_INIT)(void); 39 typedef MS_BOOL (*IOCTL_IRTX_TRIGGER)(void); 40 typedef MS_BOOL (*IOCTL_IRTX_SETCARRIERCOUNT)(MS_U16); 41 42 typedef struct _IR_TX_INSTANT_PRIVATE 43 { 44 IOCTL_IRTX_SETSTATUS fpIRTXSetStatus; 45 IOCTL_IRTX_SETMEMSTATUS fpIRTXSetMemStatus; 46 IOCTL_IRTX_SETCLKDIV fpIRTXSetClkDiv; 47 IOCTL_IRTX_SETDELAYCLKTIME fpIRTXSetDelayCycleTime; 48 IOCTL_IRTX_SETMEMADDR fpIRTXSetMemAddr; 49 IOCTL_IRTX_SETMEMDATA fpIRTXSetMemData; 50 IOCTL_IRTX_SETUNITVALUE fpIRTXSetUnitValue; 51 IOCTL_IRTX_SETSHOTCOUNT fpIRTXSetShotCount; 52 IOCTL_IRTX_INIT fpIRTX_Init; 53 IOCTL_IRTX_TRIGGER fpIRTX_Trigger; 54 IOCTL_IRTX_SETCARRIERCOUNT fpIRTX_SetCarrierCount; 55 56 }IR_TX_INSTANT_PRIVATE; 57 58 void IR_TXRegisterToUtopia(FUtopiaOpen ModuleType); 59 MS_U32 IR_TXOpen(void** ppInstance, MS_U32 u32ModuleVersion, void* pAttribute); 60 MS_U32 IR_TXIoctl(void* pInstance, MS_U32 u32Cmd, void* pArgs); 61 MS_U32 IR_TXClose(void* pInstance); 62 63 64 MS_BOOL _MDrv_IR_TX_SetStatus(MS_U16 Status); 65 MS_BOOL _MDrv_IR_TX_SetMemStatus(MS_U16 Status); 66 MS_BOOL _MDrv_IR_TX_SetClkDiv(MS_U8 Div); 67 MS_BOOL _MDrv_IR_TX_SetDelayCycleTime(MS_U16 CycleTime_H, MS_U16 CycleTime_L); 68 MS_BOOL _MDrv_IR_TX_SetMemAddr(MS_U16 MemAddr); 69 MS_BOOL _MDrv_IR_TX_SetMemData(MS_U16 MemData); 70 MS_BOOL _MDrv_IR_TX_SetUnitValue(MS_U16 Unit_Value, MS_U8 Unit_Number); 71 MS_BOOL _MDrv_IR_TX_SetShotCount(MS_U16 H_ShotCount, MS_U16 L_ShotCount, MS_U8 Unit_Number); 72 MS_BOOL _MDrv_IR_TX_Init(void); 73 MS_BOOL _MDrv_IR_TX_Trigger(void); 74 MS_BOOL _MDrv_IR_TX_SetCarrierCount(MS_U16 Count); 75 #endif 76