CARPLAY版本整理
This commit is contained in:
83
MXC_A27-PCB4.5-270T/lib/lib_rtos/XM_event.h
Normal file
83
MXC_A27-PCB4.5-270T/lib/lib_rtos/XM_event.h
Normal file
@ -0,0 +1,83 @@
|
||||
#ifndef XM_EVENT_H
|
||||
#define XM_EVENT_H
|
||||
|
||||
|
||||
|
||||
enum {
|
||||
XM_EVENT_FIRST = 0,
|
||||
XM_EVENT_KEYDOWN = 0,
|
||||
XM_EVENT_KEYUP,
|
||||
XM_EVENT_TOUCHDOWN,
|
||||
XM_EVENT_TOUCHUP,
|
||||
XM_EVENT_TOUCHMOVE,
|
||||
XM_EVENT_TEXTINPUT,
|
||||
|
||||
XM_EVENT_TIMER,
|
||||
XM_EVENT_LAST
|
||||
};
|
||||
|
||||
typedef struct XM_KeyboardEvent
|
||||
{
|
||||
unsigned int type; // KEYDOWN or KEYUP
|
||||
unsigned int timestamp; // In milliseconds
|
||||
unsigned int scancode;
|
||||
unsigned char press; // PRESSED or RELEASED
|
||||
unsigned char repeat; // Non-zero if this is a key repeat
|
||||
} XM_KeyboardEvent;
|
||||
|
||||
|
||||
typedef struct XM_TouchEvent
|
||||
{
|
||||
unsigned int type; // MOUSEMOTION
|
||||
unsigned int timestamp; // In milliseconds
|
||||
//unsigned int press; // PRESSED
|
||||
int x; /**< X coordinate, relative to window */
|
||||
int y; /**< Y coordinate, relative to window */
|
||||
int xrel; /**< The relative motion in the X direction */
|
||||
int yrel; /**< The relative motion in the Y direction */
|
||||
} XM_TouchEvent;
|
||||
|
||||
#define XM_TEXTINPUTEVENT_TEXT_SIZE (32)
|
||||
/**
|
||||
* \brief Keyboard text input event structure (event.text.*)
|
||||
*/
|
||||
typedef struct XM_TextInputEvent
|
||||
{
|
||||
unsigned int type; /**< ::SDL_TEXTINPUT */
|
||||
unsigned int timestamp; /**< In milliseconds, populated using SDL_GetTicks() */
|
||||
char text[XM_TEXTINPUTEVENT_TEXT_SIZE]; /**< The input text */
|
||||
} XM_TextInputEvent;
|
||||
|
||||
typedef struct _XM_EVENT {
|
||||
unsigned int type;
|
||||
union {
|
||||
XM_KeyboardEvent key;
|
||||
XM_TouchEvent tp;
|
||||
XM_TextInputEvent text;
|
||||
};
|
||||
} XM_EVENT;
|
||||
|
||||
// 投递触摸事件到事件消息队列
|
||||
// 返回值定义
|
||||
// 1 事件投递到事件缓冲队列成功
|
||||
// 0 事件投递到事件缓冲队列失败
|
||||
int XM_TpEventProc (unsigned int tp_event, unsigned int xPos, unsigned int yPos, unsigned int ticket);
|
||||
|
||||
// 投递按键事件到事件消息队列
|
||||
// scancode 扫描码
|
||||
// press 按键是否按下 1 按下 0 释放
|
||||
// repeat 是否重复键
|
||||
// 返回值定义
|
||||
// 1 事件投递到事件缓冲队列成功
|
||||
// 0 事件投递到事件缓冲队列失败
|
||||
int XM_KeyEventProc(unsigned int key_event, unsigned int scancode, unsigned char press, unsigned char repeat, unsigned int ticket);
|
||||
|
||||
// 投递UTF8字符串事件到事件消息队列
|
||||
// text UTF8编码的字符串, 以'\0'结束
|
||||
int XM_TextInputEventProc(const char *text, unsigned int ticket);
|
||||
|
||||
|
||||
// 等待外部事件
|
||||
int XM_WaitEvent (XM_EVENT *event, unsigned int timeout);
|
||||
|
||||
#endif
|
42
MXC_A27-PCB4.5-270T/lib/lib_rtos/fb_queue.h
Normal file
42
MXC_A27-PCB4.5-270T/lib/lib_rtos/fb_queue.h
Normal file
@ -0,0 +1,42 @@
|
||||
#ifndef _FB_QUEUE_H_
|
||||
#define _FB_QUEUE_H_
|
||||
|
||||
#if defined (__cplusplus)
|
||||
extern "C"{
|
||||
#endif
|
||||
|
||||
typedef struct _queue_s {
|
||||
struct _queue_s *prev;
|
||||
struct _queue_s *next;
|
||||
} queue_s;
|
||||
|
||||
typedef struct _fb_queue_s {
|
||||
void *prev;
|
||||
void *next;
|
||||
unsigned int fb_base;
|
||||
} fb_queue_s;
|
||||
|
||||
/* queue toolbox procedure */
|
||||
void queue_initialize (queue_s *queue);
|
||||
void queue_insert (queue_s *entry, queue_s *queue);
|
||||
void queue_delete (queue_s *entry);
|
||||
queue_s * queue_delete_next (queue_s *queue);
|
||||
int queue_empty (queue_s *queue);
|
||||
queue_s * queue_head (queue_s *queue);
|
||||
queue_s * queue_tail (queue_s *queue);
|
||||
queue_s * queue_next (queue_s *queue);
|
||||
queue_s * queue_prev (queue_s *queue);
|
||||
|
||||
void fb_queue_init (void);
|
||||
void fb_queue_exit (void);
|
||||
fb_queue_s *fb_queue_get_free_unit(void);
|
||||
void fb_queue_set_free (fb_queue_s *unit);
|
||||
void fb_queue_set_ready (fb_queue_s *unit);
|
||||
fb_queue_s *fb_queue_get_ready_unit(void);
|
||||
fb_queue_s *fb_queue_get_unit_from_base(unsigned int base);
|
||||
|
||||
#if defined (__cplusplus)
|
||||
}
|
||||
#endif /* end of __cplusplus */
|
||||
|
||||
#endif //_FB_QUEUE_H_
|
1020
MXC_A27-PCB4.5-270T/lib/lib_rtos/lib_rtos.c
Normal file
1020
MXC_A27-PCB4.5-270T/lib/lib_rtos/lib_rtos.c
Normal file
File diff suppressed because it is too large
Load Diff
495
MXC_A27-PCB4.5-270T/lib/lib_rtos/rtos.h
Normal file
495
MXC_A27-PCB4.5-270T/lib/lib_rtos/rtos.h
Normal file
@ -0,0 +1,495 @@
|
||||
//****************************************************************************
|
||||
//
|
||||
// Copyright (C) 2010 ShenZhen ExceedSpace
|
||||
//
|
||||
// Author ZhuoYongHong
|
||||
//
|
||||
// File name: rtos.h
|
||||
// constant<6E><74>macro, data structure<72><65>function protocol definition of lowlevel rtos interface
|
||||
//
|
||||
// Revision history
|
||||
//
|
||||
// 2011.09.08 ZhuoYongHong Initial version
|
||||
//
|
||||
//****************************************************************************
|
||||
#ifndef _XM_RTOS_H_
|
||||
#define _XM_RTOS_H_
|
||||
|
||||
#if defined (__cplusplus)
|
||||
extern "C"{
|
||||
#endif
|
||||
|
||||
#include <string.h> // required for memset() etc.
|
||||
#include <intrinsics.h>
|
||||
|
||||
#include "FreeRTOS.h"
|
||||
#include "semphr.h"
|
||||
#include "event_groups.h"
|
||||
#include "task.h"
|
||||
|
||||
|
||||
#ifndef OS_I8
|
||||
#define OS_I8 signed char
|
||||
#endif
|
||||
|
||||
#ifndef OS_U8
|
||||
#define OS_U8 unsigned char
|
||||
#endif
|
||||
|
||||
#ifndef OS_I16
|
||||
#define OS_I16 signed short
|
||||
#endif
|
||||
|
||||
#ifndef OS_U16
|
||||
#define OS_U16 unsigned short
|
||||
#endif
|
||||
|
||||
#ifndef OS_I32
|
||||
#define OS_I32 long
|
||||
#endif
|
||||
|
||||
#ifndef OS_U32
|
||||
#define OS_U32 unsigned OS_I32
|
||||
#endif
|
||||
|
||||
#ifndef OS_INT
|
||||
#define OS_INT int
|
||||
#endif
|
||||
|
||||
#ifndef OS_UINT
|
||||
#define OS_UINT unsigned OS_INT
|
||||
#endif
|
||||
|
||||
#ifndef OS_TIME
|
||||
#define OS_TIME int
|
||||
#endif
|
||||
|
||||
#ifndef OS_STAT
|
||||
#define OS_STAT OS_U8
|
||||
#endif
|
||||
|
||||
#ifndef OS_PRIO
|
||||
#define OS_PRIO OS_U8
|
||||
#endif
|
||||
|
||||
#ifndef OS_BOOL
|
||||
#define OS_BOOL OS_U8
|
||||
#endif
|
||||
|
||||
#define OS_ERR_ISR_INDEX (100 )
|
||||
#define OS_ERR_ISR_VECTOR (101 )
|
||||
#define OS_ERR_ISR_PRIO (102 )
|
||||
|
||||
|
||||
#define OS_ERR_STACK (120 )
|
||||
|
||||
#define OS_ERR_CSEMA_OVERFLOW (121 )
|
||||
|
||||
#define OS_ERR_INV_TASK (128 )
|
||||
#define OS_ERR_INV_TIMER (129 )
|
||||
#define OS_ERR_INV_MAILBOX (130 )
|
||||
#define OS_ERR_INV_CSEMA (132 )
|
||||
#define OS_ERR_INV_RSEMA (133 )
|
||||
|
||||
#define OS_ERR_MAILBOX_NOT1 (135 )
|
||||
|
||||
#define OS_ERR_MAILBOX_DELETE (136 )
|
||||
#define OS_ERR_CSEMA_DELETE (137 )
|
||||
#define OS_ERR_RSEMA_DELETE (138 )
|
||||
|
||||
#define OS_ERR_MAILBOX_NOT_IN_LIST (140 )
|
||||
#define OS_ERR_TASKLIST_CORRUPT (142 )
|
||||
|
||||
#define OS_ERR_UNUSE_BEFORE_USE (150 )
|
||||
#define OS_ERR_LEAVEREGION_BEFORE_ENTERREGION (151 )
|
||||
#define OS_ERR_LEAVEINT (152 )
|
||||
#define OS_ERR_DICNT (153 )
|
||||
#define OS_ERR_INTERRUPT_DISABLED (154 )
|
||||
#define OS_ERR_TASK_ENDS_WITHOUT_TERMINATE (155 )
|
||||
#define OS_ERR_RESOURCE_OWNER (156 )
|
||||
|
||||
#define OS_ERR_ILLEGAL_IN_ISR (160 )
|
||||
|
||||
#define OS_ERR_ILLEGAL_IN_TIMER (161 )
|
||||
|
||||
#define OS_ERR_ILLEGAL_OUT_ISR (162 )
|
||||
|
||||
#define OS_ERR_NOT_IN_ISR (163 ) //*** OS_EnterInterrupt() has been called, but CPU is not in ISR state
|
||||
#define OS_ERR_IN_ISR (164 ) //*** OS_EnterInterrupt() has not been called, but CPU is in ISR state
|
||||
|
||||
#define OS_ERR_INIT_NOT_CALLED (165 ) //*** OS_InitKern() was not called
|
||||
|
||||
#define OS_ERR_2USE_TASK (170 )
|
||||
#define OS_ERR_2USE_TIMER (171 )
|
||||
#define OS_ERR_2USE_MAILBOX (172 )
|
||||
#define OS_ERR_2USE_BSEMA (173 )
|
||||
#define OS_ERR_2USE_CSEMA (174 )
|
||||
#define OS_ERR_2USE_RSEMA (175 )
|
||||
#define OS_ERR_2USE_MEMF (176 )
|
||||
|
||||
#define OS_ERR_NESTED_RX_INT (180 )
|
||||
|
||||
#define OS_ERR_MEMF_INV (190 )
|
||||
#define OS_ERR_MEMF_INV_PTR (191 )
|
||||
#define OS_ERR_MEMF_PTR_FREE (192 )
|
||||
#define OS_ERR_MEMF_RELEASE (193 )
|
||||
#define OS_ERR_POOLADDR (194 )
|
||||
#define OS_ERR_BLOCKSIZE (195 )
|
||||
|
||||
#define OS_ERR_SUSPEND_TOO_OFTEN (200 )
|
||||
#define OS_ERR_RESUME_BEFORE_SUSPEND (201 )
|
||||
|
||||
#define OS_ERR_TASK_PRIORITY (202 )
|
||||
|
||||
#define OS_ERR_EVENTOBJ_INV (210 )
|
||||
#define OS_ERR_2USE_EVENTOBJ (211 )
|
||||
#define OS_ERR_EVENT_DELETE (212 )
|
||||
|
||||
|
||||
#define OS_ERR_NON_ALIGNED_INVALIDATE (230 ) // Cache invalidation needs to be cache line aligned
|
||||
|
||||
typedef union {
|
||||
int Dummy; // Make sure a full integer (32 bit on 32 bit CPUs) is used.
|
||||
struct {
|
||||
OS_U8 Region;
|
||||
OS_U8 DI;
|
||||
} Cnt;
|
||||
} OS_COUNTERS;
|
||||
|
||||
typedef struct OS_GLOBAL {
|
||||
OS_COUNTERS Counters;
|
||||
} OS_GLOBAL;
|
||||
|
||||
#define OS_Counters OS_Global.Counters
|
||||
|
||||
extern OS_GLOBAL OS_Global;
|
||||
|
||||
#if (__CPU_MODE__== 1) // if THUMB mode
|
||||
#define OS_INTERWORK __interwork
|
||||
|
||||
#define OS_DI() OS_DisableInt()
|
||||
#define OS_EI() OS_EnableInt()
|
||||
#else
|
||||
#define OS_INTERWORK
|
||||
|
||||
#define OS_DI() __set_CPSR(__get_CPSR() | (1uL << 7)) // Optimization for ARM mode
|
||||
#define OS_EI() __set_CPSR(__get_CPSR() & ~(1uL << 7))
|
||||
#endif
|
||||
|
||||
#if OS_DEBUG
|
||||
#define OS_ASSERT(Exp, ErrCode) { if (!(Exp)) OS_Error(ErrCode); }
|
||||
#else
|
||||
#define OS_ASSERT(Exp, ErrCode)
|
||||
#endif
|
||||
|
||||
#if 0
|
||||
#define OS_DICnt OS_Counters.Cnt.DI
|
||||
|
||||
#define OS_ASSERT_DICnt() OS_ASSERT(((OS_DICnt & 0xf0) == 0), OS_ERR_DICNT)
|
||||
|
||||
#define OS_IncDI() { OS_ASSERT_DICnt(); OS_DI(); OS_DICnt++; }
|
||||
#define OS_DecRI() { OS_ASSERT_DICnt(); if (--OS_DICnt==0) OS_EI(); }
|
||||
#define OS_RESTORE_I() { OS_ASSERT_DICnt(); if (OS_DICnt==0) OS_EI(); }
|
||||
#else
|
||||
#define OS_DICnt OS_Counters.Cnt.DI
|
||||
|
||||
#define OS_ASSERT_DICnt() OS_ASSERT(((OS_DICnt & 0xf0) == 0), OS_ERR_DICNT)
|
||||
|
||||
#define OS_IncDI() { OS_ASSERT_DICnt(); OS_DI(); OS_DICnt++; }
|
||||
#define OS_DecRI() { OS_ASSERT_DICnt(); if (--OS_DICnt==0) OS_EI(); }
|
||||
#define OS_RESTORE_I() { OS_ASSERT_DICnt(); if (OS_DICnt==0) OS_EI(); }
|
||||
|
||||
void OS_HandleTickEx ( void );
|
||||
#define OS_HandleTickEx FreeRTOS_Tick_Handler
|
||||
#endif
|
||||
|
||||
#define RTOS_ID_TASK 0x5441534B
|
||||
typedef struct OS_TASK OS_TASK;
|
||||
struct OS_TASK
|
||||
{
|
||||
StaticTask_t task;
|
||||
unsigned int dummy1[4];
|
||||
unsigned int id;
|
||||
TaskHandle_t handle;
|
||||
unsigned int dummy2[2];
|
||||
} ;
|
||||
|
||||
typedef void voidRoutine(void);
|
||||
typedef void OS_TIMERROUTINE(void);
|
||||
typedef void OS_TIMER_EX_ROUTINE(void *);
|
||||
|
||||
void OS_TICK_Config ( unsigned FractPerInt, unsigned FractPerTick );
|
||||
|
||||
|
||||
#ifndef OS_STACKPTR
|
||||
#define OS_STACKPTR
|
||||
#endif
|
||||
|
||||
#ifndef OS_ROM_DATA
|
||||
#define OS_ROM_DATA
|
||||
#endif
|
||||
|
||||
#define CTPARA_TIMESLICE ,2
|
||||
#define OS_CREATE_TASK_PARA_TS ,OS_UINT TimeSlice
|
||||
|
||||
#define OS_CREATETASK(pTask, Name, Hook, Priority, pStack) \
|
||||
OS_CreateTask (pTask, \
|
||||
Name, \
|
||||
Priority, \
|
||||
Hook, \
|
||||
(void OS_STACKPTR*)pStack, \
|
||||
sizeof(pStack) \
|
||||
CTPARA_TIMESLICE \
|
||||
)
|
||||
|
||||
#define OS_CREATETASK_EX(pTask, Name, Hook, Priority, pStack, pContext) \
|
||||
OS_CreateTaskEx (pTask, \
|
||||
Name, \
|
||||
Priority, \
|
||||
Hook, \
|
||||
(void OS_STACKPTR*)pStack, \
|
||||
sizeof(pStack) \
|
||||
CTPARA_TIMESLICE, \
|
||||
pContext \
|
||||
)
|
||||
|
||||
void OS_CreateTask ( OS_TASK * pTask,
|
||||
OS_ROM_DATA const char* Name,
|
||||
OS_U8 Priority,
|
||||
void (*pRoutine)(void),
|
||||
void OS_STACKPTR *pStack,
|
||||
OS_UINT StackSize
|
||||
OS_CREATE_TASK_PARA_TS
|
||||
);
|
||||
|
||||
#define OS_CREATE_TASK_PARA_NAME OS_ROM_DATA const char* Name,
|
||||
|
||||
void OS_CreateTaskEx ( OS_TASK * pTask,
|
||||
OS_CREATE_TASK_PARA_NAME
|
||||
OS_U8 Priority,
|
||||
void (*pRoutine)(void *),
|
||||
void OS_STACKPTR *pStack,
|
||||
OS_UINT StackSize
|
||||
OS_CREATE_TASK_PARA_TS,
|
||||
void * pContext
|
||||
);
|
||||
|
||||
|
||||
// Ends (terminates) a task.
|
||||
void OS_Terminate (OS_TASK* pTask);
|
||||
|
||||
OS_TASK* OS_GetpCurrentTask (void);
|
||||
|
||||
// Suspends the calling task until a specified time.
|
||||
// The calling task will be put into the TS_DELAY state until the time specified.
|
||||
// The OS_DelayUntil() function delays until the value of the time-variable OS_Time has reached a certain value. It
|
||||
// is very useful if you have to avoid accumulating delays.
|
||||
void OS_DelayUntil (int t);
|
||||
|
||||
|
||||
// Waits for the specified events for a given time, and clears the event memory after an event occurs.
|
||||
char OS_WaitEventTimed (char EventMask, OS_TIME TimeOut);
|
||||
|
||||
// Waits for one of the events specified in the bitmask and clears the event memory after an event occurs.
|
||||
// If none of the specified events are signaled, the task is suspended. The first of the specified events will wake the task.
|
||||
// These events are signaled by another task, a S/W timer or an interrupt handler. Any bit in the 8-bit event mask may
|
||||
// enable the corresponding event.
|
||||
char OS_WaitEvent (char EventMask);
|
||||
|
||||
// Waits for one of the events specified by the bitmask and clears only that event after it occurs.
|
||||
// Return value All masked events that have actually occurred.
|
||||
// If none of the specified events are signaled, the task is suspended. The first of the specified events will wake the task.
|
||||
// These events are signaled by another task, a S/W timer, or an interrupt handler. Any bit in the 8-bit event mask may
|
||||
// enable the corresponding event. All unmasked events remain unchanged.
|
||||
char OS_WaitSingleEvent (char EventMask);
|
||||
|
||||
// Signals event(s) to a specified task.
|
||||
// If the specified task is waiting for one of these events, it will be put in the READY state and activated according to the rules of the scheduler.
|
||||
void OS_SignalEvent (char Event, OS_TASK* pTask);
|
||||
|
||||
// Returns a list of events that have occurred for a specified task.
|
||||
// The event mask of the events that have actually occurred.
|
||||
// By calling this function, the actual events remain signaled. The event memory is not cleared. This is one way for a task
|
||||
// to find out which events have been signaled. The task is not suspended if no events are available.
|
||||
char OS_GetEventsOccurred (OS_TASK* pTask);
|
||||
|
||||
// Returns the actual state of events and then clears the events of a specified task.
|
||||
// pTask The task who's event mask is to be returned,
|
||||
// NULL means current task.
|
||||
//
|
||||
// Return value The events that were actually signaled before clearing.
|
||||
char OS_ClearEvents (OS_TASK* pTask);
|
||||
|
||||
#define RTOS_ID_RSEMA 0x5253454D
|
||||
|
||||
typedef struct OS_RSEMA OS_RSEMA;
|
||||
struct OS_RSEMA
|
||||
{
|
||||
StaticSemaphore_t sema;
|
||||
unsigned int id;
|
||||
SemaphoreHandle_t handle;
|
||||
} ;
|
||||
|
||||
//typedef StaticSemaphore_t OS_RSEMA;
|
||||
|
||||
int OS_Use (OS_RSEMA* pRSema);
|
||||
|
||||
void OS_Unuse (OS_RSEMA* pRSema);
|
||||
char OS_Request (OS_RSEMA* pRSema);
|
||||
void OS_CREATERSEMA (OS_RSEMA* pRSema);
|
||||
void OS_DeleteRSema (OS_RSEMA* pRSema);
|
||||
|
||||
#define RTOS_ID_EVENT 0x45564E54 // "EVNT"
|
||||
|
||||
typedef struct OS_EVENT OS_EVENT;
|
||||
|
||||
struct OS_EVENT
|
||||
{
|
||||
StaticEventGroup_t event;
|
||||
unsigned int id;
|
||||
EventGroupHandle_t handle;
|
||||
} ;
|
||||
|
||||
void OS_EVENT_Create (OS_EVENT* pEvent);
|
||||
void OS_EVENT_Delete (OS_EVENT* pEvent);
|
||||
void OS_EVENT_Set (OS_EVENT* pEvent);
|
||||
void OS_EVENT_Reset (OS_EVENT* pEvent);
|
||||
void OS_EVENT_Wait (OS_EVENT* pEvent);
|
||||
char OS_EVENT_WaitTimed (OS_EVENT* pEvent, OS_TIME Timeout);
|
||||
|
||||
|
||||
#define RTOS_ID_CSEMA 0x4353454D // "CSEM"
|
||||
typedef struct OS_CSEMA OS_CSEMA;
|
||||
struct OS_CSEMA
|
||||
{
|
||||
StaticSemaphore_t sema;
|
||||
unsigned int id;
|
||||
SemaphoreHandle_t handle;
|
||||
} ;
|
||||
|
||||
void OS_CreateCSema (OS_CSEMA* pCSema, OS_UINT InitValue);
|
||||
|
||||
void OS_CREATECSEMA (OS_CSEMA* pCSema);
|
||||
#define OS_CREATECSEMA(pCSema) OS_CreateCSema(pCSema,0)
|
||||
// Increments the counter of a semaphore.
|
||||
void OS_SignalCSema (OS_CSEMA * pCSema);
|
||||
|
||||
// Decrements the counter of a semaphore.
|
||||
void OS_WaitCSema (OS_CSEMA* pCSema);
|
||||
|
||||
void OS_DeleteCSema (OS_CSEMA* pCSema);
|
||||
|
||||
#define RTOS_ID_MAILBOX 0x4D41494C // "MAIL"
|
||||
|
||||
typedef struct OS_MAILBOX OS_MAILBOX;
|
||||
struct OS_MAILBOX
|
||||
{
|
||||
StaticMessageBuffer_t message;
|
||||
unsigned int id;
|
||||
void * handle;
|
||||
char min_msg[4];
|
||||
unsigned int size; // message size
|
||||
} ;
|
||||
|
||||
void OS_CREATEMB (OS_MAILBOX* pMB, unsigned char sizeofMsg, unsigned int maxnofMsg, void* pMsg);
|
||||
void OS_DeleteMB (OS_MAILBOX* pMB);
|
||||
void OS_ClearMB (OS_MAILBOX* pMB);
|
||||
void OS_PutMail (OS_MAILBOX* pMB,void* pMail);
|
||||
void OS_PutMail1 (OS_MAILBOX* pMB, const char* pMail);
|
||||
char OS_GetMailTimed (OS_MAILBOX* pMB, void* pDest, OS_TIME Timeout);
|
||||
void OS_GetMail (OS_MAILBOX* pMB, void* pDest);
|
||||
void OS_GetMail1 (OS_MAILBOX* pMB,char* pDest);
|
||||
|
||||
void OS_EnterRegion(void);
|
||||
void OS_LeaveRegion(void);
|
||||
|
||||
#define OS_INTERWORK
|
||||
|
||||
#define RTOS_ID_TIMER 0x54494D52 // "TIMR"
|
||||
typedef struct OS_TIMER OS_TIMER;
|
||||
struct OS_TIMER
|
||||
{
|
||||
StaticTimer_t timer;
|
||||
unsigned int id;
|
||||
TimerHandle_t handle;
|
||||
} ;
|
||||
|
||||
typedef struct {
|
||||
OS_TIMER Timer;
|
||||
OS_TIMER_EX_ROUTINE * pfUser;
|
||||
void * pData;
|
||||
} OS_TIMER_EX;
|
||||
|
||||
|
||||
// Creates a software timer (but does not start it).
|
||||
void OS_CreateTimer (OS_TIMER* pTimer, OS_TIMERROUTINE* Callback, OS_TIME Timeout);
|
||||
|
||||
// Starts a specified timer.
|
||||
void OS_StartTimer (OS_TIMER* pTimer);
|
||||
|
||||
// Stops and deletes a specified timer.
|
||||
void OS_DeleteTimer (OS_TIMER* pTimer);
|
||||
|
||||
// Restarts a specified timer with its initial time value.
|
||||
void OS_RetriggerTimer (OS_TIMER* pTimer);
|
||||
|
||||
|
||||
#define OS_CREATETIMER(pTimer,c,d) \
|
||||
OS_CreateTimer(pTimer,c,d); \
|
||||
OS_StartTimer(pTimer);
|
||||
|
||||
void* OS_malloc(unsigned int n);
|
||||
void OS_free (void* pMemBlock);
|
||||
|
||||
typedef void OS_ISR_HANDLER(void);
|
||||
|
||||
OS_ISR_HANDLER* OS_ARM_InstallISRHandler (int ISRIndex, OS_ISR_HANDLER* pISRHandler);
|
||||
|
||||
void OS_Delay (int ms); // Suspends the calling task for a specified period of time
|
||||
int OS_GetTime (void);
|
||||
unsigned int OS_GetTime32 (void);
|
||||
|
||||
void XM_Lock (void);
|
||||
void XM_Unlock (void);
|
||||
void OS_InitKern(void);
|
||||
void OS_INIT_SYS_LOCKS(void);
|
||||
void OS_InitHW(void);
|
||||
void OS_Start (void);
|
||||
|
||||
unsigned char OS_GetPriority (OS_TASK* pTask);
|
||||
void OS_SetPriority (OS_TASK* pTask, unsigned char Priority);
|
||||
|
||||
|
||||
void OS_Error(int ErrCode);
|
||||
|
||||
void OS_ARM_EnableISRSource(int SourceIndex);
|
||||
void OS_ARM_DisableISRSource(int SourceIndex);
|
||||
|
||||
/*
|
||||
*********************************************************************************************************
|
||||
* TIMER OPTIONS (see OSTmrStart() and OSTmrStop())
|
||||
*********************************************************************************************************
|
||||
*/
|
||||
#define OS_TMR_OPT_NONE 0u /* No option selected */
|
||||
|
||||
#define OS_TMR_OPT_ONE_SHOT 1u /* Timer will not automatically restart when it expires */
|
||||
#define OS_TMR_OPT_PERIODIC 2u /* Timer will automatically restart when it expires */
|
||||
|
||||
#define OS_TMR_OPT_CALLBACK 3u /* OSTmrStop() option to call 'callback' w/ timer arg. */
|
||||
#define OS_TMR_OPT_CALLBACK_ARG 4u /* OSTmrStop() option to call 'callback' w/ new arg. */
|
||||
|
||||
/*
|
||||
*********************************************************************************************************
|
||||
* TIMER STATES
|
||||
*********************************************************************************************************
|
||||
*/
|
||||
#define OS_TMR_STATE_UNUSED 0u
|
||||
#define OS_TMR_STATE_STOPPED 1u
|
||||
#define OS_TMR_STATE_COMPLETED 2u
|
||||
#define OS_TMR_STATE_RUNNING 3u
|
||||
|
||||
#if defined (__cplusplus)
|
||||
}
|
||||
#endif /* end of __cplusplus */
|
||||
|
||||
#endif // _XM_RTOS_H_
|
92
MXC_A27-PCB4.5-270T/lib/lib_rtos/vg_lcdc.h
Normal file
92
MXC_A27-PCB4.5-270T/lib/lib_rtos/vg_lcdc.h
Normal file
@ -0,0 +1,92 @@
|
||||
#ifndef _VG_LCDC_H_
|
||||
#define _VG_LCDC_H_
|
||||
|
||||
#if defined (__cplusplus)
|
||||
extern "C"{
|
||||
#endif
|
||||
|
||||
// <20><><EFBFBD><EFBFBD>VG<56><47>FBģʽ ()
|
||||
// FB_COUNT = 2, Ϊ˫<CEAA><CBAB><EFBFBD><EFBFBD>ģʽ
|
||||
// FB_COUNT = 1, Ϊ<><CEAA>֡ģʽ
|
||||
#ifndef FB_COUNT
|
||||
#define FB_COUNT 2
|
||||
//#define FB_COUNT 1
|
||||
#endif
|
||||
|
||||
|
||||
// <20><>ȡVG<56><47><EFBFBD>õ<EFBFBD>framebuffer<65><72><EFBFBD><EFBFBD>(<28>̶<EFBFBD>Ϊ2<CEAA><32>)
|
||||
unsigned int xm_vg_get_fb_count (void);
|
||||
|
||||
|
||||
// <20><>ȡVG֡(GPU֡)<29><>ÿ<EFBFBD><C3BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֽڳ<D6BD><DAB3><EFBFBD>
|
||||
unsigned int xm_vg_get_stride (void);
|
||||
|
||||
// <20><>ȡOSD֡<44><D6A1>ÿ<EFBFBD><C3BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֽڳ<D6BD><DAB3><EFBFBD>
|
||||
unsigned int xm_vg_get_osd_stride (void);
|
||||
|
||||
// <20><>ȡVG֡(GPU֡/OSD֡)<29><>bpp<70><70><EFBFBD><EFBFBD>
|
||||
// 16 (RGB565)
|
||||
// 32 (ARGB8888)
|
||||
unsigned int xm_vg_get_bpp (void);
|
||||
|
||||
// <20><>ȡһ<C8A1><D2BB><EFBFBD>µ<EFBFBD>VG֡<47><D6A1>GPU fb<66><62><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ַ, <20><><EFBFBD><EFBFBD>GPU<50><55>̨<EFBFBD><CCA8>Ⱦ
|
||||
// VG֡<47><D6A1>OSD֡<44>ڲ<EFBFBD><DAB2>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20><><EFBFBD><EFBFBD>GPU<50><55>ͼʹ<CDBC><CAB9>
|
||||
// <20><><EFBFBD><EFBFBD>ֵ
|
||||
// ָ<><D6B8>VG֡<47><D6A1>ԭ<EFBFBD><D4AD>(<28><><EFBFBD>Ͻ<EFBFBD>)
|
||||
unsigned int xm_vg_require_gpu_fb (void);
|
||||
|
||||
|
||||
// <20>ͷŵ<CDB7>ǰ<EFBFBD><C7B0>̨<EFBFBD><CCA8>Ⱦ(GPU<50><55>Ⱦ)<29><>ʹ<EFBFBD>õ<EFBFBD>VG֡.
|
||||
// <09><>VG֡(GPU)<29><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>OSD֡<44><D6A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>LCD<43><44>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD>
|
||||
void xm_vg_release_gpu_fb (void);
|
||||
|
||||
// <20><><EFBFBD><EFBFBD>ָ<EFBFBD><D6B8><EFBFBD>Ļ<EFBFBD>ַ<EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>Ч<EFBFBD><D0A7>GPU framebuffer
|
||||
// <20><><EFBFBD><EFBFBD>ֵ
|
||||
// 1 <09><><EFBFBD><EFBFBD>Ч<EFBFBD><D0A7>GPU framebuffer<65><72>ַ
|
||||
// 0 <09><><EFBFBD><EFBFBD>
|
||||
int xm_vg_is_valid_gpu_fb (unsigned int base);
|
||||
|
||||
// <20><><EFBFBD><EFBFBD>VG֡<47><D6A1>OSD֡<44>ڲ<EFBFBD><DAB2>Ŀ<EFBFBD><C4BF><EFBFBD>λ<EFBFBD><CEBB>
|
||||
// VG֡<47><D6A1><EFBFBD><EFBFBD>OSD֡<44><D6A1><EFBFBD>ڲ<EFBFBD><DAB2><EFBFBD><EFBFBD><EFBFBD>
|
||||
void xm_vg_set_osd_window ( unsigned int x, // VG֡ԭ<EFBFBD><EFBFBD>(<EFBFBD><EFBFBD><EFBFBD>Ͻ<EFBFBD>)<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>OSD֡ԭ<EFBFBD><EFBFBD>(<EFBFBD><EFBFBD><EFBFBD>Ͻ<EFBFBD>)<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƫ<EFBFBD><EFBFBD>
|
||||
unsigned int y,
|
||||
unsigned int w, // VG֡<47><D6A1><EFBFBD><EFBFBD><EFBFBD>سߴ<D8B3>
|
||||
unsigned int h
|
||||
);
|
||||
void xm_vg_set_x (unsigned int x);
|
||||
void xm_vg_set_y (unsigned int y);
|
||||
void xm_vg_set_width (unsigned int w);
|
||||
void xm_vg_set_height (unsigned int h);
|
||||
|
||||
|
||||
// <20><>ȡVG֡<47><D6A1>OSD֡<44>ڲ<EFBFBD><DAB2>Ŀ<EFBFBD><C4BF><EFBFBD>λ<EFBFBD><CEBB>
|
||||
// VG֡<47><D6A1><EFBFBD><EFBFBD>OSD֡<44><D6A1><EFBFBD>ڲ<EFBFBD><DAB2><EFBFBD><EFBFBD><EFBFBD>
|
||||
void xm_vg_get_osd_window ( unsigned int* x, // <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>OSD֡ԭ<EFBFBD><EFBFBD>(<EFBFBD><EFBFBD><EFBFBD>Ͻ<EFBFBD>)<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƫ<EFBFBD><EFBFBD>
|
||||
unsigned int* y,
|
||||
unsigned int* w, // VG֡<47><D6A1><EFBFBD><EFBFBD><EFBFBD>سߴ<D8B3>
|
||||
unsigned int* h,
|
||||
unsigned int* stride // VG֡<47><D6A1>ÿ<EFBFBD><C3BF><EFBFBD>ֽڳ<D6BD><DAB3><EFBFBD>
|
||||
);
|
||||
// <20><>ȡVG֡<47><D6A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>OSD֡ԭ<D6A1><D4AD>(<28><><EFBFBD>Ͻ<EFBFBD>)<29><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƫ<EFBFBD><C6AB>
|
||||
unsigned int xm_vg_get_x (void);
|
||||
unsigned int xm_vg_get_y (void);
|
||||
// <20><>ȡVG֡<47><D6A1><EFBFBD><EFBFBD><EFBFBD>ؿ<EFBFBD><D8BF><EFBFBD>
|
||||
unsigned int xm_vg_get_width (void);
|
||||
// <20><>ȡVG֡<47><D6A1><EFBFBD><EFBFBD><EFBFBD>ظ߶<D8B8>
|
||||
unsigned int xm_vg_get_height (void);
|
||||
|
||||
// <20><>ȡ<EFBFBD><C8A1>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ⱦ<EFBFBD><C8BE>OSD framebuffer
|
||||
// *no == -1 <20><>ʾ<EFBFBD><CABE>ȡ<EFBFBD><C8A1>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ⱦ<EFBFBD><C8BE>OSD framebuffer
|
||||
// <20><><EFBFBD><EFBFBD>ֵ
|
||||
// <09><>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ⱦ<EFBFBD><C8BE>OSD framebuffer<65><72>ַ
|
||||
unsigned int xm_vg_get_osd_fb (int *no);
|
||||
|
||||
// <20><>ȡVG֡<47><D6A1><EFBFBD><EFBFBD><EFBFBD>ı<EFBFBD><C4B1><EFBFBD>ͼ<EFBFBD><CDBC>ַ(<28><>GPU FB<46><42>ͬ<EFBFBD>ߴ<EFBFBD>/<2F><><EFBFBD><EFBFBD>)
|
||||
void* xm_vg_get_gpu_background_image (void);
|
||||
|
||||
|
||||
#if defined (__cplusplus)
|
||||
}
|
||||
#endif /* end of __cplusplus */
|
||||
|
||||
#endif /* _XM_SIGNAL_H_ */
|
78
MXC_A27-PCB4.5-270T/lib/lib_rtos/xm_base.h
Normal file
78
MXC_A27-PCB4.5-270T/lib/lib_rtos/xm_base.h
Normal file
@ -0,0 +1,78 @@
|
||||
//****************************************************************************
|
||||
//
|
||||
// Copyright (C) 2010 ShenZhen ExceedSpace
|
||||
//
|
||||
// Author ZhuoYongHong
|
||||
//
|
||||
// File name: xm_base.h
|
||||
// constant<6E><74>macro & basic typedef definition of kernel service
|
||||
//
|
||||
// Revision history
|
||||
//
|
||||
// 2010.09.01 ZhuoYongHong Initial version
|
||||
//
|
||||
//****************************************************************************
|
||||
#ifndef _XM_BASE_H_
|
||||
#define _XM_BASE_H_
|
||||
|
||||
#include <xm_type.h>
|
||||
|
||||
#if defined (__cplusplus)
|
||||
extern "C"{
|
||||
#endif
|
||||
|
||||
|
||||
#ifndef _XMBOOL_DEFINED_
|
||||
#define _XMBOOL_DEFINED_
|
||||
typedef unsigned char XMBOOL; // BOOL<4F><4C><EFBFBD><EFBFBD>
|
||||
#endif
|
||||
|
||||
|
||||
// typedef definition
|
||||
|
||||
// structure definition
|
||||
|
||||
|
||||
|
||||
// ϵͳʱ<CDB3><CAB1>
|
||||
typedef struct tagXMSYSTEMTIME {
|
||||
WORD wYear;
|
||||
WORD wMonth;
|
||||
WORD wDayOfWeek;
|
||||
WORD wDay;
|
||||
WORD wHour;
|
||||
WORD wMinute;
|
||||
WORD wSecond;
|
||||
WORD wMilliseconds;
|
||||
} XMSYSTEMTIME, *PXMSYSTEMTIME;
|
||||
|
||||
|
||||
// ʱ<><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>/<2F><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD>
|
||||
// <09><><EFBFBD><EFBFBD>1<EFBFBD><31>ʾϵͳʱ<CDB3><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
// <09><><EFBFBD><EFBFBD>0<EFBFBD><30>ʾϵͳʱ<CDB3><CAB1>δ<EFBFBD><CEB4><EFBFBD>ã<EFBFBD>ϵͳ<CFB5><CDB3><EFBFBD><EFBFBD>ȱʡ<C8B1><CAA1><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
|
||||
int XM_GetLocalTime (XMSYSTEMTIME* pSystemTime);
|
||||
// <09><><EFBFBD><EFBFBD>1<EFBFBD><31><EFBFBD><EFBFBD>ϵͳʱ<CDB3><CAB1><EFBFBD>ɹ<EFBFBD>
|
||||
// <20><><EFBFBD><EFBFBD>0<EFBFBD><30><EFBFBD><EFBFBD>ϵͳʱ<CDB3><CAB1>ʧ<EFBFBD><CAA7>
|
||||
int XM_SetLocalTime (const XMSYSTEMTIME *pSystemTime);
|
||||
|
||||
// <20><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ĵδ<C4B5><CEB4><EFBFBD><EFBFBD><EFBFBD> <20><>1msΪһ<CEAA>δ<EFBFBD><CEB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><CEBB>
|
||||
DWORD XM_GetTickCount (void);
|
||||
|
||||
// <20><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߾<EFBFBD><DFBE>ȵĵδ<C4B5><CEB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><CEA2>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ
|
||||
XMINT64 XM_GetHighResolutionTickCount (void);
|
||||
|
||||
|
||||
void XM_Sleep (DWORD dwMilliseconds); // <20><>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD>뵥λ
|
||||
|
||||
|
||||
|
||||
void XM_Delay (unsigned int ms);
|
||||
|
||||
void XM_lock (void);
|
||||
void XM_unlock (void);
|
||||
|
||||
#if defined (__cplusplus)
|
||||
}
|
||||
#endif /* end of __cplusplus */
|
||||
|
||||
#endif // _XM_BASE_H_
|
134
MXC_A27-PCB4.5-270T/lib/lib_rtos/xm_type.h
Normal file
134
MXC_A27-PCB4.5-270T/lib/lib_rtos/xm_type.h
Normal file
@ -0,0 +1,134 @@
|
||||
//****************************************************************************
|
||||
//
|
||||
// Copyright (C) 2012 ZhuoYongHong
|
||||
//
|
||||
// Author ZhuoYongHong
|
||||
//
|
||||
// File name: xmtype.h
|
||||
// constant<6E><74>macro & basic typedef definition of X-Mini Window System
|
||||
//
|
||||
// Revision history
|
||||
//
|
||||
// 2010.08.31 ZhuoYongHong Initial version
|
||||
//
|
||||
//****************************************************************************
|
||||
#ifndef _XM_TYPE_H_
|
||||
#define _XM_TYPE_H_
|
||||
|
||||
|
||||
#if defined(_WINDOWS) && defined(WIN32)
|
||||
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>VC<56><43><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>漰<EFBFBD><E6BCB0><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
#pragma warning(disable : 4996) // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˱<EFBFBD><CBB1><EFBFBD><EFBFBD><EFBFBD> deprecated <20>ĺ<EFBFBD><C4BA><EFBFBD>
|
||||
#pragma warning(disable:4068) // <20><><EFBFBD><EFBFBD>ʾ4068<36>ž<EFBFBD><C5BE><EFBFBD><EFBFBD><EFBFBD>Ϣ (warning C4068: unknown pragma)
|
||||
#pragma warning(disable:4100) // <20><><EFBFBD><EFBFBD>ʾ4100<30>ž<EFBFBD><C5BE><EFBFBD><EFBFBD><EFBFBD>Ϣ (unreferenced formal parameter)
|
||||
#pragma warning(error:4090) // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> C4090: '=' : different 'const' qualifiers
|
||||
//#pragma warning(error:4701) // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> C4701: local variable 'xxx' may be used without having been initialized
|
||||
#pragma warning(error:4706) // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> C4706: assignment within conditional expression
|
||||
#pragma warning(error:4716) // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> C4716: must return a value
|
||||
#pragma warning(error:4013) // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> C4013: undefined; assuming extern returning int
|
||||
#pragma warning(error:4028) // formal parameter nnn different from declaration
|
||||
#pragma warning(error:4245) // 'function' : conversion from 'const int ' to 'unsigned short ', signed/unsigned mismatch
|
||||
#pragma warning(error:4020) // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> C4020: 'xxx' : too many actual parameters
|
||||
#pragma warning(error:4244) // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> C4244: warning C4244: '=' : conversion from 'short ' to 'unsigned char ', possible loss of data
|
||||
#pragma warning(disable:4793)
|
||||
#pragma warning(disable : 4996)
|
||||
|
||||
#endif // #if defined(_WINDOWS) && defined(WIN32)
|
||||
|
||||
|
||||
#ifndef FALSE
|
||||
#define FALSE 0
|
||||
#endif
|
||||
|
||||
#ifndef TRUE
|
||||
#define TRUE 1
|
||||
#endif
|
||||
|
||||
typedef signed char i8_t;
|
||||
typedef signed short i16_t;
|
||||
typedef signed int i32_t;
|
||||
typedef unsigned char u8_t;
|
||||
typedef unsigned short u16_t;
|
||||
typedef unsigned int u32_t;
|
||||
typedef unsigned short WORD;
|
||||
typedef unsigned long DWORD;
|
||||
typedef unsigned char BYTE;
|
||||
typedef unsigned int UINT;
|
||||
|
||||
#ifdef WIN32
|
||||
typedef __int64 XMINT64;
|
||||
#else
|
||||
typedef signed long long XMINT64;
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
|
||||
#ifndef _XMCOORD_DEFINED_
|
||||
#define _XMCOORD_DEFINED_
|
||||
typedef signed int XMCOORD; // λ<><CEBB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
#endif
|
||||
|
||||
#ifndef _XMCOLOR_DEFINED_
|
||||
#define _XMCOLOR_DEFINED_
|
||||
typedef unsigned long XMCOLOR; // <20><>ɫ<EFBFBD><C9AB><EFBFBD><EFBFBD>
|
||||
#endif
|
||||
|
||||
#ifndef _XMBOOL_DEFINED_
|
||||
#define _XMBOOL_DEFINED_
|
||||
typedef unsigned char XMBOOL; // BOOL<4F><4C><EFBFBD><EFBFBD>
|
||||
#endif
|
||||
|
||||
typedef void * HANDLE;
|
||||
|
||||
// <20><><EFBFBD>Ͷ<EFBFBD><CDB6><EFBFBD>
|
||||
#undef NULL
|
||||
#define NULL (0)
|
||||
|
||||
/*
|
||||
#ifndef _WCHAR_T_DEFINED
|
||||
#undef wchar_t
|
||||
typedef unsigned short wchar_t;
|
||||
#define _WCHAR_T_DEFINED
|
||||
#endif*/
|
||||
|
||||
#ifndef _WINDEF_
|
||||
|
||||
// <20>궨<EFBFBD><EAB6A8>
|
||||
#define MAKEWORD(a, b) ((WORD)(((BYTE)(a)) | ((WORD)((BYTE)(b))) << 8))
|
||||
#define MAKELONG(a, b) ((LONG)(((WORD)(a)) | ((DWORD)((WORD)(b))) << 16))
|
||||
#define LOWORD(l) ((WORD)(l))
|
||||
#define HIWORD(l) ((WORD)(((DWORD)(l) >> 16) & 0xFFFF))
|
||||
#define LOBYTE(w) ((BYTE)(w))
|
||||
#define HIBYTE(w) ((BYTE)(((WORD)(w) >> 8) & 0xFF))
|
||||
|
||||
#endif
|
||||
|
||||
#define XMPALETTEINDEX(i) ((XMCOLOR)(0x01000000 | (DWORD)(WORD)(i)))
|
||||
|
||||
#define XM_MAX_PATH 127 /* maximum path */
|
||||
|
||||
|
||||
// <20><><EFBFBD>ݽṹ<DDBD><E1B9B9><EFBFBD><EFBFBD>
|
||||
typedef struct tgXMPOINT {
|
||||
XMCOORD x; // x<><78><EFBFBD><EFBFBD>
|
||||
XMCOORD y; // y<><79><EFBFBD><EFBFBD>
|
||||
} XMPOINT;
|
||||
|
||||
// <20><><EFBFBD>νṹ
|
||||
typedef struct tagXMRECT {
|
||||
XMCOORD left; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ͻ<EFBFBD>X<EFBFBD><58><EFBFBD><EFBFBD>
|
||||
XMCOORD top; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ͻ<EFBFBD>Y<EFBFBD><59><EFBFBD><EFBFBD>
|
||||
XMCOORD right; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>½<EFBFBD>X<EFBFBD><58><EFBFBD><EFBFBD>
|
||||
XMCOORD bottom; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>½<EFBFBD>Y<EFBFBD><59><EFBFBD><EFBFBD>
|
||||
} XMRECT;
|
||||
|
||||
// <20>ߴ<EFBFBD><DFB4>ṹ
|
||||
typedef struct tagXMSIZE {
|
||||
XMCOORD cx;
|
||||
XMCOORD cy;
|
||||
} XMSIZE;
|
||||
|
||||
|
||||
#endif // _XM_TYPE_H_
|
764
MXC_A27-PCB4.5-270T/lib/lib_rtos/xm_user.h
Normal file
764
MXC_A27-PCB4.5-270T/lib/lib_rtos/xm_user.h
Normal file
@ -0,0 +1,764 @@
|
||||
//****************************************************************************
|
||||
//
|
||||
// Copyright (C) 2012 ShenZhen ExceedSpace
|
||||
//
|
||||
// Author ZhuoYongHong
|
||||
//
|
||||
// File name: xm_user.h
|
||||
// constant<6E><74>macro & basic typedef definition of user
|
||||
//
|
||||
// Revision history
|
||||
//
|
||||
// 2010.09.01 ZhuoYongHong Initial version
|
||||
//
|
||||
//****************************************************************************
|
||||
#ifndef _XM_USER_H_
|
||||
#define _XM_USER_H_
|
||||
|
||||
#include <xm_type.h>
|
||||
#if defined (__cplusplus)
|
||||
extern "C"{
|
||||
#endif
|
||||
|
||||
// Macro definition
|
||||
|
||||
// <20><>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Դ
|
||||
#define XM_MAX_TIMER 16 // ϵͳ<CFB5><CDB3><EFBFBD><EFBFBD><EFBFBD>ɷ<EFBFBD><C9B7>䶨ʱ<E4B6A8><CAB1><EFBFBD><EFBFBD>Դ
|
||||
|
||||
#define XM_MAX_MSG 32 // ϵͳ<CFB5><CDB3>Ϣ<EFBFBD><CFA2><EFBFBD>д<EFBFBD>С
|
||||
|
||||
#define MAX_HWND_STACK 8 // <20>Ӵ<EFBFBD>ջ<EFBFBD><D5BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
|
||||
#define MAX_HWND_WIDGET_COUNT 4 // һ<><D2BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀؼ<C4BF><D8BC><EFBFBD><EFBFBD><EFBFBD>
|
||||
|
||||
#define MAX_STACK_WIDGET_COUNT 8 // <20>Ӵ<EFBFBD>ջ<EFBFBD><D5BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͬʱ<CDAC><CAB1><EFBFBD><EFBFBD><EFBFBD>Ŀؼ<C4BF><D8BC><EFBFBD><EFBFBD><EFBFBD> (<28><><EFBFBD><EFBFBD><EFBFBD>Ӵ<EFBFBD><D3B4>еĿؼ<C4BF><D8BC>ۼӸ<DBBC><D3B8><EFBFBD>)
|
||||
|
||||
|
||||
|
||||
// <20><>Ϣ<EFBFBD><CFA2><EFBFBD>Ͷ<EFBFBD><CDB6><EFBFBD>
|
||||
|
||||
#define XM_KEYDOWN 0x01
|
||||
// wp <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5>lp <20><><EFBFBD><EFBFBD>״̬
|
||||
|
||||
#define XM_KEYUP 0x02
|
||||
// wp <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5>lp <20><><EFBFBD><EFBFBD>״̬
|
||||
|
||||
#define XM_QUIT 0x03 // <20><>Ϣѭ<CFA2><D1AD><EFBFBD>˳<EFBFBD><CBB3><EFBFBD>Ϣ
|
||||
// wp<77><70><EFBFBD><EFBFBD>Ϊ0, lpΪ<70><CEAA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>õķ<C3B5><C4B7><EFBFBD>ֵ
|
||||
|
||||
#define XM_CHAR 0x04 // <20>ַ<EFBFBD><D6B7><EFBFBD>Ϣ
|
||||
// wp = 0, lpΪ16ΪUnicode16<31><36><EFBFBD><EFBFBD>
|
||||
// wp != 0, <20>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD>ֵΪUnicode<64><65><EFBFBD><EFBFBD> (wp << 16) | lp,
|
||||
|
||||
#define XM_TIMER 0x05 // <20><>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Ϣ
|
||||
// wp <20><>ʱ<EFBFBD><CAB1>ID<49><44>lp <20><><EFBFBD><EFBFBD>Ϊ0
|
||||
|
||||
#define XM_PAINT 0x06 // <20><>Ļˢ<C4BB><CBA2><EFBFBD><EFBFBD>Ϣ
|
||||
// wp,lp<6C><70><EFBFBD><EFBFBD>Ϊ0
|
||||
|
||||
#define XM_COMMAND 0x07 // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
|
||||
// wpΪ<70><CEAA><EFBFBD><EFBFBD>ID<49><44>lp<6C><70><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ID<49><44><EFBFBD><EFBFBD>
|
||||
|
||||
#define XM_ALARM 0x08 // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
|
||||
|
||||
|
||||
#define XM_CLOCK 0x09 // ÿ<><C3BF><EFBFBD><EFBFBD>Ϣ
|
||||
// wp,lp<6C><70><EFBFBD><EFBFBD>Ϊ0
|
||||
|
||||
#define XM_MCI 0x0A // <20><>ý<EFBFBD>岥<EFBFBD>ſ<EFBFBD><C5BF><EFBFBD><EFBFBD><EFBFBD>Ϣ
|
||||
// wp MCI֪ͨ<CDA8><D6AA>
|
||||
// lp <20><>wp<77><70><EFBFBD>صĸ<D8B5><C4B8><EFBFBD><EFBFBD><EFBFBD>Ϣ
|
||||
|
||||
#define XM_ENTER 0x0B // <20>Ӵ<EFBFBD><D3B4><EFBFBD><EFBFBD><EFBFBD>
|
||||
// wp = 0, <20><><EFBFBD>Ӵ<EFBFBD><D3B4><EFBFBD><EFBFBD><EFBFBD> (<28><><EFBFBD>Ӵ<EFBFBD>δ<EFBFBD><CEB4><EFBFBD><EFBFBD>)
|
||||
// lp <20><><EFBFBD><EFBFBD>Ϊ0
|
||||
// wp = 1, <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӵ<EFBFBD><D3B4><EFBFBD><EFBFBD>ص<EFBFBD><D8B5><EFBFBD><EFBFBD>Ӵ<EFBFBD> (<28><><EFBFBD>Ӵ<EFBFBD><D3B4>Ѵ<EFBFBD><D1B4><EFBFBD>)
|
||||
// lp
|
||||
// bit 0 1 <20><>ʾ<EFBFBD>Ӵ<EFBFBD><D3B4>ؽ<EFBFBD><D8BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD>ֱ<EFBFBD><D6B1><EFBFBD><EFBFBD><EFBFBD>
|
||||
// 0 <20><><EFBFBD><EFBFBD>ԭ<EFBFBD><D4AD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
// bit 1~7 0 <20><><EFBFBD><EFBFBD>Ϊ0
|
||||
//
|
||||
|
||||
#define XM_LEAVE 0x0C // <20>Ӵ<EFBFBD><D3B4>˳<EFBFBD>
|
||||
// lp<6C><70><EFBFBD><EFBFBD>Ϊ0
|
||||
// wp = 0, <20>Ӵ<EFBFBD><D3B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˳<EFBFBD> (<28><><EFBFBD>Ӵ<EFBFBD><D3B4><EFBFBD><EFBFBD>ݻ<EFBFBD>)
|
||||
// wp = 1, <20>Ӵ<EFBFBD><D3B4><EFBFBD>ʱ<EFBFBD>뿪<EFBFBD><EBBFAA><EFBFBD><EFBFBD>ѹ<EFBFBD><D1B9><EFBFBD>µ<EFBFBD><C2B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӵ<EFBFBD> (<28><><EFBFBD>Ӵ<EFBFBD><D3B4><EFBFBD>ǰ״̬<D7B4><CCAC><EFBFBD><EFBFBD>)
|
||||
|
||||
#define XM_SYSTEMEVENT 0x10 // ϵͳ<CFB5>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD>
|
||||
// lp <20><><EFBFBD><EFBFBD>Ϊ0
|
||||
// wp <20>ο<EFBFBD> XM_SYSTEMEVENT <20><> WP <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
// 1) һ<><D2BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӵ<EFBFBD>view<65><77><EFBFBD>账<EFBFBD><E8B4A6><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD>ϵͳȱʡ<C8B1><CAA1><EFBFBD><EFBFBD>
|
||||
// 2) <09><><EFBFBD>Ӵ<EFBFBD>view<65><77>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD>ij<EFBFBD><C4B3><EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ж<EFBFBD><D0B6>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD>ݸ<EFBFBD>ϵͳȱʡ<C8B1><CAA1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
// ͨ<><CDA8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>API XM_BreakSystemEventDefaultProcess <20><><EFBFBD><EFBFBD>ֹϵͳȱʡ<C8B1><CAA1><EFBFBD><EFBFBD>(<28><>ϵͳ<CFB5><CDB3><EFBFBD>ٴ<EFBFBD><D9B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD>)
|
||||
|
||||
#define XM_TOUCHDOWN 0x11 // <20><><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD>
|
||||
// lp
|
||||
// bit 0 ~ 15 <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>x<EFBFBD><78><EFBFBD><EFBFBD>
|
||||
// bit 16 ~ 31 <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>y<EFBFBD><79><EFBFBD><EFBFBD>
|
||||
// wp <20><><EFBFBD><EFBFBD>Ϊ0
|
||||
|
||||
#define XM_TOUCHUP 0x12 // <20><><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC>ͷ<EFBFBD>
|
||||
// lp <20><><EFBFBD><EFBFBD>Ϊ0
|
||||
// wp <20><><EFBFBD><EFBFBD>Ϊ0
|
||||
|
||||
#define XM_TOUCHMOVE 0x13 // <20><><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC>ƶ<EFBFBD>
|
||||
// lp
|
||||
// bit 0 ~ 15 <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>x<EFBFBD><78><EFBFBD><EFBFBD>
|
||||
// bit 16 ~ 31 <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>y<EFBFBD><79><EFBFBD><EFBFBD>
|
||||
// wp <20><><EFBFBD><EFBFBD>Ϊ0
|
||||
|
||||
#define XM_TOUCHREPEATED 0x14 // <20><><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD>
|
||||
// lp
|
||||
// bit 0 ~ 15 <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>x<EFBFBD><78><EFBFBD><EFBFBD>
|
||||
// bit 16 ~ 31 <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>y<EFBFBD><79><EFBFBD><EFBFBD>
|
||||
// wp <20><><EFBFBD><EFBFBD>Ϊ0
|
||||
|
||||
// XM_SYSTEMEVENT <20><> WP <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>ϵͳ<CFB5>¼<EFBFBD>
|
||||
#define SYSTEM_EVENT_CARD_DETECT 0 // SD<53><44><EFBFBD><D7BC><EFBFBD><EFBFBD>(SD<53><44><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
|
||||
// "SD<53><44><EFBFBD>Ѳ<EFBFBD><D1B2>룬<EFBFBD><EBA3AC><EFBFBD><EFBFBD>ʶ<EFBFBD><CAB6><EFBFBD><EFBFBD>"
|
||||
#define SYSTEM_EVENT_CARD_UNPLUG 1 // SD<53><44><EFBFBD>γ<EFBFBD><CEB3>¼<EFBFBD>
|
||||
// "SD<53><44><EFBFBD><EFBFBD><EFBFBD>Ƴ<EFBFBD>"
|
||||
#define SYSTEM_EVENT_CARD_INSERT_WRITE_PROTECT 2 // SD<53><44><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(д<><D0B4><EFBFBD><EFBFBD>)
|
||||
// "SD<53><44><EFBFBD><EFBFBD>д<EFBFBD><D0B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>뽫'д<><D0B4><EFBFBD><EFBFBD>'<27><><EFBFBD>عر<D8B9>"
|
||||
#define SYSTEM_EVENT_CARD_INSERT 3 // SD<53><44><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(<28><>д<EFBFBD><D0B4><EFBFBD><EFBFBD>)
|
||||
#define SYSTEM_EVENT_CARD_FS_ERROR 4 // SD<53><44><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,<2C><><EFBFBD>ݿ<EFBFBD><DDBF><EFBFBD>ʶ<EFBFBD><CAB6>(<28><>дģʽ)<29><><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>ϵͳ<CFB5>Ѱ<EFBFBD>װ
|
||||
// "SD<53><44><EFBFBD>ļ<EFBFBD>ϵͳ<CFB5><CDB3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¸<EFBFBD>ʽ<EFBFBD><CABD>"
|
||||
// <09><EFBFBD><DEB7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݿ<EFBFBD><DDBF>ϴ<EFBFBD><CFB4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƶ<EFBFBD><C6B5>¼<EFBFBD><C2BC>Ŀ¼<C4BF><C2BC>
|
||||
// <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ¼ͬ<C2BC><CDAC><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(<28>Զ<EFBFBD><D4B6><EFBFBD>)
|
||||
// <09><EFBFBD><DEB7>Զ<EFBFBD><D4B6><EFBFBD>ʱ<EFBFBD><CAB1>Ҫ<EFBFBD><D2AA>ʾ"<22><>ʽ<EFBFBD><CABD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><DFBB><EFBFBD>"
|
||||
#define SYSTEM_EVENT_CARD_VERIFY_ERROR 5 // SD<53><44><EFBFBD><EFBFBD>дУ<D0B4><D0A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>
|
||||
// "SD<53><44><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, <20>볢<EFBFBD><EBB3A2><EFBFBD><EFBFBD><EFBFBD>¸<EFBFBD>ʽ<EFBFBD><CABD>"
|
||||
#define SYSTEM_EVENT_CARD_INVALID 6 // SD<53><44><EFBFBD><EFBFBD>ʶ<EFBFBD><CAB6> (<28><><EFBFBD><EFBFBD><E2B5BD><EFBFBD><EFBFBD><EFBFBD>룬<EFBFBD><EBA3AC><EFBFBD><EFBFBD>û<EFBFBD><C3BB>Ӧ<EFBFBD>ص<F0BFA8BF><D8B5>κ<EFBFBD>ָ<EFBFBD><D6B8>)
|
||||
// "SD<53><44><EFBFBD><EFBFBD>ʶ<EFBFBD><CAB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>²<EFBFBD><C2B2><EFBFBD>"
|
||||
#define SYSTEM_EVENT_CARD_DISK_FULL 7 // SD<53><44><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
// "SD<53><44><EFBFBD><EFBFBD>д<EFBFBD><D0B4><EFBFBD><EFBFBD><EFBFBD>볢<EFBFBD><EBB3A2><EFBFBD><EFBFBD><EFBFBD>¸<EFBFBD>ʽ<EFBFBD><CABD>"
|
||||
#define SYSTEM_EVENT_CARD_FS_UNSUPPORT 8 // <20><EFBFBD>֧<EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>ϵͳ<CFB5><CDB3>ʽexFAT<41><54><EFBFBD><EFBFBD>NTFS
|
||||
// "SD<53><44><EFBFBD>ļ<EFBFBD>ϵͳ<CFB5><CDB3>֧<EFBFBD>֣<EFBFBD><D6A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¸<EFBFBD>ʽ<EFBFBD><CABD>"
|
||||
|
||||
// <20><>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>롢<EFBFBD>Ͽ<EFBFBD><CFBF>¼<EFBFBD>
|
||||
#define SYSTEM_EVENT_AVOUT_PLUGOUT 20 // AVOUT<55>γ<EFBFBD>
|
||||
#define SYSTEM_EVENT_AVOUT_PLUGIN 21 // AVOUT<55><54><EFBFBD><EFBFBD>
|
||||
#define SYSTEM_EVENT_HDMI_PLUGIN 22 // HDMI<4D>豸<EFBFBD><E8B1B8><EFBFBD><EFBFBD>
|
||||
#define SYSTEM_EVENT_HDMI_PLUGOUT 23 // HDMI<4D>豸<EFBFBD>γ<EFBFBD>
|
||||
#define SYSTEM_EVENT_BL_OFF 24 // <20>رձ<D8B1><D5B1><EFBFBD>
|
||||
#define SYSTEM_EVENT_BL_ON 25 // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
|
||||
|
||||
// <20><><EFBFBD>ݰ<EFBFBD><DDB0><EFBFBD><EFBFBD>¼<EFBFBD>
|
||||
#define SYSTEM_EVENT_ADJUST_BELL_VOLUME 30 // <20><><EFBFBD>ݰ<EFBFBD><DDB0><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ر<EFBFBD>
|
||||
#define SYSTEM_EVENT_ADJUST_MIC_VOLUME 31 // <20><><EFBFBD>ݰ<EFBFBD><DDB0><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ر<EFBFBD>
|
||||
#define SYSTEM_EVENT_ONE_KEY_PROTECT 32 // <20><><EFBFBD>ݰ<EFBFBD><DDB0><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC>(һ<><D2BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
|
||||
#define SYSTEM_EVENT_ONE_KEY_PHOTOGRAPH 33 // <20><><EFBFBD>ݰ<EFBFBD><DDB0><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD>һ<EFBFBD><D2BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
#define SYSTEM_EVENT_URGENT_RECORD 32 // <20><><EFBFBD>ݰ<EFBFBD><DDB0><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC>(һ<><D2BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
|
||||
#define SYSTEM_EVENT_ONE_KEY_REBOOT 34 // <20><><EFBFBD>ݰ<EFBFBD><DDB0><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD>һ<EFBFBD><D2BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
|
||||
// ϵͳ<CFB5><CDB3><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD>
|
||||
#define SYSTEM_EVENT_MAIN_BATTERY 40 // <20><><EFBFBD><EFBFBD><EFBFBD>ر仯<D8B1>¼<EFBFBD>
|
||||
#define SYSTEM_EVENT_BACKUP_BATTERY 41 // <20><><EFBFBD>ݵ<EFBFBD><DDB5>ر仯<D8B1>¼<EFBFBD>
|
||||
|
||||
// USB<53>β<EFBFBD><CEB2>¼<EFBFBD>
|
||||
#define SYSTEM_EVENT_USB_DISCONNECT 50 // USB<53>Ͽ<EFBFBD><CFBF><EFBFBD><EFBFBD><EFBFBD>
|
||||
#define SYSTEM_EVENT_USB_CONNECT_CHARGE 51 // USB<53><42>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD><CAB9>
|
||||
#define SYSTEM_EVENT_USB_CONNECT_UDISK 52 // USB<53><42><EFBFBD><EFBFBD><EFBFBD>ӣ<EFBFBD><D3A3><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD>豸<EFBFBD><E8B1B8>U<EFBFBD><55>ʹ<EFBFBD><CAB9>
|
||||
#define SYSTEM_EVENT_USB_CONNECT_CAMERA 53 // USB<53><42><EFBFBD><EFBFBD><EFBFBD>ӣ<EFBFBD><D3A3><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD><EFBFBD>豸<EFBFBD><E8B1B8>Camera<72><61><EFBFBD><EFBFBD>ʹ<EFBFBD><CAB9>
|
||||
|
||||
// GPS<50><53><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD>
|
||||
#define SYSTEM_EVENT_GPSBD_DISCONNECT 60 // GPSBD<42>ѶϿ<D1B6>
|
||||
#define SYSTEM_EVENT_GPSBD_CONNECT_ANTENNA_OPEN 61 // GPSBD<42><44><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(<28><><EFBFBD><EFBFBD>δ<EFBFBD><CEB4><EFBFBD><EFBFBD>)
|
||||
#define SYSTEM_EVENT_GPSBD_CONNECT_ANTENNA_SHORT 62 // GPSBD<42><44><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(<28><><EFBFBD>߶<EFBFBD>·)
|
||||
#define SYSTEM_EVENT_GPSBD_CONNECT_ANTENNA_OK 63 // GPSBD<42><44><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
|
||||
#define SYSTEM_EVENT_GPSBD_CONNECT_LOCATE_OK 64 // GPSBD<42>Ѷ<EFBFBD>λ
|
||||
|
||||
|
||||
|
||||
|
||||
// <20><>Ƶ<EFBFBD><C6B5><EFBFBD>¼<EFBFBD>
|
||||
#define SYSTEM_EVENT_VIDEOITEM_LOW_SPACE 80 // <20><>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD>ѭ<EFBFBD><D1AD><EFBFBD>ռ<EFBFBD><D5BC>ͣ<EFBFBD><CDA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ռ<EFBFBD>ÿռ<C3BF>̫<EFBFBD><CCAB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʽ<EFBFBD><CABD><EFBFBD>ļ<EFBFBD>ռ<EFBFBD>ô<EFBFBD><C3B4>̿ռ<CCBF>̫<EFBFBD><CCAB>
|
||||
// <09><><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC>ڿ<EFBFBD><DABF><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>Ƶ<EFBFBD><C6B5>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD>з<EFBFBD><D0B7><EFBFBD><EFBFBD><EFBFBD>
|
||||
// "ѭ<><D1AD>¼<EFBFBD><C2BC><EFBFBD>ռ䲻<D5BC>㣬<EFBFBD><E3A3AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD><EFBFBD>¸<EFBFBD>ʽ<EFBFBD><CABD>"
|
||||
|
||||
#define SYSTEM_EVENT_VIDEOITEM_LOW_SPEED 81 // <20><>Ƶ<EFBFBD><C6B5><EFBFBD>ļ<EFBFBD>д<EFBFBD><D0B4><EFBFBD>ٶȵ<D9B6>(<28><><EFBFBD>ٿ<EFBFBD><D9BF><EFBFBD><EFBFBD>ļ<EFBFBD>ϵͳ<CFB5><CDB3>Ƭ<EFBFBD><C6AC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ᵼ<EFBFBD><E1B5BC>)
|
||||
// <09><><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC>ڼ<EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD>з<EFBFBD><D0B7><EFBFBD><EFBFBD><EFBFBD>
|
||||
// <09><>д<EFBFBD><D0B4><EFBFBD>ٶ<EFBFBD><D9B6><EFBFBD><EFBFBD><EFBFBD><DEB7><EFBFBD><EFBFBD><EFBFBD>ʵʱ<CAB5><CAB1>¼ʱ(<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ض<EFBFBD>֡<EFBFBD><D6A1><EFBFBD><EFBFBD>)<29><><EFBFBD><EFBFBD><EFBFBD>Ѹ<EFBFBD>ʽ<EFBFBD><CABD>SD<53><44>
|
||||
// "SD<53><44>д<EFBFBD><D0B4><EFBFBD>ٶȽ<D9B6><C8BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><D2AA><EFBFBD>¸<EFBFBD>ʽ<EFBFBD><CABD>"
|
||||
|
||||
#define SYSTEM_EVENT_VIDEOITEM_LOW_PREFORMANCE 82 // <20>ļ<EFBFBD>ϵͳ<CFB5>IJ<EFBFBD><C4B2><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ã<EFBFBD>ȷ<EFBFBD><C8B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƶ<EFBFBD><C6B5>¼<EFBFBD><C2BC>Ҫ<EFBFBD><D2AA>
|
||||
// һ<><D2BB>ָSD<53><44><EFBFBD>Ĵش<C4B4>С̫С<CCAB><D0A1><EFBFBD><EFBFBD><EFBFBD>¿<EFBFBD><C2BF><EFBFBD>д<EFBFBD>ٶ<EFBFBD><D9B6><EFBFBD><DEB7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƶʵʱ<CAB5><CAB1>д<EFBFBD><D0B4>
|
||||
// <09><><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC>ڿ<EFBFBD><DABF><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>
|
||||
// <09><><EFBFBD><EFBFBD>Ҫ<EFBFBD><D2AA><EFBFBD>Ѹ<EFBFBD>ʽ<EFBFBD><CABD>SD<53><44>
|
||||
// "SD<53><44><EFBFBD><EFBFBD>дЧ<D0B4>ʽϵͣ<CFB5><CDA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><D2AA><EFBFBD>¸<EFBFBD>ʽ<EFBFBD><CABD>"
|
||||
#define SYSTEM_EVENT_VIDEOITEM_ERROR 83 // <09><>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD><EFBFBD>ݿ<EFBFBD><DDBF>쳣<EFBFBD><ECB3A3><EFBFBD><EFBFBD>Ҫ<EFBFBD><D2AA>ʽ<EFBFBD><CABD>SD<53><44>
|
||||
// <09><><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC>ڿ<EFBFBD><DABF><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>
|
||||
|
||||
#define SYSTEM_EVENT_VIDEOITEM_RECYCLE_CONSUMED 84 // <09><>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD><EFBFBD>ݿ<EFBFBD><DDBF>쳣<EFBFBD><ECB3A3><EFBFBD><EFBFBD>ѭ<EFBFBD><D1AD>ʹ<EFBFBD>õ<EFBFBD><C3B5><EFBFBD>Դ<EFBFBD>Ѻľ<D1BA><C4BE><EFBFBD>
|
||||
// <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƶ<EFBFBD>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ѵﵽϵͳ<CFB5><CDB3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
// <09><>Ҫ<EFBFBD>ֹ<EFBFBD>ɾ<EFBFBD><C9BE><EFBFBD><EFBFBD>Ƶ<EFBFBD><C6B5><EFBFBD>߸<EFBFBD>ʽ<EFBFBD><CABD>SD<53><44>
|
||||
// <09><><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC>ڿ<EFBFBD>¼<EFBFBD>ƹ<EFBFBD><C6B9><EFBFBD><EFBFBD>з<EFBFBD><D0B7><EFBFBD>
|
||||
// "<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD>, ¼<><C2BC><EFBFBD><EFBFBD>ֹͣ, <20><>ɾ<EFBFBD><C9BE><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¸<EFBFBD>ʽ<EFBFBD><CABD>"
|
||||
|
||||
#define SYSTEM_EVENT_VIDEOITEM_LOW_SPACE_ALARM 85 // <20><>ѭ<EFBFBD><D1AD>¼<EFBFBD><C2BC>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD><D6B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD>
|
||||
// <09><><EFBFBD>յ<EFBFBD>ǰ<EFBFBD><C7B0>¼<EFBFBD><C2BC><EFBFBD><EFBFBD>Ƶƽ<C6B5><C6BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, SD<53><44><EFBFBD><EFBFBD>ѭ<EFBFBD><D1AD>¼<EFBFBD><C2BC><EFBFBD>ռ<EFBFBD><D5BC><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD>ڶ<EFBFBD><DAB6><EFBFBD><EFBFBD>ı<EFBFBD><C4B1><EFBFBD><EFBFBD><EFBFBD>ֵ
|
||||
// "<22><>ѭ<EFBFBD><D1AD>¼<EFBFBD><C2BC>ʱ<EFBFBD><CAB1><EFBFBD>ѵ<EFBFBD><D1B5>ڱ<EFBFBD><DAB1><EFBFBD><EFBFBD><EFBFBD>ֵ"
|
||||
|
||||
// ϵͳ<CFB5><CDB3><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD>
|
||||
#define SYSTEM_EVENT_SYSTEM_UPDATE_FILE_CHECKED 90 // <20>ҵ<EFBFBD><D2B5>Ϸ<EFBFBD><CFB7><EFBFBD>ϵͳ<CFB5><CDB3><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>
|
||||
|
||||
#define SYSTEM_EVENT_SYSTEM_UPDATE_FILE_MISSED 91 // <20><EFBFBD><DEB7>ҵ<EFBFBD>ϵͳ<CFB5><CDB3><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD>
|
||||
// <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD>ܺ<EFBFBD>(<28><><EFBFBD><EFBFBD><EFBFBD>쳣)<29><><EFBFBD>´<EFBFBD><C2B4><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD>뵽ϵͳ<CFB5><CDB3><EFBFBD><EFBFBD>ģʽ<C4A3><CABD>
|
||||
// <09><><EFBFBD><EFBFBD><DEB7>ҵ<EFBFBD><D2B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD>Ͷ<EFBFBD>ݸ<EFBFBD>ϵͳ<CFB5>¼<EFBFBD>
|
||||
#define SYSTEM_EVENT_SYSTEM_UPDATE_FILE_ILLEGAL 92 // <20>Ƿ<EFBFBD><C7B7><EFBFBD>ϵͳ<CFB5><CDB3><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>
|
||||
//
|
||||
#define SYSTEM_EVENT_SYSTEM_UPDATE_SUCCESS 93
|
||||
#define SYSTEM_EVENT_SYSTEM_UPDATE_FAILURE 94
|
||||
|
||||
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD>״ﱨ<D7B4><EFB1A8><EFBFBD>¼<EFBFBD>
|
||||
#define SYSTEM_EVENT_RADAR_ALARM (100) // <20><><EFBFBD><EFBFBD><EFBFBD>״<EFBFBD><D7B4>źű<C5BA><C5B1><EFBFBD>
|
||||
|
||||
|
||||
//#define SYSTEM_EVENT_RECORD_SPACE
|
||||
// CCD<43>Ͽ<EFBFBD><CFBF>¼<EFBFBD>
|
||||
#define SYSTEM_EVENT_CCD0_LOST_CONNECT 110
|
||||
#define SYSTEM_EVENT_CCD1_LOST_CONNECT 111
|
||||
#define SYSTEM_EVENT_CCD2_LOST_CONNECT 112
|
||||
#define SYSTEM_EVENT_CCD3_LOST_CONNECT 113
|
||||
#define SYSTEM_EVENT_CCD4_LOST_CONNECT 114
|
||||
#define SYSTEM_EVENT_CCD5_LOST_CONNECT 115
|
||||
#define SYSTEM_EVENT_CCD6_LOST_CONNECT 116
|
||||
#define SYSTEM_EVENT_CCD7_LOST_CONNECT 117
|
||||
#define SYSTEM_EVENT_CCD8_LOST_CONNECT 118
|
||||
#define SYSTEM_EVENT_CCD9_LOST_CONNECT 119
|
||||
#define SYSTEM_EVENT_CCDA_LOST_CONNECT 120
|
||||
#define SYSTEM_EVENT_CCDB_LOST_CONNECT 121
|
||||
#define SYSTEM_EVENT_CCDC_LOST_CONNECT 122
|
||||
#define SYSTEM_EVENT_CCDD_LOST_CONNECT 123
|
||||
#define SYSTEM_EVENT_CCDE_LOST_CONNECT 124
|
||||
#define SYSTEM_EVENT_CCDF_LOST_CONNECT 125
|
||||
|
||||
// CCD<43><44><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD>
|
||||
#define SYSTEM_EVENT_CCD0_CONNECT 130
|
||||
#define SYSTEM_EVENT_CCD1_CONNECT 131
|
||||
#define SYSTEM_EVENT_CCD2_CONNECT 132
|
||||
#define SYSTEM_EVENT_CCD3_CONNECT 133
|
||||
#define SYSTEM_EVENT_CCD4_CONNECT 134
|
||||
#define SYSTEM_EVENT_CCD5_CONNECT 135
|
||||
#define SYSTEM_EVENT_CCD6_CONNECT 136
|
||||
#define SYSTEM_EVENT_CCD7_CONNECT 137
|
||||
#define SYSTEM_EVENT_CCD8_CONNECT 138
|
||||
#define SYSTEM_EVENT_CCD9_CONNECT 139
|
||||
#define SYSTEM_EVENT_CCDA_CONNECT 140
|
||||
#define SYSTEM_EVENT_CCDB_CONNECT 141
|
||||
#define SYSTEM_EVENT_CCDC_CONNECT 142
|
||||
#define SYSTEM_EVENT_CCDD_CONNECT 143
|
||||
#define SYSTEM_EVENT_CCDE_CONNECT 144
|
||||
#define SYSTEM_EVENT_CCDF_CONNECT 145
|
||||
|
||||
|
||||
#define XM_BARCODE 0x11 // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD>
|
||||
// wp, lp<6C><70><EFBFBD><EFBFBD>Ϊ0
|
||||
|
||||
#define XM_USB 0x12 // USB<53><42><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD>
|
||||
// wp USB<53>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD>
|
||||
// lp <20><><EFBFBD><EFBFBD>Ϊ0
|
||||
|
||||
#define XM_VIDEOSTOP 0x20 // <20><>Ƶ<EFBFBD><C6B5><EFBFBD>Ž<EFBFBD><C5BD><EFBFBD><EFBFBD><EFBFBD>Ϣ
|
||||
// wp <20>˳<EFBFBD><CBB3><EFBFBD> (<28>ο<EFBFBD>app_video.h<><68><EFBFBD><EFBFBD>)
|
||||
// <20><>Ƶ<EFBFBD><C6B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ(XM_VIDEOSTOP)<29><><EFBFBD>˳<EFBFBD><CBB3><EFBFBD>(8bit)<29><><EFBFBD><EFBFBD>
|
||||
#define AP_VIDEOEXITCODE_FINISH 0x00 // <20><><EFBFBD>벥<EFBFBD>Ž<EFBFBD><C5BD><EFBFBD>
|
||||
#define AP_VIDEOEXITCODE_LOWVOLTAGE 0x01 // <20><>ѹ<EFBFBD>쳣<EFBFBD><ECB3A3><EFBFBD><EFBFBD>
|
||||
#define AP_VIDEOEXITCODE_STREAMERROR 0x02 // <20><><EFBFBD><EFBFBD>ʽ<EFBFBD><CABD><EFBFBD><EFBFBD>
|
||||
#define AP_VIDEOEXITCODE_OTHERERROR 0x03 // <20><><EFBFBD><EFBFBD><EFBFBD>쳣(<28><>SD<53><44><EFBFBD>쳣<EFBFBD><ECB3A3><EFBFBD>ļ<EFBFBD>ϵͳ<CFB5>쳣<EFBFBD><ECB3A3>)
|
||||
|
||||
#define XM_USER 0x80 // <20>û<EFBFBD><C3BB>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD>Ϣ(0x80 ~ 0xFF)
|
||||
|
||||
// Window<6F>Ӵ<EFBFBD><D3B4><EFBFBD>־<EFBFBD><D6BE><EFBFBD><EFBFBD>
|
||||
#define HWND_DISPATCH ((BYTE)0x01) // <20><>Ϣ<EFBFBD>ɷ<EFBFBD><C9B7><EFBFBD>
|
||||
#define HWND_DIRTY ((BYTE)0x02) // <20><>ʶ<EFBFBD><CAB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD>ػ<EFBFBD>(<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>пؼ<D0BF>)
|
||||
#define HWND_ANIMATE ((BYTE)0x80) // <20><>ʶ<EFBFBD>Ӵ<EFBFBD>֧<EFBFBD>ֶ<EFBFBD><D6B6><EFBFBD>Ч<EFBFBD><D0A7>
|
||||
|
||||
// Widget<65>ؼ<EFBFBD><D8BC><EFBFBD>־<EFBFBD><D6BE><EFBFBD><EFBFBD>
|
||||
#define WDGT_VISUAL ((BYTE)0x01) // <20><>ʶ<EFBFBD>ؼ<EFBFBD><D8BC><EFBFBD><EFBFBD>ڿ<EFBFBD><DABF><EFBFBD>״̬
|
||||
#define WDGT_ENABLE ((BYTE)0x02) // <20><>ʶ<EFBFBD>ؼ<EFBFBD><D8BC><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD><CAB9>״̬
|
||||
#define WDGT_FOCUS ((BYTE)0x04) // <20><>ʶ<EFBFBD>ؼ<EFBFBD><D8BC><EFBFBD><EFBFBD>пɾ۽<C9BE><DBBD><EFBFBD><EFBFBD>ԣ<EFBFBD><D4A3><EFBFBD><EFBFBD>ɱ<EFBFBD><C9B1>۽<EFBFBD>
|
||||
#define WDGT_SELECT ((BYTE)0x08) // <20><>ʶ<EFBFBD>ؼ<EFBFBD><D8BC><EFBFBD><EFBFBD><EFBFBD>ѡ<EFBFBD><D1A1>״̬ (CheckBox<6F>ؼ<EFBFBD><D8BC>ɾ<EFBFBD><C9BE>иñ<D0B8>־)
|
||||
#define WDGT_FOCUSED ((BYTE)0x10) // <20><>ʶ<EFBFBD>ؼ<EFBFBD><D8BC><EFBFBD><EFBFBD>ھ۽<DABE>״̬<D7B4><CCAC><EFBFBD><EFBFBD>ӵ<EFBFBD><D3B5><EFBFBD><EFBFBD><EFBFBD>뽹<EFBFBD><EBBDB9>
|
||||
#define WDGT_DIRTY ((BYTE)0x20) // <20><>ʶ<EFBFBD>ؼ<EFBFBD><D8BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>״̬<D7B4><CCAC><EFBFBD><EFBFBD>Ҫ<EFBFBD>ػ<EFBFBD>
|
||||
|
||||
#define WIDGET_IS_FOCUS(flag) ((flag) & WDGT_FOCUS)
|
||||
#define WIDGET_IS_FOCUSED(flag) ((flag) & WDGT_FOCUSED)
|
||||
#define WIDGET_IS_SELECT(flag) ((flag) & WDGT_SELECT)
|
||||
#define WIDGET_IS_ENABLE(flag) ((flag) & WDGT_ENABLE)
|
||||
#define WIDGET_IS_VISUAL(flag) ((flag) & WDGT_VISUAL)
|
||||
#define WIDGET_IS_DIRTY(flag) ((flag) & WDGT_DIRTY)
|
||||
|
||||
#define HWND_VIEW 0x01 // <20>Ӵ<EFBFBD><D3B4><EFBFBD><EFBFBD><EFBFBD>
|
||||
#define HWND_ALERT 0x02 // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
#define HWND_EVENT 0x03 // ֪ͨ<CDA8><D6AA><EFBFBD><EFBFBD>
|
||||
|
||||
#define XM_VIEW_DEFAULT_ALPHA 255 // <20>Ӵ<EFBFBD>ȱʡ<CAA1><CDB8><EFBFBD><EFBFBD>
|
||||
|
||||
// ȱʡ<C8B1><CAA1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
#define HWND_CUSTOM_DEFAULT ((DWORD)(0))
|
||||
|
||||
// <20><>ȡ<EFBFBD>Ӵ<EFBFBD><D3B4>ص<EFBFBD><D8B5><EFBFBD><EFBFBD><EFBFBD>
|
||||
#define XMPROC(hwnd) HWND_##hwnd##_WindowProc
|
||||
|
||||
// <20>Ӵ<EFBFBD><D3B4>ص<EFBFBD><D8B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
#define XMPROC_DECLARE(hwnd) \
|
||||
extern void HWND_##hwnd##_WindowProc (XMMSG *msg);
|
||||
|
||||
// <20>Ӵ<EFBFBD><D3B4>ص<EFBFBD><D8B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>忪ʼ
|
||||
#define XM_MESSAGE_MAP_BEGIN(hwnd) \
|
||||
void HWND_##hwnd##_WindowProc (XMMSG *msg) {
|
||||
|
||||
// <20><>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
#define XM_ON_MESSAGE(event,proc) \
|
||||
if(msg->message == event) \
|
||||
{ \
|
||||
proc (msg); \
|
||||
return; \
|
||||
}
|
||||
|
||||
// <20>Ӵ<EFBFBD><D3B4>ص<EFBFBD><D8B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
#define XM_MESSAGE_MAP_END \
|
||||
XM_DefaultProc (msg); \
|
||||
}
|
||||
|
||||
// <20>Ӵ<EFBFBD><D3B4><EFBFBD><EFBFBD><EFBFBD>
|
||||
#define XMHWND_DEFINE(x,y,cx,cy,hwnd,erase,lpWidget,cbWidget,alpha,type) \
|
||||
XMHWND hWnd_##hwnd## = {\
|
||||
x,y,cx,cy, \
|
||||
XMPROC(hwnd), \
|
||||
lpWidget, cbWidget, \
|
||||
alpha, \
|
||||
erase, \
|
||||
type, \
|
||||
0, 0, 0, 0 \
|
||||
};
|
||||
|
||||
#define XMHWND_DECLARE(hwnd) extern XMHWND hWnd_##hwnd##;
|
||||
|
||||
// <20><>ȡ<EFBFBD>Ӵ<EFBFBD><D3B4>ص<EFBFBD><D8B5><EFBFBD><EFBFBD><EFBFBD>
|
||||
#define XMWDGTPROC(hwnd) WDGT_##hwnd##_WindowProc
|
||||
|
||||
// <20>Ӵ<EFBFBD><D3B4>ص<EFBFBD><D8B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
#define XMWDGTPROC_DECLARE(hwnd) \
|
||||
extern void WDGT_##hwnd##_WindowProc (const XMWDGT *pWidget, BYTE bWidgetFlag, void *pUserData, XMMSG *msg);
|
||||
|
||||
// <20>Ӵ<EFBFBD><D3B4>ص<EFBFBD><D8B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>忪ʼ
|
||||
#define WIDGET_MESSAGE_MAP_BEGIN(hwnd) \
|
||||
void WDGT_##hwnd##_WindowProc (const XMWDGT *pWidget,BYTE bWidgetFlag,void *pUserData,XMMSG *msg) {
|
||||
|
||||
// <20><>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
#define WIDGET_ON_MESSAGE(event,proc) \
|
||||
if(msg->message == event) \
|
||||
{ \
|
||||
proc (pWidget,bWidgetFlag,pUserData,msg); \
|
||||
return; \
|
||||
}
|
||||
|
||||
// <20>Ӵ<EFBFBD><D3B4>ص<EFBFBD><D8B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
#define WIDGET_MESSAGE_MAP_END \
|
||||
}
|
||||
|
||||
// <20><>Ϣ<EFBFBD><CFA2><EFBFBD>ݿ<EFBFBD><DDBF><EFBFBD>ѡ<EFBFBD><D1A1>
|
||||
#define XMMSG_OPTION_SYSTEMEVENT_DEFAULT_PROCESS 0x00000001 // <20><><EFBFBD><EFBFBD>ϵͳ<CFB5>¼<EFBFBD><C2BC><EFBFBD>Ϣ<EFBFBD><CFA2>ȱʡ<C8B1><CAA1><EFBFBD><EFBFBD>
|
||||
|
||||
// structure definition
|
||||
// <20><>Ϣ<EFBFBD>ṹ<EFBFBD><E1B9B9><EFBFBD><EFBFBD>
|
||||
typedef struct tagXMMSG {
|
||||
WORD message; // <20><>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD>
|
||||
WORD wp; // <20><>Ϣ<EFBFBD>ֽڲ<D6BD><DAB2><EFBFBD>
|
||||
DWORD lp; // <20><>Ϣ<EFBFBD>ֲ<EFBFBD><D6B2><EFBFBD>
|
||||
DWORD option; // <20><>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD>ѡ<EFBFBD><D1A1>
|
||||
} XMMSG;
|
||||
|
||||
// <20>Ӵ<EFBFBD>ջ<EFBFBD><D5BB><EFBFBD><EFBFBD>
|
||||
typedef struct _HWND_NODE {
|
||||
HANDLE hwnd;
|
||||
BYTE * lpWidgetFlag; // <20>Ӵ<EFBFBD><D3B4><EFBFBD><EFBFBD>ӿؼ<D3BF><D8BC><EFBFBD>־
|
||||
void ** UserData; // <20>Ӵ<EFBFBD><D3B4>ӿؼ<D3BF><D8BC><EFBFBD><EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD>
|
||||
void * PrivateData; // <20><><EFBFBD>ڵ<EFBFBD>˽<EFBFBD><CBBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
BYTE flag; // <20>Ӵ<EFBFBD><D3B4><EFBFBD>״̬<D7B4><CCAC>־
|
||||
BYTE cbWidget; // <20>ӿؼ<D3BF><D8BC><EFBFBD><EFBFBD><EFBFBD>
|
||||
|
||||
BYTE alpha; // <20>Ӵ<EFBFBD>alpha<68><61><EFBFBD><EFBFBD>
|
||||
|
||||
|
||||
UINT animatingDirection;
|
||||
//xm_osd_framebuffer_t framebuffer;
|
||||
} HWND_NODE;
|
||||
|
||||
// <20><>ȡ<EFBFBD>Ӵ<EFBFBD><D3B4>ṹ<EFBFBD>ľ<EFBFBD><C4BE><EFBFBD>
|
||||
#define XMHWND_HANDLE(hwnd) ((HANDLE)(&(hWnd_##hwnd##)))
|
||||
|
||||
#define ADDRESS_OF_HANDLE(handle) ((void *)(handle))
|
||||
|
||||
// typedef definition
|
||||
typedef void (*XMWNDPROC)(XMMSG *);
|
||||
|
||||
typedef struct tagXMWND {
|
||||
// XMWNDPROC lpfnWndProc; // <20>ؼ<EFBFBD><D8BC><EFBFBD>Ϣ<EFBFBD>ص<EFBFBD><D8B5><EFBFBD><EFBFBD><EFBFBD>
|
||||
XMCOORD _x; // <20>ؼ<EFBFBD>X<EFBFBD><58><EFBFBD><EFBFBD>(<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
|
||||
XMCOORD _y; // <20>ؼ<EFBFBD>X<EFBFBD><58><EFBFBD><EFBFBD>(<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
|
||||
XMCOORD _cx; // <20>ؼ<EFBFBD><D8BC><EFBFBD><EFBFBD><EFBFBD>
|
||||
XMCOORD _cy; // <20>ؼ<EFBFBD><D8BC>߶<EFBFBD>
|
||||
} XMWND;
|
||||
|
||||
typedef struct tagXMWDGT {
|
||||
// XMWNDPROC lpfnWndProc; // <20>ؼ<EFBFBD><D8BC><EFBFBD>Ϣ<EFBFBD>ص<EFBFBD><D8B5><EFBFBD><EFBFBD><EFBFBD>
|
||||
XMCOORD _x; // <20>ؼ<EFBFBD>X<EFBFBD><58><EFBFBD><EFBFBD>(<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
|
||||
XMCOORD _y; // <20>ؼ<EFBFBD>X<EFBFBD><58><EFBFBD><EFBFBD>(<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
|
||||
XMCOORD _cx; // <20>ؼ<EFBFBD><D8BC><EFBFBD><EFBFBD><EFBFBD>
|
||||
XMCOORD _cy; // <20>ؼ<EFBFBD><D8BC>߶<EFBFBD>
|
||||
|
||||
DWORD dwTitleID; // <20>ؼ<EFBFBD><D8BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ı<EFBFBD><C4B1><EFBFBD><EFBFBD><EFBFBD>ԴID.
|
||||
// 0 <20><>ʾ<EFBFBD>Ӵ<EFBFBD><D3B4><EFBFBD><EFBFBD>ƣ<EFBFBD><C6A3><EFBFBD><EFBFBD>Ӵ<EFBFBD><D3B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD>Ŀؼ<C4BF><D8BC>ı<EFBFBD><C4B1><EFBFBD><EFBFBD>ú<EFBFBD><C3BA><EFBFBD><EFBFBD><EFBFBD>XM_XXXSetText
|
||||
// (DWORD)(-1)<29><>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>簴ťΪͼƬʱ
|
||||
|
||||
WORD wForBmpID; // ǰ<><C7B0>ͼƬID, 0 <20><>ʾ<EFBFBD><CABE>ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD>Button<6F>ж<EFBFBD>Ӧ<EFBFBD><D3A6><EFBFBD>ͷ<EFBFBD>ʱ<EFBFBD><CAB1>ͼƬЧ<C6AC><D0A7>
|
||||
WORD wBkgBmpID; // <20><><EFBFBD><EFBFBD>ͼƬID, 0 <20><>ʾ<EFBFBD><CABE>ͼƬ<CDBC><C6AC><EFBFBD><EFBFBD>Button<6F>ж<EFBFBD>Ӧ<EFBFBD>ڰ<EFBFBD><DAB0><EFBFBD>ʱ<EFBFBD><CAB1>ͼƬЧ<C6AC><D0A7>
|
||||
WORD wDisBmpID; // <20><>ֹ״̬ͼƬID, 0 <20><>ʾ<EFBFBD><CABE>ͼƬ
|
||||
|
||||
BYTE bHotKey; // <20><><EFBFBD>ؼ<EFBFBD><D8BC><EFBFBD>Ӧ<EFBFBD><D3A6><EFBFBD>ȼ<EFBFBD><C8BC><EFBFBD>0 <20><>ʾ<EFBFBD><CABE><EFBFBD>ȼ<EFBFBD><C8BC><EFBFBD>Ӧ
|
||||
BYTE bCommand; // <20>ؼ<EFBFBD><D8BC><EFBFBD><EFBFBD>0 <20><>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD>
|
||||
// <09>ؼ<EFBFBD><D8BC>ȼ<EFBFBD><C8BC><EFBFBD><EFBFBD>»<EFBFBD><C2BB>۽<EFBFBD>״̬<D7B4>°<EFBFBD><C2B0>¿ոؼ<F1A3ACBF><D8BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ͷ<EFBFBD>ݵ<EFBFBD><DDB5><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD>С<EFBFBD>
|
||||
BYTE bFlag; // <20>ؼ<EFBFBD><D8BC><EFBFBD>ʼ״̬<D7B4><CCAC><EFBFBD><EFBFBD> Widget<65>ؼ<EFBFBD><D8BC><EFBFBD>־<EFBFBD><D6BE><EFBFBD><EFBFBD>
|
||||
BYTE bType; // <20>ӿؼ<D3BF><D8BC><EFBFBD><EFBFBD>͡<EFBFBD>ͨ<EFBFBD><CDA8><EFBFBD>ؼ<EFBFBD><D8BC><EFBFBD><EFBFBD>ͻ<EFBFBD>ȡ<EFBFBD>ؼ<EFBFBD><D8BC>Ļص<C4BB><D8B5><EFBFBD><EFBFBD><EFBFBD>
|
||||
|
||||
} XMWDGT;
|
||||
|
||||
|
||||
// <20>Ӵ<EFBFBD><D3B4>ṹ<EFBFBD><E1B9B9><EFBFBD><EFBFBD> (32<33>ֽڣ<D6BD>Cache line aligned)
|
||||
typedef struct tagXMHWND {
|
||||
XMCOORD _x; // <20>Ӵ<EFBFBD>X<EFBFBD><58><EFBFBD><EFBFBD>(<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
|
||||
XMCOORD _y; // <20>Ӵ<EFBFBD>Y<EFBFBD><59><EFBFBD><EFBFBD>(<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
|
||||
XMCOORD _cx; // <20>Ӵ<EFBFBD><D3B4><EFBFBD><EFBFBD><EFBFBD>
|
||||
XMCOORD _cy; // <20>Ӵ<EFBFBD><D3B4><EFBFBD><EFBFBD><EFBFBD>
|
||||
|
||||
XMWNDPROC lpfnWndProc; // <20>Ӵ<EFBFBD><D3B4><EFBFBD>Ϣ<EFBFBD>ص<EFBFBD><D8B5><EFBFBD><EFBFBD><EFBFBD>
|
||||
|
||||
|
||||
|
||||
const XMWDGT *lpWidget; // <20>Ӵ<EFBFBD><D3B4>ӿؼ<D3BF><D8BC>б<EFBFBD>
|
||||
// <09>ؼ<EFBFBD><D8BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ROM<4F>У<EFBFBD><D0A3><EFBFBD>СRAM<41><4D><EFBFBD><EFBFBD><EFBFBD><EFBFBD><F3A3ACB2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
// <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀؼ<C4BF><D8BC>ı<EFBFBD>־(Flag), <20><> Widget<65>ؼ<EFBFBD><D8BC><EFBFBD>־<EFBFBD><D6BE><EFBFBD><EFBFBD>
|
||||
BYTE cbWidget; // <20>ؼ<EFBFBD><D8BC>ĸ<EFBFBD><C4B8><EFBFBD>
|
||||
BYTE alpha; // <><CDB8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Alpha<68><61>0 ȫ<C8AB><CDB8> 255 ȫ<><C8AB><EFBFBD><EFBFBD>
|
||||
BYTE erase; // <20>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>, 0 <20><>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 1 <20><>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
BYTE type; // <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (<28>Ӵ<EFBFBD><D3B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)
|
||||
|
||||
XMCOORD view_x; // <20>Ӵ<EFBFBD><D3B4><EFBFBD><EFBFBD>ڵ<EFBFBD>x<EFBFBD><78><EFBFBD><EFBFBD>
|
||||
XMCOORD view_y; // <20>Ӵ<EFBFBD><D3B4><EFBFBD><EFBFBD>ڵ<EFBFBD>y<EFBFBD><79><EFBFBD><EFBFBD>
|
||||
XMCOORD view_cx; // <20>Ӵ<EFBFBD><D3B4><EFBFBD><EFBFBD>ڵĿ<DAB5><C4BF><EFBFBD>
|
||||
XMCOORD view_cy; // <20>Ӵ<EFBFBD><D3B4><EFBFBD><EFBFBD>ڵĸ߶<C4B8>
|
||||
DWORD scale_mode; // <20>Ӵ<EFBFBD><D3B4><EFBFBD><EFBFBD><EFBFBD>ģʽ<C4A3><CABD>
|
||||
// 0 --> <20>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD>ģʽ(ȱʡ<C8B1><CAA1><EFBFBD><EFBFBD>)
|
||||
// 1 --> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ģʽ
|
||||
|
||||
|
||||
} XMHWND, *PXMHWND;
|
||||
|
||||
// function protocol type
|
||||
|
||||
// <20><>ȡ<EFBFBD><C8A1>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA>ʱ<EFBFBD><CAB1><EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
// <20>˺<EFBFBD><CBBA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ں<EFBFBD>ʹ<EFBFBD>ã<EFBFBD>Ӧ<EFBFBD>ó<EFBFBD><C3B3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD>á<EFBFBD>
|
||||
// XMBOOL XM_GetMessage (XMMSG *msg);
|
||||
|
||||
// <20><><EFBFBD><EFBFBD>ָ<EFBFBD><D6B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2>
|
||||
// msg<73><67>ΪNULL<4C><4C><EFBFBD><EFBFBD>ɾ<EFBFBD><C9BE>ָ<EFBFBD><D6B8><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
|
||||
// bMsgFilterMin = 0 && bMsgFilterMax = 0<><30>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
|
||||
// <20>ɹ<EFBFBD><C9B9><EFBFBD><EFBFBD><EFBFBD>TRUE<55><45>ʧ<EFBFBD>ܷ<EFBFBD><DCB7><EFBFBD>FALSE
|
||||
XMBOOL XM_PeekMessage(XMMSG *msg, BYTE bMsgFilterMin, BYTE bMsgFilterMax);
|
||||
|
||||
//
|
||||
XMBOOL XM_GetMessage (XMMSG *msg);
|
||||
|
||||
// <20><><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD>Ͷ<EFBFBD><CDB6><EFBFBD><EFBFBD>Ϣ
|
||||
XMBOOL XM_PostMessage (WORD message, WORD wp, DWORD lp);
|
||||
|
||||
// ֱ<>ӵ<EFBFBD><D3B5><EFBFBD><EFBFBD>Ӵ<EFBFBD><D3B4>ص<EFBFBD><D8B5><EFBFBD><EFBFBD><EFBFBD>
|
||||
// XMBOOL XM_SendMessage (WORD message, WORD wp, DWORD lp); // <20><>ȡ<EFBFBD><C8A1><EFBFBD>ú<EFBFBD><C3BA><EFBFBD>
|
||||
|
||||
// <20>ɷ<EFBFBD><C9B7><EFBFBD>Ϣ
|
||||
XMBOOL XM_DispatchMessage (XMMSG *msg);
|
||||
|
||||
// <20><>ֹϵͳ<CFB5>¼<EFBFBD><C2BC><EFBFBD>Ϣ<EFBFBD><CFA2>ȱʡ<C8B1><CAA1><EFBFBD><EFBFBD>
|
||||
void XM_BreakSystemEventDefaultProcess (XMMSG *msg);
|
||||
|
||||
// Ͷ<><CDB6><EFBFBD><EFBFBD>Ϣѭ<CFA2><D1AD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
|
||||
// wExitCode <20><><EFBFBD><EFBFBD>
|
||||
#define XMEXIT_REBOOT (1) // <20><><EFBFBD><EFBFBD>
|
||||
#define XMEXIT_SLEEP (2) // <20>ػ<EFBFBD>
|
||||
#define XMEXIT_EXCEPT (3) // <20>쳣
|
||||
#define XMEXIT_CHANGE_RESOLUTION (3) // <20><EFBFBD>UI<55>ֱ<EFBFBD><D6B1><EFBFBD><EFBFBD>¼<EFBFBD>
|
||||
|
||||
XMBOOL XM_PostQuitMessage (WORD wExitCode);
|
||||
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD><EFBFBD>е<EFBFBD><D0B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
|
||||
void XM_FlushMessage (void);
|
||||
|
||||
// ɾ<><C9BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>з<EFBFBD>COMMAND<4E><44>Ϣ
|
||||
void XM_FlushMessageExcludeCommandAndSystemEvent (void);
|
||||
|
||||
// <20><><EFBFBD>ü<EFBFBD><C3BC><EFBFBD>ȡ˽<C8A1><CBBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
XMBOOL XM_SetWindowPrivateData (HANDLE hWnd, void *PrivateData);
|
||||
void * XM_GetWindowPrivateData (HANDLE hWnd);
|
||||
|
||||
// <20><><EFBFBD>ö<EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>msΪ<73><CEAA>λ<EFBFBD><CEBB><EFBFBD><EFBFBD>idTimerΪ<72><CEAA>ʱ<EFBFBD><CAB1>ID
|
||||
XMBOOL XM_SetTimer (BYTE idTimer , DWORD dwTimeout);
|
||||
|
||||
// ɾ<><C9BE><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
|
||||
XMBOOL XM_KillTimer (BYTE idTimer);
|
||||
|
||||
// ϵͳȱʡ<C8B1><CAA1>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
void XM_DefaultProc (XMMSG *msg);
|
||||
|
||||
// ϵͳ<CFB5>¼<EFBFBD><C2BC><EFBFBD>Ϣȱʡ<C8B1><CAA1><EFBFBD><EFBFBD>
|
||||
// hWnd <20><>ǰ<EFBFBD>Ӵ<EFBFBD><D3B4><EFBFBD><EFBFBD><EFBFBD>
|
||||
// msg ϵͳ<CFB5>¼<EFBFBD><C2BC><EFBFBD>Ϣ
|
||||
void XM_DefaultSystemEventProc (HANDLE hWnd, XMMSG *msg);
|
||||
|
||||
// ʹ<><CAB9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ч<EFBFBD><D0A7>ϵͳͶ<CDB3><CDB6>XM_PAINT<4E><54>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD>β<EFBFBD><CEB2>
|
||||
XMBOOL XM_InvalidateWindow (void);
|
||||
|
||||
// ʹij<CAB9><C4B3><EFBFBD>ؼ<EFBFBD><D8BC><EFBFBD>Ч<EFBFBD><D0A7>ϵͳͶ<CDB3><CDB6>XM_PAINT<4E><54>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD>β<EFBFBD><CEB2>
|
||||
XMBOOL XM_InvalidateWidget (BYTE bWidgetIndex);
|
||||
|
||||
|
||||
// ϵͳ<CFB5><CDB3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD><EFBFBD>е<EFBFBD>XM_PAINT<4E><54>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڣ<EFBFBD><DAA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD><EFBFBD>ײ<EFBFBD><D7B2><EFBFBD><EFBFBD>Ա<EFBFBD><D4B1><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><D2BB><EFBFBD><EFBFBD>Ϣѭ<CFA2><D1AD><EFBFBD><EFBFBD>XM_PAINT<4E><54>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
XMBOOL XM_UpdateWindow (void);
|
||||
|
||||
// XM_PushWindow
|
||||
// <20>ڵ<EFBFBD>ǰ<EFBFBD>Ӵ<EFBFBD><D3B4><EFBFBD>ѹ<EFBFBD><D1B9><EFBFBD>µ<EFBFBD><C2B5>Ӵ<EFBFBD><D3B4><EFBFBD>Ӧ<EFBFBD><D3A6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ҿ<EFBFBD><D2BF><EFBFBD><EFBFBD><EFBFBD><F0BCB6B7>ص<EFBFBD><D8B5><EFBFBD><EFBFBD>Ρ<EFBFBD>
|
||||
// ִ<><D6B4>Push<73><68><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD>б<EFBFBD><D0B1><EFBFBD><EFBFBD><EFBFBD>
|
||||
// <20><><EFBFBD>治<EFBFBD><E6B2BB>Ҫѹ<D2AA>뵽ջ<EBB5BD>С<EFBFBD><D0A1><EFBFBD>ջΪ<D5BB><CEAA>ʱ<EFBFBD><CAB1><EFBFBD>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ѹ<EFBFBD>뵽ջ<EBB5BD><D5BB><EFBFBD><EFBFBD>
|
||||
// <20><><EFBFBD>ֵ<EFBFBD>Ӧ<EFBFBD><D3A6><EFBFBD>У<EFBFBD><D0A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD>--><3E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>--><3E>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD>Ľ<EFBFBD><C4BD><EFBFBD>--><3E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Խ<EFBFBD><D4BD>棬<EFBFBD><E6A3AC><EFBFBD>Ӵ<EFBFBD>ջ<EFBFBD><D5BB>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD>
|
||||
// ջ<><D5BB>--> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Խ<EFBFBD><D4BD><EFBFBD>
|
||||
// <20>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD>Ľ<EFBFBD><C4BD><EFBFBD>
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
// ջ<><D5BB>--> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD>
|
||||
XMBOOL XM_PushWindow (HANDLE hWnd);
|
||||
|
||||
// <20><>ѹ<EFBFBD><D1B9><EFBFBD>µ<EFBFBD><C2B5>Ӵ<EFBFBD>ʱ<EFBFBD><CAB1>ͬʱָ<CAB1><D6B8><EFBFBD>´<EFBFBD><C2B4>ڵĶ<DAB5><C4B6><EFBFBD><EFBFBD><EFBFBD>Ϣ
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ(dwCustomData)ͨ<><CDA8>XM_ENTER<45><52>Ϣ<EFBFBD><CFA2>lp<6C><70><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
XMBOOL XM_PushWindowEx (HANDLE hWnd, DWORD dwCustomData);
|
||||
|
||||
|
||||
// XM_PullWindow
|
||||
// 1) hWnd = 0, <20><><EFBFBD><EFBFBD>ջ<EFBFBD><D5BB><EFBFBD>Ӵ<EFBFBD>,<2C><><EFBFBD>ڷ<EFBFBD><DAB7>ص<EFBFBD>ǰһ<C7B0><D2BB><EFBFBD>Ӵ<EFBFBD><D3B4><EFBFBD>
|
||||
// <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Խ<EFBFBD><D4BD>桱 <20><><EFBFBD>ص<EFBFBD> <20><><EFBFBD>ֵ<EFBFBD><D6B5><EFBFBD><EFBFBD>Ľ<EFBFBD><C4BD>桱
|
||||
//
|
||||
// 2) hWnd != 0, ѭ<><D1AD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ջ<EFBFBD><D5BB><EFBFBD>Ӵ<EFBFBD><D3B4><EFBFBD>ֱ<EFBFBD><D6B1><EFBFBD>ҵ<EFBFBD>ָ<EFBFBD><D6B8><EFBFBD><EFBFBD><EFBFBD>Ӵ<EFBFBD>(hWnd)<29><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӵ<EFBFBD><D3B4><EFBFBD>Ϊջ<CEAA><D5BB><EFBFBD>Ӵ<EFBFBD>
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><D2BB><EFBFBD>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>´<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Խ<EFBFBD><D4BD>桱 <20><><EFBFBD>ص<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʼ<EFBFBD><CABC><EFBFBD>桱
|
||||
XMBOOL XM_PullWindow (HANDLE hWnd);
|
||||
|
||||
// XM_JumpWindow
|
||||
// <20><><EFBFBD>Ӵ<EFBFBD>ջ<EFBFBD><D5BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӵ<EFBFBD><D3B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȼ<EFBFBD><C8BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>µ<EFBFBD><C2B5>Ӵ<EFBFBD><D3B4><EFBFBD>һ<EFBFBD><D2BB><EFBFBD><EFBFBD><EFBFBD>ڹ<EFBFBD><DAB9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>תʹ<D7AA><CAB9>
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӵ<EFBFBD>ջ<EFBFBD><D5BB><EFBFBD><EFBFBD><EFBFBD>£<EFBFBD><C2A3><EFBFBD><EFBFBD>¡<EFBFBD>ϵͳʱ<CDB3>䡱<EFBFBD><E4A1B1><EFBFBD>ܼ<EFBFBD><DCBC><EFBFBD><EFBFBD><EFBFBD>ֱ<EFBFBD>ӵ<EFBFBD><D3B5><EFBFBD>XM_WndGoto<74><6F><EFBFBD><EFBFBD>ת<EFBFBD><D7AA><EFBFBD><EFBFBD>ϵͳʱ<CDB3>䡱<EFBFBD><E4A1B1>
|
||||
XMBOOL XM_JumpWindow (HANDLE hWnd);
|
||||
|
||||
// <20><>ת(JUMP)<29>Ӵ<EFBFBD><D3B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ͷ<EFBFBD><CDB6><EFBFBD>
|
||||
typedef enum {
|
||||
XM_JUMP_POPDEFAULT = 0, // <09><><EFBFBD>Ӵ<EFBFBD>ջ<EFBFBD><D5BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӵ<EFBFBD><D3B4><EFBFBD><EFBFBD><EFBFBD>(<28><>ȥ<EFBFBD><C8A5><EFBFBD><EFBFBD>)<29><>Ȼ<EFBFBD><C8BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>µ<EFBFBD><C2B5>Ӵ<EFBFBD>
|
||||
XM_JUMP_POPDESKTOP, // <20><><EFBFBD>Ӵ<EFBFBD>ջ<EFBFBD><D5BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӵ<EFBFBD><D3B4><EFBFBD><EFBFBD><EFBFBD>(<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>)<29><>Ȼ<EFBFBD><C8BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>µ<EFBFBD><C2B5>Ӵ<EFBFBD>
|
||||
XM_JUMP_POPTOPVIEW, // <20><><EFBFBD>Ӵ<EFBFBD>ջ<EFBFBD><D5BB>ջ<EFBFBD><D5BB><EFBFBD>Ӵ<EFBFBD><D3B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ȼ<EFBFBD><C8BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>µ<EFBFBD><C2B5>Ӵ<EFBFBD>
|
||||
} XM_JUMP_TYPE;
|
||||
|
||||
// XM_JumpWindow
|
||||
// <20><><EFBFBD>Ӵ<EFBFBD>ջ<EFBFBD><D5BB>ջ<EFBFBD><D5BB><EFBFBD>Ӵ<EFBFBD><D3B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӵ<EFBFBD><D3B4><EFBFBD><EFBFBD><EFBFBD>(ȡ<><C8A1><EFBFBD><EFBFBD>JumpType)<29><>Ȼ<EFBFBD><C8BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>µ<EFBFBD><C2B5>Ӵ<EFBFBD><D3B4><EFBFBD>һ<EFBFBD><D2BB><EFBFBD><EFBFBD><EFBFBD>ڹ<EFBFBD><DAB9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>תʹ<D7AA><CAB9>
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӵ<EFBFBD>ջ<EFBFBD><D5BB><EFBFBD><EFBFBD><EFBFBD>£<EFBFBD><C2A3><EFBFBD><EFBFBD>¡<EFBFBD>ϵͳʱ<CDB3>䡱<EFBFBD><E4A1B1><EFBFBD>ܼ<EFBFBD><DCBC><EFBFBD><EFBFBD><EFBFBD>ֱ<EFBFBD>ӵ<EFBFBD><D3B5><EFBFBD>XM_WndGoto<74><6F><EFBFBD><EFBFBD>ת<EFBFBD><D7AA><EFBFBD><EFBFBD>ϵͳʱ<CDB3>䡱<EFBFBD><E4A1B1>
|
||||
XMBOOL XM_JumpWindowEx (HANDLE hWnd, DWORD dwCustomData, XM_JUMP_TYPE JumpType);
|
||||
|
||||
// XM_GetWindowID
|
||||
// <20><>ȡ<EFBFBD><C8A1>ǰ<EFBFBD>Ӵ<EFBFBD>(<28><>ջ<EFBFBD><D5BB><EFBFBD>Ӵ<EFBFBD>)<29><>ΨһID
|
||||
// <20><>ջ<EFBFBD>д<EFBFBD><D0B4>ڶ<EFBFBD><DAB6><EFBFBD>ͬһ<CDAC>Ӵ<EFBFBD><D3B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӵ<EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ÿ<EFBFBD><C3BF><EFBFBD>Ӵ<EFBFBD><D3B4><EFBFBD>
|
||||
BYTE XM_GetWindowID (void);
|
||||
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
XMBOOL XM_InflateRect (XMRECT *lprc, XMCOORD dx, XMCOORD dy);
|
||||
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD>ƶ<EFBFBD>
|
||||
XMBOOL XM_OffsetRect (XMRECT *lprc, XMCOORD dx, XMCOORD dy);
|
||||
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(<28>Ӵ<EFBFBD><D3B4><EFBFBD><EFBFBD>ؼ<EFBFBD>)<29><><EFBFBD><EFBFBD>ת<EFBFBD><D7AA>Ϊ<EFBFBD><CEAA>Ļ<EFBFBD><C4BB><EFBFBD><EFBFBD>
|
||||
XMBOOL XM_ClientToScreen (HANDLE hWnd, XMPOINT *lpPoint);
|
||||
|
||||
// <20><><EFBFBD><EFBFBD>Ļ<EFBFBD><C4BB><EFBFBD><EFBFBD>ת<EFBFBD><D7AA>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD>(<28>Ӵ<EFBFBD><D3B4><EFBFBD><EFBFBD>ؼ<EFBFBD>)<29><><EFBFBD><EFBFBD>
|
||||
XMBOOL XM_ScreenToClient (HANDLE hWnd, XMPOINT *lpPoint);
|
||||
|
||||
// <20><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD>(<28>Ӵ<EFBFBD><D3B4><EFBFBD><EFBFBD>ؼ<EFBFBD>)<29><>λ<EFBFBD><CEBB><EFBFBD><EFBFBD>Ϣ
|
||||
XMBOOL XM_GetWindowRect (HANDLE hwnd, XMRECT* lpRect);
|
||||
|
||||
// <20><><EFBFBD>ô<EFBFBD><C3B4><EFBFBD>ʵ<EFBFBD><CAB5><EFBFBD><EFBFBD>λ<EFBFBD><CEBB>(<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD><CABE>ԭ<EFBFBD><D4AD>)
|
||||
XMBOOL XM_SetWindowPos (HANDLE hWnd,
|
||||
XMCOORD x, XMCOORD y, // <20><>Ļ<EFBFBD><C4BB><EFBFBD><EFBFBD>
|
||||
XMCOORD cx, XMCOORD cy
|
||||
);
|
||||
|
||||
// <20><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӵ<EFBFBD><D3B4><EFBFBD><EFBFBD><EFBFBD>
|
||||
HANDLE XM_GetDesktop (void);
|
||||
|
||||
// <20><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
void XM_GetDesktopRect (XMRECT *lpRect);
|
||||
|
||||
XMBOOL XM_SetRect (XMRECT* lprc, XMCOORD xLeft, XMCOORD yTop, XMCOORD xRight, XMCOORD yBottom);
|
||||
|
||||
// ʹ<><CAB9><EFBFBD>Ӵ<EFBFBD><D3B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ر<EFBFBD>ʱ<EFBFBD>Ķ<EFBFBD><C4B6><EFBFBD>Ч<EFBFBD><D0A7>
|
||||
XMBOOL XM_EnableViewAnimate (HANDLE hWnd);
|
||||
// <20><>ֹ<EFBFBD>Ӵ<EFBFBD><D3B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ر<EFBFBD>ʱ<EFBFBD>Ķ<EFBFBD><C4B6><EFBFBD>Ч<EFBFBD><D0A7>
|
||||
XMBOOL XM_DisableViewAnimate (HANDLE hWnd);
|
||||
|
||||
// <20><><EFBFBD>õ<EFBFBD>ǰ<EFBFBD>۽<EFBFBD><DBBD>ؼ<EFBFBD>
|
||||
XMBOOL XM_SetFocus (BYTE bWidgetIndex);
|
||||
|
||||
// (BYTE)(-1)<29><>ʾû<CABE>о۽<D0BE><DBBD>Ŀؼ<C4BF>
|
||||
BYTE XM_GetFocus (void);
|
||||
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD>ӿؼ<D3BF><D8BC><EFBFBD>ѡ<EFBFBD><D1A1>״̬
|
||||
XMBOOL XM_SetSelect (BYTE bWidgetIndex, XMBOOL bSelect);
|
||||
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD>ӿؼ<D3BF><D8BC><EFBFBD>ʹ<EFBFBD><CAB9>״̬
|
||||
XMBOOL XM_SetEnable (BYTE bWidgetIndex, XMBOOL bEnable);
|
||||
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD>ӿؼ<D3BF><D8BC>Ŀ<EFBFBD><C4BF><EFBFBD>״̬
|
||||
XMBOOL XM_SetVisual (BYTE bWidgetIndex, XMBOOL bVisual);
|
||||
|
||||
// <20><>ȡ<EFBFBD>ؼ<EFBFBD><D8BC><EFBFBD><EFBFBD>Ӵ<EFBFBD><D3B4>ӿؼ<D3BF><D8BC><EFBFBD><EFBFBD><EFBFBD>, ʧ<>ܷ<EFBFBD><DCB7><EFBFBD>(BYTE)(-1)
|
||||
BYTE XM_GetWidgetIndex (const XMWDGT *pWidget);
|
||||
|
||||
// <20><>ȡ<EFBFBD>ؼ<EFBFBD><D8BC><EFBFBD><EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD>
|
||||
void *XM_GetWidgetUserData (BYTE bWidgetIndex);
|
||||
|
||||
// <20><><EFBFBD>ÿؼ<C3BF><D8BC><EFBFBD><EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD>
|
||||
XMBOOL XM_SetWidgetUserData (BYTE bWidgetIndex, void *pUserData);
|
||||
|
||||
// <20><>ȡ<EFBFBD><C8A1>ǰ<EFBFBD>Ӵ<EFBFBD><D3B4>ľ<EFBFBD><C4BE><EFBFBD>
|
||||
HANDLE XM_GetWindow (void);
|
||||
|
||||
// ϵͳ<CFB5><CDB3><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>ϵͳ<CFB5><CDB3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ã<EFBFBD>ֻ<EFBFBD><D6BB><EFBFBD><EFBFBD>һ<EFBFBD><D2BB>
|
||||
void XM_AppInit (void);
|
||||
|
||||
// ϵͳ<CFB5><CDB3><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>ϵͳ<CFB5><CDB3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ã<EFBFBD>ֻ<EFBFBD><D6BB><EFBFBD><EFBFBD>һ<EFBFBD><D2BB>
|
||||
void XM_AppExit (void);
|
||||
|
||||
// <20><>ȡ<EFBFBD>Ӵ<EFBFBD><D3B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>framebuffer<65><72><EFBFBD><EFBFBD>
|
||||
// <09><><EFBFBD><EFBFBD>XM_PAINT<4E><54>Ϣʱ<CFA2>Ӵ<EFBFBD><D3B4><EFBFBD><EFBFBD>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><D2BB>framebuffer<65><72><EFBFBD><EFBFBD>
|
||||
// <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>У<EFBFBD><D0A3><EFBFBD><EFBFBD><EFBFBD>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD>ˢ<EFBFBD><CBA2><EFBFBD><EFBFBD>ʾ<EFBFBD><CABE>ִ<EFBFBD><D6B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
// 1) <09><><EFBFBD><EFBFBD>һ<EFBFBD><D2BB><EFBFBD><EFBFBD><EFBFBD>Ӵ<EFBFBD><D3B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>framebuffer<65><72><EFBFBD><EFBFBD><EFBFBD><EFBFBD>XM_osd_framebuffer_create
|
||||
// 2) <09><><EFBFBD><EFBFBD>framebuffer<65><72><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӵ<EFBFBD><D3B4><EFBFBD><EFBFBD><EFBFBD> XM_SetWindowFrameBuffer
|
||||
// 3) ִ<><D6B4><EFBFBD><EFBFBD>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD>
|
||||
// 4) <20><><EFBFBD><EFBFBD>NULL framebuffer<65><72><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӵ<EFBFBD><D3B4><EFBFBD><EFBFBD><EFBFBD> XM_SetWindowFrameBuffer
|
||||
// 5) <09>ر<EFBFBD>framebuffer,<2C><><EFBFBD><EFBFBD>ˢ<EFBFBD>µ<EFBFBD><C2B5><EFBFBD>ʾ<EFBFBD>豸 XM_osd_framebuffer_close
|
||||
//
|
||||
// <09><>ϸ<EFBFBD><CFB8><EFBFBD>ο<EFBFBD> alert_view<65><77>CountDownPaintʵ<74><CAB5>
|
||||
//
|
||||
//xm_osd_framebuffer_t XM_GetWindowFrameBuffer (HANDLE hWnd);
|
||||
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD>Ӵ<EFBFBD><D3B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>framebuffer<65><72><EFBFBD><EFBFBD>
|
||||
//
|
||||
// <09><>ϸ<EFBFBD><CFB8><EFBFBD>ο<EFBFBD> alert_view<65><77>CountDownPaintʵ<74><CAB5>
|
||||
//
|
||||
//XMBOOL XM_SetWindowFrameBuffer (HANDLE hWnd, xm_osd_framebuffer_t framebuffer);
|
||||
|
||||
// <20><>ȡ<EFBFBD>Ӵ<EFBFBD><D3B4><EFBFBD>ȫ<EFBFBD><C8AB>Alpha<68><61><EFBFBD><EFBFBD>
|
||||
unsigned char XM_GetWindowAlpha (HANDLE hWnd);
|
||||
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD>Ӵ<EFBFBD><D3B4><EFBFBD>ȫ<EFBFBD><C8AB>Alpha<68><61><EFBFBD><EFBFBD>
|
||||
XMBOOL XM_SetWindowAlpha (HANDLE hWnd, unsigned char alpha);
|
||||
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼ<EFBFBD>л<EFBFBD>ʱAnimatingЧ<67><D0A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
void XM_SetViewSwitchAnimatingDirection (UINT AnimatingDirection);
|
||||
|
||||
// ALERTVIEW<45><57>ͼ<EFBFBD>İ<EFBFBD><C4B0><EFBFBD><EFBFBD>ص<EFBFBD><D8B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
// uKeyPressed <20><>ʾ<EFBFBD><CABE>ǰ<EFBFBD><C7B0><EFBFBD>µ<EFBFBD><C2B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ
|
||||
typedef void (*FPALERTCB) (void *UserPrivate, UINT uKeyPressed);
|
||||
|
||||
#define XM_COMMAND_OK 0
|
||||
#define XM_COMMAND_CANCEL 1
|
||||
typedef void (*FPOKCANCELCB) (UINT Command);
|
||||
|
||||
#define XM_OKCANCEL_OPTION_ENABLE_POPTOPVIEW 0x00000001 // <20><><EFBFBD><EFBFBD>ջ<EFBFBD><D5BB><EFBFBD>Ӵ<EFBFBD>
|
||||
#define XM_OKCANCEL_OPTION_SYSTEM_MODEL 0x00000002 // ϵͳģʽ, <20><><EFBFBD><EFBFBD>ϵͳ<CFB5>¼<EFBFBD>
|
||||
|
||||
// ALERTVIEW<45><57>ͼ<EFBFBD>Ŀ<EFBFBD><C4BF><EFBFBD>ѡ<EFBFBD><D1A1>
|
||||
#define XM_ALERTVIEW_OPTION_ENABLE_COUNTDOWN 0x00000001 // "<22><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>ʾ"ʹ<><CAB9>
|
||||
#define XM_ALERTVIEW_OPTION_ENABLE_KEYDISABLE 0x00000002 // "<22><>ֹ<EFBFBD><D6B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"ʹ<><CAB9>
|
||||
#define XM_ALERTVIEW_OPTION_ENABLE_CALLBACK 0x00000004 // "<22><><EFBFBD><EFBFBD><EFBFBD>ص<EFBFBD><D8B5><EFBFBD><EFBFBD><EFBFBD>"ʹ<><CAB9>
|
||||
// <09><>ť<EFBFBD><C5A5><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD>ð<EFBFBD><C3B0><EFBFBD><EFBFBD>ص<EFBFBD><D8B5><EFBFBD><EFBFBD><EFBFBD>
|
||||
// <09><>ť<EFBFBD><C5A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ0<CEAA><30><EFBFBD><EFBFBD>0
|
||||
#define XM_ALERTVIEW_OPTION_ADJUST_COUNTDOWN 0x00000008 // ʹ<>ܵ<EFBFBD><DCB5><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
|
||||
|
||||
// <20>Ӵ<EFBFBD><D3B4><EFBFBD>ʾ<EFBFBD><CABE><EFBFBD>뷽ʽѡ<CABD><EFBFBD><EEB6A8>
|
||||
#define XM_VIEW_ALIGN_CENTRE 0x00000001 // <20>Ӵ<EFBFBD><D3B4><EFBFBD><EFBFBD>ж<EFBFBD><D0B6><EFBFBD>(<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD>)
|
||||
#define XM_VIEW_ALIGN_BOTTOM 0x00000002 // <20>Ӵ<EFBFBD><D3B4>ײ<EFBFBD><D7B2><EFBFBD><EFBFBD>ж<EFBFBD><D0B6><EFBFBD>(<28><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD>)
|
||||
|
||||
// <20><>ʾ<EFBFBD><CABE>Ϣ<EFBFBD><CFA2>ͼ
|
||||
// 0 <20><>ͼ<EFBFBD><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͼ<EFBFBD><CDBC>ʾʧ<CABE><CAA7>
|
||||
// 1 <20><>ͼ<EFBFBD><CDBC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʾ
|
||||
XMBOOL XM_OpenAlertView (
|
||||
DWORD dwInfoTextID, // <20><>Ϣ<EFBFBD>ı<EFBFBD><C4B1><EFBFBD>ԴID
|
||||
// <09><>0ֵ<30><D6B5>ָ<EFBFBD><D6B8><EFBFBD><EFBFBD>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD>ԴID
|
||||
DWORD dwImageID, // ͼƬ<CDBC><C6AC>Ϣ<EFBFBD><CFA2>ԴID
|
||||
// <09><>0ֵ<30><D6B5>ָ<EFBFBD><D6B8><EFBFBD><EFBFBD>ʾͼƬ<CDBC><C6AC>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD>ԴID
|
||||
DWORD dwButtonCount, // <20><>ť<EFBFBD><C5A5><EFBFBD><EFBFBD>
|
||||
// <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><D2BB><EFBFBD><EFBFBD>ťʱ<C5A5><CAB1>
|
||||
// <EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ť<EFBFBD><EFBFBD>ʹ<EFBFBD><EFBFBD>VK_F1(Menu)
|
||||
// <09>ڶ<EFBFBD><DAB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD><CAB9>VK_F2(Mode)
|
||||
// <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʹ<EFBFBD><CAB9>VK_F3(Switch)
|
||||
DWORD dwButtonNormalTextID[], // <09><>ť<EFBFBD><C5A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ԴID
|
||||
// 0
|
||||
// <09><>ʾû<CABE>ж<EFBFBD><D0B6><EFBFBD>Button<6F><6E>Alert<72><74>Ϊһ<CEAA><D2BB><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2>ʾ<EFBFBD><CABE><EFBFBD>ڡ<EFBFBD>
|
||||
// <09><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD>Զ<EFBFBD><D4B6>ر<EFBFBD>
|
||||
// <09><><EFBFBD><EFBFBD>ֵ
|
||||
// <09><>ʾButton<6F><6E><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD>ԴID<49><44>Alert<72><74>Ҫ<EFBFBD><D2AA>ʾһ<CABE><D2BB><EFBFBD><EFBFBD>ť
|
||||
DWORD dwButtonPressedTextID[], // <09><>ť<EFBFBD><C5A5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ԴID
|
||||
// 0
|
||||
// <09><>ʾû<CABE>ж<EFBFBD><D0B6><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Դ<EFBFBD><D4B4>
|
||||
// <09><>ť<EFBFBD><C5A5><EFBFBD><EFBFBD>ʱʹ<CAB1><CAB9>dwButtonNormalTextID<49><44>Դ
|
||||
// <09><><EFBFBD><EFBFBD>ֵ
|
||||
// <09><>ʾButton<6F><6E><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD>ԴID
|
||||
DWORD dwBackgroundColor, // <20><><EFBFBD><EFBFBD>ɫ
|
||||
// 0
|
||||
// <09><>ʾʹ<CABE><CAB9>ȱʡ<C8B1><CAA1><EFBFBD><EFBFBD>ɫ
|
||||
// <09><><EFBFBD><EFBFBD>ֵ
|
||||
// <09><>ʾ<EFBFBD><CABE>Ч<EFBFBD><D0A7><EFBFBD>䱳<EFBFBD><E4B1B3>ɫ<EFBFBD><C9AB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɫ<EFBFBD><C9AB>ָ<EFBFBD><D6B8>Alpha<68><61><EFBFBD><EFBFBD>
|
||||
float fAutoCloseTime, // ָ<><D6B8><EFBFBD>Զ<EFBFBD><D4B6>ر<EFBFBD>ʱ<EFBFBD><CAB1> (<28>뵥λ)<29><>
|
||||
// 0.0 <09><>ʾ<EFBFBD><CABE>ֹ<EFBFBD>Զ<EFBFBD><D4B6>ر<EFBFBD>
|
||||
float fViewAlpha, // <20><>Ϣ<EFBFBD><CFA2>ͼ<EFBFBD><CDBC><EFBFBD>Ӵ<EFBFBD>Alpha<68><61><EFBFBD>ӣ<EFBFBD>0.0 ~ 1.0
|
||||
// 0.0 <09><>ʾȫ
|
||||
// 1.0 <09><>ʾȫ<CABE><C8AB><EFBFBD><EFBFBD>
|
||||
|
||||
FPALERTCB alertcb, // <20><><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD><C3BB>ص<EFBFBD><D8B5><EFBFBD><EFBFBD><EFBFBD>
|
||||
void *UserPrivate, // <20><><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD><C3BB>ص<EFBFBD><D8B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˽<EFBFBD>в<EFBFBD><D0B2><EFBFBD>
|
||||
|
||||
DWORD dwAlignOption, // <09><>ͼ<EFBFBD><CDBC><EFBFBD><EFBFBD>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
|
||||
// <09><><EFBFBD><EFBFBD>OSD<53><44>ʾ<EFBFBD><CABE>ԭ<EFBFBD><D4AD>(OSD<53><44>Ч<EFBFBD><D0A7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ͻ<EFBFBD>)
|
||||
// XM_VIEW_ALIGN_CENTRE
|
||||
// <09>Ӵ<EFBFBD><D3B4><EFBFBD><EFBFBD>ж<EFBFBD><D0B6><EFBFBD>(<28><><EFBFBD><EFBFBD>OSD<53><44>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD>)
|
||||
// XM_VIEW_ALIGN_BOTTOM
|
||||
// <09>Ӵ<EFBFBD><D3B4>ײ<EFBFBD><D7B2><EFBFBD><EFBFBD>ж<EFBFBD><D0B6><EFBFBD>(<28><><EFBFBD><EFBFBD>OSD<53><44>ʾ<EFBFBD><CABE><EFBFBD><EFBFBD>)
|
||||
DWORD dwOption // ALERTVIEW<45><57>ͼ<EFBFBD>Ŀ<EFBFBD><C4BF><EFBFBD>ѡ<EFBFBD><D1A1>
|
||||
// XM_ALERTVIEW_OPTION_ENABLE_COUNTDOWN
|
||||
// <09><><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>ʾʹ<CABE><CAB9>
|
||||
// XM_ALERTVIEW_OPTION_ENABLE_KEYDISABLE
|
||||
// "<22><>ֹ<EFBFBD><D6B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>"ʹ<><CAB9>
|
||||
);
|
||||
|
||||
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӵ<EFBFBD>
|
||||
XMBOOL XM_OpenBellSoundVolumeSettingView (void);
|
||||
// <20><><EFBFBD><EFBFBD>MIC¼<43><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӵ<EFBFBD>
|
||||
XMBOOL XM_OpenMicSoundVolumeSettingView (void);
|
||||
|
||||
int XM_Main (void);
|
||||
|
||||
#if defined (__cplusplus)
|
||||
}
|
||||
#endif /* end of __cplusplus */
|
||||
|
||||
|
||||
#endif // _XM_USER_H_
|
Reference in New Issue
Block a user