You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
2002 lines
81 KiB
2002 lines
81 KiB
typedef unsigned int size_t;
|
|
typedef unsigned char __u_char;
|
|
typedef unsigned short int __u_short;
|
|
typedef unsigned int __u_int;
|
|
typedef unsigned long int __u_long;
|
|
typedef signed char __int8_t;
|
|
typedef unsigned char __uint8_t;
|
|
typedef signed short int __int16_t;
|
|
typedef unsigned short int __uint16_t;
|
|
typedef signed int __int32_t;
|
|
typedef unsigned int __uint32_t;
|
|
__extension__ typedef signed long long int __int64_t;
|
|
__extension__ typedef unsigned long long int __uint64_t;
|
|
__extension__ typedef long long int __quad_t;
|
|
__extension__ typedef unsigned long long int __u_quad_t;
|
|
__extension__ typedef __u_quad_t __dev_t;
|
|
__extension__ typedef unsigned int __uid_t;
|
|
__extension__ typedef unsigned int __gid_t;
|
|
__extension__ typedef unsigned long int __ino_t;
|
|
__extension__ typedef __u_quad_t __ino64_t;
|
|
__extension__ typedef unsigned int __mode_t;
|
|
__extension__ typedef unsigned int __nlink_t;
|
|
__extension__ typedef long int __off_t;
|
|
__extension__ typedef __quad_t __off64_t;
|
|
__extension__ typedef int __pid_t;
|
|
__extension__ typedef struct
|
|
{
|
|
int __val[2];
|
|
} __fsid_t;
|
|
__extension__ typedef long int __clock_t;
|
|
__extension__ typedef unsigned long int __rlim_t;
|
|
__extension__ typedef __u_quad_t __rlim64_t;
|
|
__extension__ typedef unsigned int __id_t;
|
|
__extension__ typedef long int __time_t;
|
|
__extension__ typedef unsigned int __useconds_t;
|
|
__extension__ typedef long int __suseconds_t;
|
|
__extension__ typedef int __daddr_t;
|
|
__extension__ typedef long int __swblk_t;
|
|
__extension__ typedef int __key_t;
|
|
__extension__ typedef int __clockid_t;
|
|
__extension__ typedef int __timer_t;
|
|
__extension__ typedef long int __blksize_t;
|
|
__extension__ typedef long int __blkcnt_t;
|
|
__extension__ typedef __quad_t __blkcnt64_t;
|
|
__extension__ typedef unsigned long int __fsblkcnt_t;
|
|
__extension__ typedef __u_quad_t __fsblkcnt64_t;
|
|
__extension__ typedef unsigned long int __fsfilcnt_t;
|
|
__extension__ typedef __u_quad_t __fsfilcnt64_t;
|
|
__extension__ typedef int __ssize_t;
|
|
typedef __off64_t __loff_t;
|
|
typedef __quad_t * __qaddr_t;
|
|
typedef char * __caddr_t;
|
|
__extension__ typedef int __intptr_t;
|
|
__extension__ typedef unsigned int __socklen_t;
|
|
typedef __u_char u_char;
|
|
typedef __u_short u_short;
|
|
typedef __u_int u_int;
|
|
typedef __u_long u_long;
|
|
typedef __quad_t quad_t;
|
|
typedef __u_quad_t u_quad_t;
|
|
typedef __fsid_t fsid_t;
|
|
typedef __loff_t loff_t;
|
|
typedef __ino_t ino_t;
|
|
typedef __dev_t dev_t;
|
|
typedef __gid_t gid_t;
|
|
typedef __mode_t mode_t;
|
|
typedef __nlink_t nlink_t;
|
|
typedef __uid_t uid_t;
|
|
typedef __off_t off_t;
|
|
typedef __pid_t pid_t;
|
|
typedef __id_t id_t;
|
|
typedef __ssize_t ssize_t;
|
|
typedef __daddr_t daddr_t;
|
|
typedef __caddr_t caddr_t;
|
|
typedef __key_t key_t;
|
|
typedef __time_t time_t;
|
|
typedef __clockid_t clockid_t;
|
|
typedef __timer_t timer_t;
|
|
typedef unsigned long int ulong;
|
|
typedef unsigned short int ushort;
|
|
typedef unsigned int uint;
|
|
typedef int int8_t __attribute__((__mode__(__QI__)));
|
|
typedef int int16_t __attribute__((__mode__(__HI__)));
|
|
typedef int int32_t __attribute__((__mode__(__SI__)));
|
|
typedef int int64_t __attribute__((__mode__(__DI__)));
|
|
typedef unsigned int u_int8_t __attribute__((__mode__(__QI__)));
|
|
typedef unsigned int u_int16_t __attribute__((__mode__(__HI__)));
|
|
typedef unsigned int u_int32_t __attribute__((__mode__(__SI__)));
|
|
typedef unsigned int u_int64_t __attribute__((__mode__(__DI__)));
|
|
typedef int register_t __attribute__((__mode__(__word__)));
|
|
typedef int __sig_atomic_t;
|
|
typedef struct
|
|
{
|
|
unsigned long int __val[(1024 / (8 * sizeof(unsigned long int)))];
|
|
} __sigset_t;
|
|
typedef __sigset_t sigset_t;
|
|
struct timespec
|
|
{
|
|
__time_t tv_sec;
|
|
long int tv_nsec;
|
|
};
|
|
struct timeval
|
|
{
|
|
__time_t tv_sec;
|
|
__suseconds_t tv_usec;
|
|
};
|
|
typedef __suseconds_t suseconds_t;
|
|
typedef long int __fd_mask;
|
|
typedef struct
|
|
{
|
|
__fd_mask __fds_bits[1024 / (8 * sizeof(__fd_mask))];
|
|
} fd_set;
|
|
typedef __fd_mask fd_mask;
|
|
extern int select(int __nfds, fd_set *__restrict __readfds,
|
|
fd_set *__restrict __writefds,
|
|
fd_set *__restrict __exceptfds,
|
|
struct timeval *__restrict __timeout);
|
|
__extension__
|
|
extern __inline unsigned int gnu_dev_major(unsigned long long int __dev)
|
|
__attribute__((__nothrow__));
|
|
__extension__
|
|
extern __inline unsigned int gnu_dev_minor(unsigned long long int __dev)
|
|
__attribute__((__nothrow__));
|
|
__extension__
|
|
extern __inline unsigned long long int gnu_dev_makedev(unsigned int __major,
|
|
unsigned int __minor)
|
|
__attribute__((__nothrow__));
|
|
|
|
__extension__ extern __inline unsigned int
|
|
__attribute__((__nothrow__)) gnu_dev_major(unsigned long long int __dev)
|
|
{
|
|
return(((__dev >> 8) & 0xfff) | ((unsigned int)(__dev >> 32) & ~0xfff));
|
|
}
|
|
|
|
__extension__ extern __inline unsigned int
|
|
__attribute__((__nothrow__)) gnu_dev_minor(unsigned long long int __dev)
|
|
{
|
|
return((__dev & 0xff) | ((unsigned int)(__dev >> 12) & ~0xff));
|
|
}
|
|
|
|
__extension__ extern __inline unsigned long long int
|
|
__attribute__((__nothrow__)) gnu_dev_makedev(unsigned int __major, unsigned int __minor)
|
|
{
|
|
return((__minor & 0xff) | ((__major & 0xfff) << 8)
|
|
| (((unsigned long long int)(__minor & ~0xff)) << 12)
|
|
| (((unsigned long long int)(__major & ~0xfff)) << 32));
|
|
}
|
|
|
|
typedef __blkcnt_t blkcnt_t;
|
|
typedef __fsblkcnt_t fsblkcnt_t;
|
|
typedef __fsfilcnt_t fsfilcnt_t;
|
|
struct __sched_param
|
|
{
|
|
int __sched_priority;
|
|
};
|
|
typedef int __atomic_lock_t;
|
|
struct _pthread_fastlock
|
|
{
|
|
long int __status;
|
|
__atomic_lock_t __spinlock;
|
|
};
|
|
typedef struct _pthread_descr_struct *_pthread_descr;
|
|
typedef struct __pthread_attr_s
|
|
{
|
|
int __detachstate;
|
|
int __schedpolicy;
|
|
struct __sched_param __schedparam;
|
|
int __inheritsched;
|
|
int __scope;
|
|
size_t __guardsize;
|
|
int __stackaddr_set;
|
|
void *__stackaddr;
|
|
size_t __stacksize;
|
|
} pthread_attr_t;
|
|
__extension__ typedef long long __pthread_cond_align_t;
|
|
typedef struct
|
|
{
|
|
struct _pthread_fastlock __c_lock;
|
|
_pthread_descr __c_waiting;
|
|
char __padding[48 - sizeof(struct _pthread_fastlock)
|
|
- sizeof(_pthread_descr) - sizeof(__pthread_cond_align_t)];
|
|
__pthread_cond_align_t __align;
|
|
} pthread_cond_t;
|
|
typedef struct
|
|
{
|
|
int __dummy;
|
|
} pthread_condattr_t;
|
|
typedef unsigned int pthread_key_t;
|
|
typedef struct
|
|
{
|
|
int __m_reserved;
|
|
int __m_count;
|
|
_pthread_descr __m_owner;
|
|
int __m_kind;
|
|
struct _pthread_fastlock __m_lock;
|
|
} pthread_mutex_t;
|
|
typedef struct
|
|
{
|
|
int __mutexkind;
|
|
} pthread_mutexattr_t;
|
|
typedef int pthread_once_t;
|
|
typedef unsigned long int pthread_t;
|
|
typedef struct
|
|
{
|
|
unsigned long fds_bits [(1024 / (8 * sizeof(unsigned long)))];
|
|
} __kernel_fd_set;
|
|
typedef void (*__kernel_sighandler_t)(int);
|
|
typedef int __kernel_key_t;
|
|
typedef int __kernel_mqd_t;
|
|
typedef unsigned long __kernel_ino_t;
|
|
typedef unsigned short __kernel_mode_t;
|
|
typedef unsigned short __kernel_nlink_t;
|
|
typedef long __kernel_off_t;
|
|
typedef int __kernel_pid_t;
|
|
typedef unsigned short __kernel_ipc_pid_t;
|
|
typedef unsigned short __kernel_uid_t;
|
|
typedef unsigned short __kernel_gid_t;
|
|
typedef unsigned int __kernel_size_t;
|
|
typedef int __kernel_ssize_t;
|
|
typedef int __kernel_ptrdiff_t;
|
|
typedef long __kernel_time_t;
|
|
typedef long __kernel_suseconds_t;
|
|
typedef long __kernel_clock_t;
|
|
typedef int __kernel_timer_t;
|
|
typedef int __kernel_clockid_t;
|
|
typedef int __kernel_daddr_t;
|
|
typedef char * __kernel_caddr_t;
|
|
typedef unsigned short __kernel_uid16_t;
|
|
typedef unsigned short __kernel_gid16_t;
|
|
typedef unsigned int __kernel_uid32_t;
|
|
typedef unsigned int __kernel_gid32_t;
|
|
typedef unsigned short __kernel_old_uid_t;
|
|
typedef unsigned short __kernel_old_gid_t;
|
|
typedef unsigned short __kernel_old_dev_t;
|
|
typedef long long __kernel_loff_t;
|
|
typedef struct
|
|
{
|
|
int __val[2];
|
|
} __kernel_fsid_t;
|
|
typedef unsigned short umode_t;
|
|
typedef __signed__ char __s8;
|
|
typedef unsigned char __u8;
|
|
typedef __signed__ short __s16;
|
|
typedef unsigned short __u16;
|
|
typedef __signed__ int __s32;
|
|
typedef unsigned int __u32;
|
|
typedef __signed__ long long __s64;
|
|
typedef unsigned long long __u64;
|
|
typedef __u16 __le16;
|
|
typedef __u16 __be16;
|
|
typedef __u32 __le32;
|
|
typedef __u32 __be32;
|
|
typedef __u64 __le64;
|
|
typedef __u64 __be64;
|
|
struct timezone
|
|
{
|
|
int tz_minuteswest;
|
|
int tz_dsttime;
|
|
};
|
|
typedef struct timezone *__restrict __timezone_ptr_t;
|
|
extern int gettimeofday(struct timeval *__restrict __tv,
|
|
__timezone_ptr_t __tz) __attribute__((__nothrow__));
|
|
extern int settimeofday(__const struct timeval *__tv,
|
|
__const struct timezone *__tz) __attribute__((__nothrow__));
|
|
extern int adjtime(__const struct timeval *__delta,
|
|
struct timeval *__olddelta) __attribute__((__nothrow__));
|
|
|
|
enum __itimer_which
|
|
{
|
|
ITIMER_REAL = 0,
|
|
ITIMER_VIRTUAL = 1,
|
|
ITIMER_PROF = 2
|
|
};
|
|
struct itimerval
|
|
{
|
|
struct timeval it_interval;
|
|
struct timeval it_value;
|
|
};
|
|
typedef int __itimer_which_t;
|
|
extern int getitimer(__itimer_which_t __which,
|
|
struct itimerval *__value) __attribute__((__nothrow__));
|
|
extern int setitimer(__itimer_which_t __which,
|
|
__const struct itimerval *__restrict __new,
|
|
struct itimerval *__restrict __old) __attribute__((__nothrow__));
|
|
extern int utimes(__const char *__file, __const struct timeval __tvp[2])
|
|
__attribute__((__nothrow__));
|
|
extern int lutimes(__const char *__file, __const struct timeval __tvp[2])
|
|
__attribute__((__nothrow__));
|
|
extern int futimes(int __fd, __const struct timeval __tvp[2]) __attribute__((__nothrow__));
|
|
|
|
typedef enum
|
|
{
|
|
DIKT_UNICODE = 0x0000,
|
|
DIKT_SPECIAL = 0xF000,
|
|
DIKT_FUNCTION = 0xF100,
|
|
DIKT_MODIFIER = 0xF200,
|
|
DIKT_LOCK = 0xF300,
|
|
DIKT_DEAD = 0xF400,
|
|
DIKT_CUSTOM = 0xF500,
|
|
DIKT_IDENTIFIER = 0xF600
|
|
} DFBInputDeviceKeyType;
|
|
typedef enum
|
|
{
|
|
DIMKI_SHIFT,
|
|
DIMKI_CONTROL,
|
|
DIMKI_ALT,
|
|
DIMKI_ALTGR,
|
|
DIMKI_META,
|
|
DIMKI_SUPER,
|
|
DIMKI_HYPER,
|
|
DIMKI_FIRST = DIMKI_SHIFT,
|
|
DIMKI_LAST = DIMKI_HYPER
|
|
} DFBInputDeviceModifierKeyIdentifier;
|
|
typedef enum
|
|
{
|
|
DIKI_UNKNOWN = ((DIKT_IDENTIFIER) | (0)),
|
|
DIKI_A,
|
|
DIKI_B,
|
|
DIKI_C,
|
|
DIKI_D,
|
|
DIKI_E,
|
|
DIKI_F,
|
|
DIKI_G,
|
|
DIKI_H,
|
|
DIKI_I,
|
|
DIKI_J,
|
|
DIKI_K,
|
|
DIKI_L,
|
|
DIKI_M,
|
|
DIKI_N,
|
|
DIKI_O,
|
|
DIKI_P,
|
|
DIKI_Q,
|
|
DIKI_R,
|
|
DIKI_S,
|
|
DIKI_T,
|
|
DIKI_U,
|
|
DIKI_V,
|
|
DIKI_W,
|
|
DIKI_X,
|
|
DIKI_Y,
|
|
DIKI_Z,
|
|
DIKI_0,
|
|
DIKI_1,
|
|
DIKI_2,
|
|
DIKI_3,
|
|
DIKI_4,
|
|
DIKI_5,
|
|
DIKI_6,
|
|
DIKI_7,
|
|
DIKI_8,
|
|
DIKI_9,
|
|
DIKI_F1,
|
|
DIKI_F2,
|
|
DIKI_F3,
|
|
DIKI_F4,
|
|
DIKI_F5,
|
|
DIKI_F6,
|
|
DIKI_F7,
|
|
DIKI_F8,
|
|
DIKI_F9,
|
|
DIKI_F10,
|
|
DIKI_F11,
|
|
DIKI_F12,
|
|
DIKI_SHIFT_L,
|
|
DIKI_SHIFT_R,
|
|
DIKI_CONTROL_L,
|
|
DIKI_CONTROL_R,
|
|
DIKI_ALT_L,
|
|
DIKI_ALT_R,
|
|
DIKI_ALTGR,
|
|
DIKI_META_L,
|
|
DIKI_META_R,
|
|
DIKI_SUPER_L,
|
|
DIKI_SUPER_R,
|
|
DIKI_HYPER_L,
|
|
DIKI_HYPER_R,
|
|
DIKI_CAPS_LOCK,
|
|
DIKI_NUM_LOCK,
|
|
DIKI_SCROLL_LOCK,
|
|
DIKI_ESCAPE,
|
|
DIKI_LEFT,
|
|
DIKI_RIGHT,
|
|
DIKI_UP,
|
|
DIKI_DOWN,
|
|
DIKI_TAB,
|
|
DIKI_ENTER,
|
|
DIKI_SPACE,
|
|
DIKI_BACKSPACE,
|
|
DIKI_INSERT,
|
|
DIKI_DELETE,
|
|
DIKI_HOME,
|
|
DIKI_END,
|
|
DIKI_PAGE_UP,
|
|
DIKI_PAGE_DOWN,
|
|
DIKI_PRINT,
|
|
DIKI_PAUSE,
|
|
DIKI_QUOTE_LEFT,
|
|
DIKI_MINUS_SIGN,
|
|
DIKI_EQUALS_SIGN,
|
|
DIKI_BRACKET_LEFT,
|
|
DIKI_BRACKET_RIGHT,
|
|
DIKI_BACKSLASH,
|
|
DIKI_SEMICOLON,
|
|
DIKI_QUOTE_RIGHT,
|
|
DIKI_COMMA,
|
|
DIKI_PERIOD,
|
|
DIKI_SLASH,
|
|
DIKI_LESS_SIGN,
|
|
DIKI_KP_DIV,
|
|
DIKI_KP_MULT,
|
|
DIKI_KP_MINUS,
|
|
DIKI_KP_PLUS,
|
|
DIKI_KP_ENTER,
|
|
DIKI_KP_SPACE,
|
|
DIKI_KP_TAB,
|
|
DIKI_KP_F1,
|
|
DIKI_KP_F2,
|
|
DIKI_KP_F3,
|
|
DIKI_KP_F4,
|
|
DIKI_KP_EQUAL,
|
|
DIKI_KP_SEPARATOR,
|
|
DIKI_KP_DECIMAL,
|
|
DIKI_KP_0,
|
|
DIKI_KP_1,
|
|
DIKI_KP_2,
|
|
DIKI_KP_3,
|
|
DIKI_KP_4,
|
|
DIKI_KP_5,
|
|
DIKI_KP_6,
|
|
DIKI_KP_7,
|
|
DIKI_KP_8,
|
|
DIKI_KP_9,
|
|
DIKI_KEYDEF_END,
|
|
DIKI_NUMBER_OF_KEYS = DIKI_KEYDEF_END - ((DIKT_IDENTIFIER) | (0))
|
|
} DFBInputDeviceKeyIdentifier;
|
|
typedef enum
|
|
{
|
|
DIKS_NULL = ((DIKT_UNICODE) | (0x00)),
|
|
DIKS_BACKSPACE = ((DIKT_UNICODE) | (0x08)),
|
|
DIKS_TAB = ((DIKT_UNICODE) | (0x09)),
|
|
DIKS_RETURN = ((DIKT_UNICODE) | (0x0D)),
|
|
DIKS_CANCEL = ((DIKT_UNICODE) | (0x18)),
|
|
DIKS_ESCAPE = ((DIKT_UNICODE) | (0x1B)),
|
|
DIKS_SPACE = ((DIKT_UNICODE) | (0x20)),
|
|
DIKS_EXCLAMATION_MARK = ((DIKT_UNICODE) | (0x21)),
|
|
DIKS_QUOTATION = ((DIKT_UNICODE) | (0x22)),
|
|
DIKS_NUMBER_SIGN = ((DIKT_UNICODE) | (0x23)),
|
|
DIKS_DOLLAR_SIGN = ((DIKT_UNICODE) | (0x24)),
|
|
DIKS_PERCENT_SIGN = ((DIKT_UNICODE) | (0x25)),
|
|
DIKS_AMPERSAND = ((DIKT_UNICODE) | (0x26)),
|
|
DIKS_APOSTROPHE = ((DIKT_UNICODE) | (0x27)),
|
|
DIKS_PARENTHESIS_LEFT = ((DIKT_UNICODE) | (0x28)),
|
|
DIKS_PARENTHESIS_RIGHT = ((DIKT_UNICODE) | (0x29)),
|
|
DIKS_ASTERISK = ((DIKT_UNICODE) | (0x2A)),
|
|
DIKS_PLUS_SIGN = ((DIKT_UNICODE) | (0x2B)),
|
|
DIKS_COMMA = ((DIKT_UNICODE) | (0x2C)),
|
|
DIKS_MINUS_SIGN = ((DIKT_UNICODE) | (0x2D)),
|
|
DIKS_PERIOD = ((DIKT_UNICODE) | (0x2E)),
|
|
DIKS_SLASH = ((DIKT_UNICODE) | (0x2F)),
|
|
DIKS_0 = ((DIKT_UNICODE) | (0x30)),
|
|
DIKS_1 = ((DIKT_UNICODE) | (0x31)),
|
|
DIKS_2 = ((DIKT_UNICODE) | (0x32)),
|
|
DIKS_3 = ((DIKT_UNICODE) | (0x33)),
|
|
DIKS_4 = ((DIKT_UNICODE) | (0x34)),
|
|
DIKS_5 = ((DIKT_UNICODE) | (0x35)),
|
|
DIKS_6 = ((DIKT_UNICODE) | (0x36)),
|
|
DIKS_7 = ((DIKT_UNICODE) | (0x37)),
|
|
DIKS_8 = ((DIKT_UNICODE) | (0x38)),
|
|
DIKS_9 = ((DIKT_UNICODE) | (0x39)),
|
|
DIKS_COLON = ((DIKT_UNICODE) | (0x3A)),
|
|
DIKS_SEMICOLON = ((DIKT_UNICODE) | (0x3B)),
|
|
DIKS_LESS_THAN_SIGN = ((DIKT_UNICODE) | (0x3C)),
|
|
DIKS_EQUALS_SIGN = ((DIKT_UNICODE) | (0x3D)),
|
|
DIKS_GREATER_THAN_SIGN = ((DIKT_UNICODE) | (0x3E)),
|
|
DIKS_QUESTION_MARK = ((DIKT_UNICODE) | (0x3F)),
|
|
DIKS_AT = ((DIKT_UNICODE) | (0x40)),
|
|
DIKS_CAPITAL_A = ((DIKT_UNICODE) | (0x41)),
|
|
DIKS_CAPITAL_B = ((DIKT_UNICODE) | (0x42)),
|
|
DIKS_CAPITAL_C = ((DIKT_UNICODE) | (0x43)),
|
|
DIKS_CAPITAL_D = ((DIKT_UNICODE) | (0x44)),
|
|
DIKS_CAPITAL_E = ((DIKT_UNICODE) | (0x45)),
|
|
DIKS_CAPITAL_F = ((DIKT_UNICODE) | (0x46)),
|
|
DIKS_CAPITAL_G = ((DIKT_UNICODE) | (0x47)),
|
|
DIKS_CAPITAL_H = ((DIKT_UNICODE) | (0x48)),
|
|
DIKS_CAPITAL_I = ((DIKT_UNICODE) | (0x49)),
|
|
DIKS_CAPITAL_J = ((DIKT_UNICODE) | (0x4A)),
|
|
DIKS_CAPITAL_K = ((DIKT_UNICODE) | (0x4B)),
|
|
DIKS_CAPITAL_L = ((DIKT_UNICODE) | (0x4C)),
|
|
DIKS_CAPITAL_M = ((DIKT_UNICODE) | (0x4D)),
|
|
DIKS_CAPITAL_N = ((DIKT_UNICODE) | (0x4E)),
|
|
DIKS_CAPITAL_O = ((DIKT_UNICODE) | (0x4F)),
|
|
DIKS_CAPITAL_P = ((DIKT_UNICODE) | (0x50)),
|
|
DIKS_CAPITAL_Q = ((DIKT_UNICODE) | (0x51)),
|
|
DIKS_CAPITAL_R = ((DIKT_UNICODE) | (0x52)),
|
|
DIKS_CAPITAL_S = ((DIKT_UNICODE) | (0x53)),
|
|
DIKS_CAPITAL_T = ((DIKT_UNICODE) | (0x54)),
|
|
DIKS_CAPITAL_U = ((DIKT_UNICODE) | (0x55)),
|
|
DIKS_CAPITAL_V = ((DIKT_UNICODE) | (0x56)),
|
|
DIKS_CAPITAL_W = ((DIKT_UNICODE) | (0x57)),
|
|
DIKS_CAPITAL_X = ((DIKT_UNICODE) | (0x58)),
|
|
DIKS_CAPITAL_Y = ((DIKT_UNICODE) | (0x59)),
|
|
DIKS_CAPITAL_Z = ((DIKT_UNICODE) | (0x5A)),
|
|
DIKS_SQUARE_BRACKET_LEFT = ((DIKT_UNICODE) | (0x5B)),
|
|
DIKS_BACKSLASH = ((DIKT_UNICODE) | (0x5C)),
|
|
DIKS_SQUARE_BRACKET_RIGHT = ((DIKT_UNICODE) | (0x5D)),
|
|
DIKS_CIRCUMFLEX_ACCENT = ((DIKT_UNICODE) | (0x5E)),
|
|
DIKS_UNDERSCORE = ((DIKT_UNICODE) | (0x5F)),
|
|
DIKS_GRAVE_ACCENT = ((DIKT_UNICODE) | (0x60)),
|
|
DIKS_SMALL_A = ((DIKT_UNICODE) | (0x61)),
|
|
DIKS_SMALL_B = ((DIKT_UNICODE) | (0x62)),
|
|
DIKS_SMALL_C = ((DIKT_UNICODE) | (0x63)),
|
|
DIKS_SMALL_D = ((DIKT_UNICODE) | (0x64)),
|
|
DIKS_SMALL_E = ((DIKT_UNICODE) | (0x65)),
|
|
DIKS_SMALL_F = ((DIKT_UNICODE) | (0x66)),
|
|
DIKS_SMALL_G = ((DIKT_UNICODE) | (0x67)),
|
|
DIKS_SMALL_H = ((DIKT_UNICODE) | (0x68)),
|
|
DIKS_SMALL_I = ((DIKT_UNICODE) | (0x69)),
|
|
DIKS_SMALL_J = ((DIKT_UNICODE) | (0x6A)),
|
|
DIKS_SMALL_K = ((DIKT_UNICODE) | (0x6B)),
|
|
DIKS_SMALL_L = ((DIKT_UNICODE) | (0x6C)),
|
|
DIKS_SMALL_M = ((DIKT_UNICODE) | (0x6D)),
|
|
DIKS_SMALL_N = ((DIKT_UNICODE) | (0x6E)),
|
|
DIKS_SMALL_O = ((DIKT_UNICODE) | (0x6F)),
|
|
DIKS_SMALL_P = ((DIKT_UNICODE) | (0x70)),
|
|
DIKS_SMALL_Q = ((DIKT_UNICODE) | (0x71)),
|
|
DIKS_SMALL_R = ((DIKT_UNICODE) | (0x72)),
|
|
DIKS_SMALL_S = ((DIKT_UNICODE) | (0x73)),
|
|
DIKS_SMALL_T = ((DIKT_UNICODE) | (0x74)),
|
|
DIKS_SMALL_U = ((DIKT_UNICODE) | (0x75)),
|
|
DIKS_SMALL_V = ((DIKT_UNICODE) | (0x76)),
|
|
DIKS_SMALL_W = ((DIKT_UNICODE) | (0x77)),
|
|
DIKS_SMALL_X = ((DIKT_UNICODE) | (0x78)),
|
|
DIKS_SMALL_Y = ((DIKT_UNICODE) | (0x79)),
|
|
DIKS_SMALL_Z = ((DIKT_UNICODE) | (0x7A)),
|
|
DIKS_CURLY_BRACKET_LEFT = ((DIKT_UNICODE) | (0x7B)),
|
|
DIKS_VERTICAL_BAR = ((DIKT_UNICODE) | (0x7C)),
|
|
DIKS_CURLY_BRACKET_RIGHT = ((DIKT_UNICODE) | (0x7D)),
|
|
DIKS_TILDE = ((DIKT_UNICODE) | (0x7E)),
|
|
DIKS_DELETE = ((DIKT_UNICODE) | (0x7F)),
|
|
DIKS_ENTER = DIKS_RETURN,
|
|
DIKS_CURSOR_LEFT = ((DIKT_SPECIAL) | (0x00)),
|
|
DIKS_CURSOR_RIGHT = ((DIKT_SPECIAL) | (0x01)),
|
|
DIKS_CURSOR_UP = ((DIKT_SPECIAL) | (0x02)),
|
|
DIKS_CURSOR_DOWN = ((DIKT_SPECIAL) | (0x03)),
|
|
DIKS_INSERT = ((DIKT_SPECIAL) | (0x04)),
|
|
DIKS_HOME = ((DIKT_SPECIAL) | (0x05)),
|
|
DIKS_END = ((DIKT_SPECIAL) | (0x06)),
|
|
DIKS_PAGE_UP = ((DIKT_SPECIAL) | (0x07)),
|
|
DIKS_PAGE_DOWN = ((DIKT_SPECIAL) | (0x08)),
|
|
DIKS_PRINT = ((DIKT_SPECIAL) | (0x09)),
|
|
DIKS_PAUSE = ((DIKT_SPECIAL) | (0x0A)),
|
|
DIKS_OK = ((DIKT_SPECIAL) | (0x0B)),
|
|
DIKS_SELECT = ((DIKT_SPECIAL) | (0x0C)),
|
|
DIKS_GOTO = ((DIKT_SPECIAL) | (0x0D)),
|
|
DIKS_CLEAR = ((DIKT_SPECIAL) | (0x0E)),
|
|
DIKS_POWER = ((DIKT_SPECIAL) | (0x0F)),
|
|
DIKS_POWER2 = ((DIKT_SPECIAL) | (0x10)),
|
|
DIKS_OPTION = ((DIKT_SPECIAL) | (0x11)),
|
|
DIKS_MENU = ((DIKT_SPECIAL) | (0x12)),
|
|
DIKS_HELP = ((DIKT_SPECIAL) | (0x13)),
|
|
DIKS_INFO = ((DIKT_SPECIAL) | (0x14)),
|
|
DIKS_TIME = ((DIKT_SPECIAL) | (0x15)),
|
|
DIKS_VENDOR = ((DIKT_SPECIAL) | (0x16)),
|
|
DIKS_ARCHIVE = ((DIKT_SPECIAL) | (0x17)),
|
|
DIKS_PROGRAM = ((DIKT_SPECIAL) | (0x18)),
|
|
DIKS_CHANNEL = ((DIKT_SPECIAL) | (0x19)),
|
|
DIKS_FAVORITES = ((DIKT_SPECIAL) | (0x1A)),
|
|
DIKS_EPG = ((DIKT_SPECIAL) | (0x1B)),
|
|
DIKS_PVR = ((DIKT_SPECIAL) | (0x1C)),
|
|
DIKS_MHP = ((DIKT_SPECIAL) | (0x1D)),
|
|
DIKS_LANGUAGE = ((DIKT_SPECIAL) | (0x1E)),
|
|
DIKS_TITLE = ((DIKT_SPECIAL) | (0x1F)),
|
|
DIKS_SUBTITLE = ((DIKT_SPECIAL) | (0x20)),
|
|
DIKS_ANGLE = ((DIKT_SPECIAL) | (0x21)),
|
|
DIKS_ZOOM = ((DIKT_SPECIAL) | (0x22)),
|
|
DIKS_MODE = ((DIKT_SPECIAL) | (0x23)),
|
|
DIKS_KEYBOARD = ((DIKT_SPECIAL) | (0x24)),
|
|
DIKS_PC = ((DIKT_SPECIAL) | (0x25)),
|
|
DIKS_SCREEN = ((DIKT_SPECIAL) | (0x26)),
|
|
DIKS_TV = ((DIKT_SPECIAL) | (0x27)),
|
|
DIKS_TV2 = ((DIKT_SPECIAL) | (0x28)),
|
|
DIKS_VCR = ((DIKT_SPECIAL) | (0x29)),
|
|
DIKS_VCR2 = ((DIKT_SPECIAL) | (0x2A)),
|
|
DIKS_SAT = ((DIKT_SPECIAL) | (0x2B)),
|
|
DIKS_SAT2 = ((DIKT_SPECIAL) | (0x2C)),
|
|
DIKS_CD = ((DIKT_SPECIAL) | (0x2D)),
|
|
DIKS_TAPE = ((DIKT_SPECIAL) | (0x2E)),
|
|
DIKS_RADIO = ((DIKT_SPECIAL) | (0x2F)),
|
|
DIKS_TUNER = ((DIKT_SPECIAL) | (0x30)),
|
|
DIKS_PLAYER = ((DIKT_SPECIAL) | (0x31)),
|
|
DIKS_TEXT = ((DIKT_SPECIAL) | (0x32)),
|
|
DIKS_DVD = ((DIKT_SPECIAL) | (0x33)),
|
|
DIKS_AUX = ((DIKT_SPECIAL) | (0x34)),
|
|
DIKS_MP3 = ((DIKT_SPECIAL) | (0x35)),
|
|
DIKS_PHONE = ((DIKT_SPECIAL) | (0x36)),
|
|
DIKS_AUDIO = ((DIKT_SPECIAL) | (0x37)),
|
|
DIKS_VIDEO = ((DIKT_SPECIAL) | (0x38)),
|
|
DIKS_INTERNET = ((DIKT_SPECIAL) | (0x39)),
|
|
DIKS_MAIL = ((DIKT_SPECIAL) | (0x3A)),
|
|
DIKS_NEWS = ((DIKT_SPECIAL) | (0x3B)),
|
|
DIKS_DIRECTORY = ((DIKT_SPECIAL) | (0x3C)),
|
|
DIKS_LIST = ((DIKT_SPECIAL) | (0x3D)),
|
|
DIKS_CALCULATOR = ((DIKT_SPECIAL) | (0x3E)),
|
|
DIKS_MEMO = ((DIKT_SPECIAL) | (0x3F)),
|
|
DIKS_CALENDAR = ((DIKT_SPECIAL) | (0x40)),
|
|
DIKS_EDITOR = ((DIKT_SPECIAL) | (0x41)),
|
|
DIKS_RED = ((DIKT_SPECIAL) | (0x42)),
|
|
DIKS_GREEN = ((DIKT_SPECIAL) | (0x43)),
|
|
DIKS_YELLOW = ((DIKT_SPECIAL) | (0x44)),
|
|
DIKS_BLUE = ((DIKT_SPECIAL) | (0x45)),
|
|
DIKS_CHANNEL_UP = ((DIKT_SPECIAL) | (0x46)),
|
|
DIKS_CHANNEL_DOWN = ((DIKT_SPECIAL) | (0x47)),
|
|
DIKS_BACK = ((DIKT_SPECIAL) | (0x48)),
|
|
DIKS_FORWARD = ((DIKT_SPECIAL) | (0x49)),
|
|
DIKS_FIRST = ((DIKT_SPECIAL) | (0x4A)),
|
|
DIKS_LAST = ((DIKT_SPECIAL) | (0x4B)),
|
|
DIKS_VOLUME_UP = ((DIKT_SPECIAL) | (0x4C)),
|
|
DIKS_VOLUME_DOWN = ((DIKT_SPECIAL) | (0x4D)),
|
|
DIKS_MUTE = ((DIKT_SPECIAL) | (0x4E)),
|
|
DIKS_AB = ((DIKT_SPECIAL) | (0x4F)),
|
|
DIKS_PLAYPAUSE = ((DIKT_SPECIAL) | (0x50)),
|
|
DIKS_PLAY = ((DIKT_SPECIAL) | (0x51)),
|
|
DIKS_STOP = ((DIKT_SPECIAL) | (0x52)),
|
|
DIKS_RESTART = ((DIKT_SPECIAL) | (0x53)),
|
|
DIKS_SLOW = ((DIKT_SPECIAL) | (0x54)),
|
|
DIKS_FAST = ((DIKT_SPECIAL) | (0x55)),
|
|
DIKS_RECORD = ((DIKT_SPECIAL) | (0x56)),
|
|
DIKS_EJECT = ((DIKT_SPECIAL) | (0x57)),
|
|
DIKS_SHUFFLE = ((DIKT_SPECIAL) | (0x58)),
|
|
DIKS_REWIND = ((DIKT_SPECIAL) | (0x59)),
|
|
DIKS_FASTFORWARD = ((DIKT_SPECIAL) | (0x5A)),
|
|
DIKS_PREVIOUS = ((DIKT_SPECIAL) | (0x5B)),
|
|
DIKS_NEXT = ((DIKT_SPECIAL) | (0x5C)),
|
|
DIKS_BEGIN = ((DIKT_SPECIAL) | (0x5D)),
|
|
DIKS_DIGITS = ((DIKT_SPECIAL) | (0x5E)),
|
|
DIKS_TEEN = ((DIKT_SPECIAL) | (0x5F)),
|
|
DIKS_TWEN = ((DIKT_SPECIAL) | (0x60)),
|
|
DIKS_BREAK = ((DIKT_SPECIAL) | (0x61)),
|
|
DIKS_EXIT = ((DIKT_SPECIAL) | (0x62)),
|
|
DIKS_SETUP = ((DIKT_SPECIAL) | (0x63)),
|
|
DIKS_CURSOR_LEFT_UP = ((DIKT_SPECIAL) | (0x64)),
|
|
DIKS_CURSOR_LEFT_DOWN = ((DIKT_SPECIAL) | (0x65)),
|
|
DIKS_CURSOR_UP_RIGHT = ((DIKT_SPECIAL) | (0x66)),
|
|
DIKS_CURSOR_DOWN_RIGHT = ((DIKT_SPECIAL) | (0x67)),
|
|
DIKS_F1 = (((DIKT_FUNCTION) | (1))),
|
|
DIKS_F2 = (((DIKT_FUNCTION) | (2))),
|
|
DIKS_F3 = (((DIKT_FUNCTION) | (3))),
|
|
DIKS_F4 = (((DIKT_FUNCTION) | (4))),
|
|
DIKS_F5 = (((DIKT_FUNCTION) | (5))),
|
|
DIKS_F6 = (((DIKT_FUNCTION) | (6))),
|
|
DIKS_F7 = (((DIKT_FUNCTION) | (7))),
|
|
DIKS_F8 = (((DIKT_FUNCTION) | (8))),
|
|
DIKS_F9 = (((DIKT_FUNCTION) | (9))),
|
|
DIKS_F10 = (((DIKT_FUNCTION) | (10))),
|
|
DIKS_F11 = (((DIKT_FUNCTION) | (11))),
|
|
DIKS_F12 = (((DIKT_FUNCTION) | (12))),
|
|
DIKS_SHIFT = (((DIKT_MODIFIER) | ((1 << DIMKI_SHIFT)))),
|
|
DIKS_CONTROL = (((DIKT_MODIFIER) | ((1 << DIMKI_CONTROL)))),
|
|
DIKS_ALT = (((DIKT_MODIFIER) | ((1 << DIMKI_ALT)))),
|
|
DIKS_ALTGR = (((DIKT_MODIFIER) | ((1 << DIMKI_ALTGR)))),
|
|
DIKS_META = (((DIKT_MODIFIER) | ((1 << DIMKI_META)))),
|
|
DIKS_SUPER = (((DIKT_MODIFIER) | ((1 << DIMKI_SUPER)))),
|
|
DIKS_HYPER = (((DIKT_MODIFIER) | ((1 << DIMKI_HYPER)))),
|
|
DIKS_CAPS_LOCK = ((DIKT_LOCK) | (0x00)),
|
|
DIKS_NUM_LOCK = ((DIKT_LOCK) | (0x01)),
|
|
DIKS_SCROLL_LOCK = ((DIKT_LOCK) | (0x02)),
|
|
DIKS_DEAD_ABOVEDOT = ((DIKT_DEAD) | (0x00)),
|
|
DIKS_DEAD_ABOVERING = ((DIKT_DEAD) | (0x01)),
|
|
DIKS_DEAD_ACUTE = ((DIKT_DEAD) | (0x02)),
|
|
DIKS_DEAD_BREVE = ((DIKT_DEAD) | (0x03)),
|
|
DIKS_DEAD_CARON = ((DIKT_DEAD) | (0x04)),
|
|
DIKS_DEAD_CEDILLA = ((DIKT_DEAD) | (0x05)),
|
|
DIKS_DEAD_CIRCUMFLEX = ((DIKT_DEAD) | (0x06)),
|
|
DIKS_DEAD_DIAERESIS = ((DIKT_DEAD) | (0x07)),
|
|
DIKS_DEAD_DOUBLEACUTE = ((DIKT_DEAD) | (0x08)),
|
|
DIKS_DEAD_GRAVE = ((DIKT_DEAD) | (0x09)),
|
|
DIKS_DEAD_IOTA = ((DIKT_DEAD) | (0x0A)),
|
|
DIKS_DEAD_MACRON = ((DIKT_DEAD) | (0x0B)),
|
|
DIKS_DEAD_OGONEK = ((DIKT_DEAD) | (0x0C)),
|
|
DIKS_DEAD_SEMIVOICED_SOUND = ((DIKT_DEAD) | (0x0D)),
|
|
DIKS_DEAD_TILDE = ((DIKT_DEAD) | (0x0E)),
|
|
DIKS_DEAD_VOICED_SOUND = ((DIKT_DEAD) | (0x0F)),
|
|
DIKS_CUSTOM0 = (((DIKT_CUSTOM) | (0))),
|
|
DIKS_CUSTOM1 = (((DIKT_CUSTOM) | (1))),
|
|
DIKS_CUSTOM2 = (((DIKT_CUSTOM) | (2))),
|
|
DIKS_CUSTOM3 = (((DIKT_CUSTOM) | (3))),
|
|
DIKS_CUSTOM4 = (((DIKT_CUSTOM) | (4))),
|
|
DIKS_CUSTOM5 = (((DIKT_CUSTOM) | (5))),
|
|
DIKS_CUSTOM6 = (((DIKT_CUSTOM) | (6))),
|
|
DIKS_CUSTOM7 = (((DIKT_CUSTOM) | (7))),
|
|
DIKS_CUSTOM8 = (((DIKT_CUSTOM) | (8))),
|
|
DIKS_CUSTOM9 = (((DIKT_CUSTOM) | (9)))
|
|
} DFBInputDeviceKeySymbol;
|
|
typedef enum
|
|
{
|
|
DILS_SCROLL = 0x00000001,
|
|
DILS_NUM = 0x00000002,
|
|
DILS_CAPS = 0x00000004
|
|
} DFBInputDeviceLockState;
|
|
typedef enum
|
|
{
|
|
DIKSI_BASE = 0x00,
|
|
DIKSI_BASE_SHIFT = 0x01,
|
|
DIKSI_ALT = 0x02,
|
|
DIKSI_ALT_SHIFT = 0x03,
|
|
DIKSI_LAST = DIKSI_ALT_SHIFT
|
|
} DFBInputDeviceKeymapSymbolIndex;
|
|
typedef struct
|
|
{
|
|
int code;
|
|
DFBInputDeviceLockState locks;
|
|
DFBInputDeviceKeyIdentifier identifier;
|
|
DFBInputDeviceKeySymbol symbols[DIKSI_LAST + 1];
|
|
} DFBInputDeviceKeymapEntry;
|
|
extern const unsigned int directfb_major_version;
|
|
extern const unsigned int directfb_minor_version;
|
|
extern const unsigned int directfb_micro_version;
|
|
extern const unsigned int directfb_binary_age;
|
|
extern const unsigned int directfb_interface_age;
|
|
const char *DirectFBCheckVersion(unsigned int required_major,
|
|
unsigned int required_minor,
|
|
unsigned int required_micro);
|
|
|
|
typedef struct _IDirectFB IDirectFB;
|
|
typedef struct _IDirectFBScreen IDirectFBScreen;
|
|
typedef struct _IDirectFBDisplayLayer IDirectFBDisplayLayer;
|
|
typedef struct _IDirectFBSurface IDirectFBSurface;
|
|
typedef struct _IDirectFBPalette IDirectFBPalette;
|
|
typedef struct _IDirectFBWindow IDirectFBWindow;
|
|
typedef struct _IDirectFBInputDevice IDirectFBInputDevice;
|
|
typedef struct _IDirectFBEventBuffer IDirectFBEventBuffer;
|
|
typedef struct _IDirectFBFont IDirectFBFont;
|
|
typedef struct _IDirectFBImageProvider IDirectFBImageProvider;
|
|
typedef struct _IDirectFBVideoProvider IDirectFBVideoProvider;
|
|
typedef struct _IDirectFBDataBuffer IDirectFBDataBuffer;
|
|
typedef struct _IDirectFBGL IDirectFBGL;
|
|
typedef enum
|
|
{
|
|
DFB_OK,
|
|
DFB_FAILURE,
|
|
DFB_INIT,
|
|
DFB_BUG,
|
|
DFB_DEAD,
|
|
DFB_UNSUPPORTED,
|
|
DFB_UNIMPLEMENTED,
|
|
DFB_ACCESSDENIED,
|
|
DFB_INVARG,
|
|
DFB_NOSYSTEMMEMORY,
|
|
DFB_NOVIDEOMEMORY,
|
|
DFB_LOCKED,
|
|
DFB_BUFFEREMPTY,
|
|
DFB_FILENOTFOUND,
|
|
DFB_IO,
|
|
DFB_BUSY,
|
|
DFB_NOIMPL,
|
|
DFB_MISSINGFONT,
|
|
DFB_TIMEOUT,
|
|
DFB_MISSINGIMAGE,
|
|
DFB_THIZNULL,
|
|
DFB_IDNOTFOUND,
|
|
DFB_INVAREA,
|
|
DFB_DESTROYED,
|
|
DFB_FUSION,
|
|
DFB_BUFFERTOOLARGE,
|
|
DFB_INTERRUPTED,
|
|
DFB_NOCONTEXT,
|
|
DFB_TEMPUNAVAIL,
|
|
DFB_LIMITEXCEEDED,
|
|
DFB_NOSUCHMETHOD,
|
|
DFB_NOSUCHINSTANCE,
|
|
DFB_ITEMNOTFOUND,
|
|
DFB_VERSIONMISMATCH,
|
|
DFB_NOSHAREDMEMORY
|
|
} DFBResult;
|
|
typedef enum
|
|
{
|
|
DFB_FALSE = 0,
|
|
DFB_TRUE = !DFB_FALSE
|
|
} DFBBoolean;
|
|
typedef struct
|
|
{
|
|
int x;
|
|
int y;
|
|
} DFBPoint;
|
|
typedef struct
|
|
{
|
|
int x;
|
|
int w;
|
|
} DFBSpan;
|
|
typedef struct
|
|
{
|
|
int w;
|
|
int h;
|
|
} DFBDimension;
|
|
typedef struct
|
|
{
|
|
int x;
|
|
int y;
|
|
int w;
|
|
int h;
|
|
} DFBRectangle;
|
|
typedef struct
|
|
{
|
|
float x;
|
|
float y;
|
|
float w;
|
|
float h;
|
|
} DFBLocation;
|
|
typedef struct
|
|
{
|
|
int x1;
|
|
int y1;
|
|
int x2;
|
|
int y2;
|
|
} DFBRegion;
|
|
typedef struct
|
|
{
|
|
int l;
|
|
int t;
|
|
int r;
|
|
int b;
|
|
} DFBInsets;
|
|
typedef struct
|
|
{
|
|
int x1;
|
|
int y1;
|
|
int x2;
|
|
int y2;
|
|
int x3;
|
|
int y3;
|
|
} DFBTriangle;
|
|
typedef struct
|
|
{
|
|
__u8 a;
|
|
__u8 r;
|
|
__u8 g;
|
|
__u8 b;
|
|
} DFBColor;
|
|
DFBResult DirectFBError(
|
|
const char *msg,
|
|
DFBResult result
|
|
);
|
|
DFBResult DirectFBErrorFatal(
|
|
const char *msg,
|
|
DFBResult result
|
|
);
|
|
const char *DirectFBErrorString(
|
|
DFBResult result
|
|
);
|
|
const char *DirectFBUsageString(void);
|
|
DFBResult DirectFBInit(
|
|
int *argc,
|
|
char **argv[]
|
|
);
|
|
DFBResult DirectFBSetOption(
|
|
const char *name,
|
|
const char *value
|
|
);
|
|
DFBResult DirectFBCreate(
|
|
IDirectFB **interface
|
|
);
|
|
|
|
typedef unsigned int DFBScreenID;
|
|
typedef unsigned int DFBDisplayLayerID;
|
|
typedef unsigned int DFBDisplayLayerSourceID;
|
|
typedef unsigned int DFBWindowID;
|
|
typedef unsigned int DFBInputDeviceID;
|
|
typedef __u32 DFBDisplayLayerIDs;
|
|
typedef enum
|
|
{
|
|
DFSCL_NORMAL = 0x00000000,
|
|
DFSCL_FULLSCREEN,
|
|
DFSCL_EXCLUSIVE
|
|
} DFBCooperativeLevel;
|
|
typedef enum
|
|
{
|
|
DLCAPS_NONE = 0x00000000,
|
|
DLCAPS_SURFACE = 0x00000001,
|
|
DLCAPS_OPACITY = 0x00000002,
|
|
DLCAPS_ALPHACHANNEL = 0x00000004,
|
|
DLCAPS_SCREEN_LOCATION = 0x00000008,
|
|
DLCAPS_FLICKER_FILTERING = 0x00000010,
|
|
DLCAPS_DEINTERLACING = 0x00000020,
|
|
DLCAPS_SRC_COLORKEY = 0x00000040,
|
|
DLCAPS_DST_COLORKEY = 0x00000080,
|
|
DLCAPS_BRIGHTNESS = 0x00000100,
|
|
DLCAPS_CONTRAST = 0x00000200,
|
|
DLCAPS_HUE = 0x00000400,
|
|
DLCAPS_SATURATION = 0x00000800,
|
|
DLCAPS_LEVELS = 0x00001000,
|
|
DLCAPS_FIELD_PARITY = 0x00002000,
|
|
DLCAPS_WINDOWS = 0x00004000,
|
|
DLCAPS_SOURCES = 0x00008000,
|
|
DLCAPS_ALPHA_RAMP = 0x00010000,
|
|
DLCAPS_PREMULTIPLIED = 0x00020000,
|
|
DLCAPS_SCREEN_POSITION = 0x00100000,
|
|
DLCAPS_SCREEN_SIZE = 0x00200000,
|
|
DLCAPS_ALL = 0x0033FFFF
|
|
} DFBDisplayLayerCapabilities;
|
|
typedef enum
|
|
{
|
|
DSCCAPS_NONE = 0x00000000,
|
|
DSCCAPS_VSYNC = 0x00000001,
|
|
DSCCAPS_POWER_MANAGEMENT = 0x00000002,
|
|
DSCCAPS_MIXERS = 0x00000010,
|
|
DSCCAPS_ENCODERS = 0x00000020,
|
|
DSCCAPS_OUTPUTS = 0x00000040,
|
|
DSCCAPS_ALL = 0x00000073
|
|
} DFBScreenCapabilities;
|
|
typedef enum
|
|
{
|
|
DLOP_NONE = 0x00000000,
|
|
DLOP_ALPHACHANNEL = 0x00000001,
|
|
DLOP_FLICKER_FILTERING = 0x00000002,
|
|
DLOP_DEINTERLACING = 0x00000004,
|
|
DLOP_SRC_COLORKEY = 0x00000008,
|
|
DLOP_DST_COLORKEY = 0x00000010,
|
|
DLOP_OPACITY = 0x00000020,
|
|
DLOP_FIELD_PARITY = 0x00000040
|
|
} DFBDisplayLayerOptions;
|
|
typedef enum
|
|
{
|
|
DLBM_UNKNOWN = 0x00000000,
|
|
DLBM_FRONTONLY = 0x00000001,
|
|
DLBM_BACKVIDEO = 0x00000002,
|
|
DLBM_BACKSYSTEM = 0x00000004,
|
|
DLBM_TRIPLE = 0x00000008,
|
|
DLBM_WINDOWS = 0x00000010
|
|
} DFBDisplayLayerBufferMode;
|
|
typedef enum
|
|
{
|
|
DSDESC_CAPS = 0x00000001,
|
|
DSDESC_WIDTH = 0x00000002,
|
|
DSDESC_HEIGHT = 0x00000004,
|
|
DSDESC_PIXELFORMAT = 0x00000008,
|
|
DSDESC_PREALLOCATED = 0x00000010,
|
|
DSDESC_PALETTE = 0x00000020
|
|
} DFBSurfaceDescriptionFlags;
|
|
typedef enum
|
|
{
|
|
DPDESC_CAPS = 0x00000001,
|
|
DPDESC_SIZE = 0x00000002,
|
|
DPDESC_ENTRIES = 0x00000004
|
|
} DFBPaletteDescriptionFlags;
|
|
typedef enum
|
|
{
|
|
DSCAPS_NONE = 0x00000000,
|
|
DSCAPS_PRIMARY = 0x00000001,
|
|
DSCAPS_SYSTEMONLY = 0x00000002,
|
|
DSCAPS_VIDEOONLY = 0x00000004,
|
|
DSCAPS_DOUBLE = 0x00000010,
|
|
DSCAPS_SUBSURFACE = 0x00000020,
|
|
DSCAPS_INTERLACED = 0x00000040,
|
|
DSCAPS_SEPARATED = 0x00000080,
|
|
DSCAPS_STATIC_ALLOC = 0x00000100,
|
|
DSCAPS_TRIPLE = 0x00000200,
|
|
DSCAPS_PREMULTIPLIED = 0x00001000,
|
|
DSCAPS_DEPTH = 0x00010000,
|
|
DSCAPS_ALL = 0x000113F7,
|
|
DSCAPS_FLIPPING = DSCAPS_DOUBLE | DSCAPS_TRIPLE
|
|
} DFBSurfaceCapabilities;
|
|
typedef enum
|
|
{
|
|
DPCAPS_NONE = 0x00000000
|
|
} DFBPaletteCapabilities;
|
|
typedef enum
|
|
{
|
|
DSDRAW_NOFX = 0x00000000,
|
|
DSDRAW_BLEND = 0x00000001,
|
|
DSDRAW_DST_COLORKEY = 0x00000002,
|
|
DSDRAW_SRC_PREMULTIPLY = 0x00000004,
|
|
DSDRAW_DST_PREMULTIPLY = 0x00000008,
|
|
DSDRAW_DEMULTIPLY = 0x00000010,
|
|
DSDRAW_XOR = 0x00000020
|
|
} DFBSurfaceDrawingFlags;
|
|
typedef enum
|
|
{
|
|
DSBLIT_NOFX = 0x00000000,
|
|
DSBLIT_BLEND_ALPHACHANNEL = 0x00000001,
|
|
DSBLIT_BLEND_COLORALPHA = 0x00000002,
|
|
DSBLIT_COLORIZE = 0x00000004,
|
|
DSBLIT_SRC_COLORKEY = 0x00000008,
|
|
DSBLIT_DST_COLORKEY = 0x00000010,
|
|
DSBLIT_SRC_PREMULTIPLY = 0x00000020,
|
|
DSBLIT_DST_PREMULTIPLY = 0x00000040,
|
|
DSBLIT_DEMULTIPLY = 0x00000080,
|
|
DSBLIT_DEINTERLACE = 0x00000100
|
|
} DFBSurfaceBlittingFlags;
|
|
typedef enum
|
|
{
|
|
DFXL_NONE = 0x00000000,
|
|
DFXL_FILLRECTANGLE = 0x00000001,
|
|
DFXL_DRAWRECTANGLE = 0x00000002,
|
|
DFXL_DRAWLINE = 0x00000004,
|
|
DFXL_FILLTRIANGLE = 0x00000008,
|
|
DFXL_BLIT = 0x00010000,
|
|
DFXL_STRETCHBLIT = 0x00020000,
|
|
DFXL_TEXTRIANGLES = 0x00040000,
|
|
DFXL_DRAWSTRING = 0x01000000,
|
|
DFXL_ALL = 0x0107000F
|
|
} DFBAccelerationMask;
|
|
typedef struct
|
|
{
|
|
DFBAccelerationMask acceleration_mask;
|
|
DFBSurfaceDrawingFlags drawing_flags;
|
|
DFBSurfaceBlittingFlags blitting_flags;
|
|
unsigned int video_memory;
|
|
} DFBCardCapabilities;
|
|
typedef enum
|
|
{
|
|
DLTF_NONE = 0x00000000,
|
|
DLTF_GRAPHICS = 0x00000001,
|
|
DLTF_VIDEO = 0x00000002,
|
|
DLTF_STILL_PICTURE = 0x00000004,
|
|
DLTF_BACKGROUND = 0x00000008,
|
|
DLTF_ALL = 0x0000000F
|
|
} DFBDisplayLayerTypeFlags;
|
|
typedef enum
|
|
{
|
|
DIDTF_NONE = 0x00000000,
|
|
DIDTF_KEYBOARD = 0x00000001,
|
|
DIDTF_MOUSE = 0x00000002,
|
|
DIDTF_JOYSTICK = 0x00000004,
|
|
DIDTF_REMOTE = 0x00000008,
|
|
DIDTF_VIRTUAL = 0x00000010,
|
|
DIDTF_ALL = 0x0000001F
|
|
} DFBInputDeviceTypeFlags;
|
|
typedef enum
|
|
{
|
|
DICAPS_KEYS = 0x00000001,
|
|
DICAPS_AXES = 0x00000002,
|
|
DICAPS_BUTTONS = 0x00000004,
|
|
DICAPS_ALL = 0x00000007
|
|
} DFBInputDeviceCapabilities;
|
|
typedef enum
|
|
{
|
|
DIBI_LEFT = 0x00000000,
|
|
DIBI_RIGHT = 0x00000001,
|
|
DIBI_MIDDLE = 0x00000002,
|
|
DIBI_FIRST = DIBI_LEFT,
|
|
DIBI_LAST = 0x0000001F
|
|
} DFBInputDeviceButtonIdentifier;
|
|
typedef enum
|
|
{
|
|
DIAI_X = 0x00000000,
|
|
DIAI_Y = 0x00000001,
|
|
DIAI_Z = 0x00000002,
|
|
DIAI_FIRST = DIAI_X,
|
|
DIAI_LAST = 0x0000001F
|
|
} DFBInputDeviceAxisIdentifier;
|
|
typedef enum
|
|
{
|
|
DWDESC_CAPS = 0x00000001,
|
|
DWDESC_WIDTH = 0x00000002,
|
|
DWDESC_HEIGHT = 0x00000004,
|
|
DWDESC_PIXELFORMAT = 0x00000008,
|
|
DWDESC_POSX = 0x00000010,
|
|
DWDESC_POSY = 0x00000020,
|
|
DWDESC_SURFACE_CAPS = 0x00000040
|
|
} DFBWindowDescriptionFlags;
|
|
typedef enum
|
|
{
|
|
DBDESC_FILE = 0x00000001,
|
|
DBDESC_MEMORY = 0x00000002
|
|
} DFBDataBufferDescriptionFlags;
|
|
typedef enum
|
|
{
|
|
DWCAPS_NONE = 0x00000000,
|
|
DWCAPS_ALPHACHANNEL = 0x00000001,
|
|
DWCAPS_DOUBLEBUFFER = 0x00000002,
|
|
DWCAPS_INPUTONLY = 0x00000004,
|
|
DWCAPS_NODECORATION = 0x00000008,
|
|
DWCAPS_ALL = 0x0000000F
|
|
} DFBWindowCapabilities;
|
|
typedef enum
|
|
{
|
|
DFFA_NONE = 0x00000000,
|
|
DFFA_NOKERNING = 0x00000001,
|
|
DFFA_NOHINTING = 0x00000002,
|
|
DFFA_MONOCHROME = 0x00000004,
|
|
DFFA_NOCHARMAP = 0x00000008
|
|
} DFBFontAttributes;
|
|
typedef enum
|
|
{
|
|
DFDESC_ATTRIBUTES = 0x00000001,
|
|
DFDESC_HEIGHT = 0x00000002,
|
|
DFDESC_WIDTH = 0x00000004,
|
|
DFDESC_INDEX = 0x00000008,
|
|
DFDESC_FIXEDADVANCE = 0x00000010
|
|
} DFBFontDescriptionFlags;
|
|
typedef struct
|
|
{
|
|
DFBFontDescriptionFlags flags;
|
|
DFBFontAttributes attributes;
|
|
int height;
|
|
int width;
|
|
unsigned int index;
|
|
int fixed_advance;
|
|
} DFBFontDescription;
|
|
typedef enum
|
|
{
|
|
DSPF_UNKNOWN = 0x00000000,
|
|
DSPF_ARGB1555 = ((((0) & 0x7F)) | (((15) & 0x1F) << 7) | (((1) & 0x0F) << 12) | (((1) ? 1 : 0) << 16) | (((0) & 0x07) << 17) | (((2) & 0x07) << 20) | (((0) & 0x07) << 23) | (((0) & 0x03) << 26) | (((0) & 0x03) << 28) | (((0) ? 1 : 0) << 30) | (((0) ? 1 : 0) << 31)),
|
|
DSPF_RGB16 = ((((1) & 0x7F)) | (((16) & 0x1F) << 7) | (((0) & 0x0F) << 12) | (((0) ? 1 : 0) << 16) | (((0) & 0x07) << 17) | (((2) & 0x07) << 20) | (((0) & 0x07) << 23) | (((0) & 0x03) << 26) | (((0) & 0x03) << 28) | (((0) ? 1 : 0) << 30) | (((0) ? 1 : 0) << 31)),
|
|
DSPF_RGB24 = ((((2) & 0x7F)) | (((24) & 0x1F) << 7) | (((0) & 0x0F) << 12) | (((0) ? 1 : 0) << 16) | (((0) & 0x07) << 17) | (((3) & 0x07) << 20) | (((0) & 0x07) << 23) | (((0) & 0x03) << 26) | (((0) & 0x03) << 28) | (((0) ? 1 : 0) << 30) | (((0) ? 1 : 0) << 31)),
|
|
DSPF_RGB32 = ((((3) & 0x7F)) | (((24) & 0x1F) << 7) | (((0) & 0x0F) << 12) | (((0) ? 1 : 0) << 16) | (((0) & 0x07) << 17) | (((4) & 0x07) << 20) | (((0) & 0x07) << 23) | (((0) & 0x03) << 26) | (((0) & 0x03) << 28) | (((0) ? 1 : 0) << 30) | (((0) ? 1 : 0) << 31)),
|
|
DSPF_ARGB = ((((4) & 0x7F)) | (((24) & 0x1F) << 7) | (((8) & 0x0F) << 12) | (((1) ? 1 : 0) << 16) | (((0) & 0x07) << 17) | (((4) & 0x07) << 20) | (((0) & 0x07) << 23) | (((0) & 0x03) << 26) | (((0) & 0x03) << 28) | (((0) ? 1 : 0) << 30) | (((0) ? 1 : 0) << 31)),
|
|
DSPF_A8 = ((((5) & 0x7F)) | (((0) & 0x1F) << 7) | (((8) & 0x0F) << 12) | (((1) ? 1 : 0) << 16) | (((0) & 0x07) << 17) | (((1) & 0x07) << 20) | (((0) & 0x07) << 23) | (((0) & 0x03) << 26) | (((0) & 0x03) << 28) | (((0) ? 1 : 0) << 30) | (((0) ? 1 : 0) << 31)),
|
|
DSPF_YUY2 = ((((6) & 0x7F)) | (((16) & 0x1F) << 7) | (((0) & 0x0F) << 12) | (((0) ? 1 : 0) << 16) | (((0) & 0x07) << 17) | (((2) & 0x07) << 20) | (((0) & 0x07) << 23) | (((0) & 0x03) << 26) | (((0) & 0x03) << 28) | (((0) ? 1 : 0) << 30) | (((0) ? 1 : 0) << 31)),
|
|
DSPF_RGB332 = ((((7) & 0x7F)) | (((8) & 0x1F) << 7) | (((0) & 0x0F) << 12) | (((0) ? 1 : 0) << 16) | (((0) & 0x07) << 17) | (((1) & 0x07) << 20) | (((0) & 0x07) << 23) | (((0) & 0x03) << 26) | (((0) & 0x03) << 28) | (((0) ? 1 : 0) << 30) | (((0) ? 1 : 0) << 31)),
|
|
DSPF_UYVY = ((((8) & 0x7F)) | (((16) & 0x1F) << 7) | (((0) & 0x0F) << 12) | (((0) ? 1 : 0) << 16) | (((0) & 0x07) << 17) | (((2) & 0x07) << 20) | (((0) & 0x07) << 23) | (((0) & 0x03) << 26) | (((0) & 0x03) << 28) | (((0) ? 1 : 0) << 30) | (((0) ? 1 : 0) << 31)),
|
|
DSPF_I420 = ((((9) & 0x7F)) | (((12) & 0x1F) << 7) | (((0) & 0x0F) << 12) | (((0) ? 1 : 0) << 16) | (((0) & 0x07) << 17) | (((1) & 0x07) << 20) | (((0) & 0x07) << 23) | (((2) & 0x03) << 26) | (((0) & 0x03) << 28) | (((0) ? 1 : 0) << 30) | (((0) ? 1 : 0) << 31)),
|
|
DSPF_YV12 = ((((10) & 0x7F)) | (((12) & 0x1F) << 7) | (((0) & 0x0F) << 12) | (((0) ? 1 : 0) << 16) | (((0) & 0x07) << 17) | (((1) & 0x07) << 20) | (((0) & 0x07) << 23) | (((2) & 0x03) << 26) | (((0) & 0x03) << 28) | (((0) ? 1 : 0) << 30) | (((0) ? 1 : 0) << 31)),
|
|
DSPF_LUT8 = ((((11) & 0x7F)) | (((8) & 0x1F) << 7) | (((0) & 0x0F) << 12) | (((1) ? 1 : 0) << 16) | (((0) & 0x07) << 17) | (((1) & 0x07) << 20) | (((0) & 0x07) << 23) | (((0) & 0x03) << 26) | (((0) & 0x03) << 28) | (((1) ? 1 : 0) << 30) | (((0) ? 1 : 0) << 31)),
|
|
DSPF_ALUT44 = ((((12) & 0x7F)) | (((4) & 0x1F) << 7) | (((4) & 0x0F) << 12) | (((1) ? 1 : 0) << 16) | (((0) & 0x07) << 17) | (((1) & 0x07) << 20) | (((0) & 0x07) << 23) | (((0) & 0x03) << 26) | (((0) & 0x03) << 28) | (((1) ? 1 : 0) << 30) | (((0) ? 1 : 0) << 31)),
|
|
DSPF_AiRGB = ((((13) & 0x7F)) | (((24) & 0x1F) << 7) | (((8) & 0x0F) << 12) | (((1) ? 1 : 0) << 16) | (((0) & 0x07) << 17) | (((4) & 0x07) << 20) | (((0) & 0x07) << 23) | (((0) & 0x03) << 26) | (((0) & 0x03) << 28) | (((0) ? 1 : 0) << 30) | (((1) ? 1 : 0) << 31)),
|
|
DSPF_A1 = ((((14) & 0x7F)) | (((0) & 0x1F) << 7) | (((1) & 0x0F) << 12) | (((1) ? 1 : 0) << 16) | (((1) & 0x07) << 17) | (((0) & 0x07) << 20) | (((7) & 0x07) << 23) | (((0) & 0x03) << 26) | (((0) & 0x03) << 28) | (((0) ? 1 : 0) << 30) | (((0) ? 1 : 0) << 31)),
|
|
DSPF_NV12 = ((((15) & 0x7F)) | (((12) & 0x1F) << 7) | (((0) & 0x0F) << 12) | (((0) ? 1 : 0) << 16) | (((0) & 0x07) << 17) | (((1) & 0x07) << 20) | (((0) & 0x07) << 23) | (((2) & 0x03) << 26) | (((0) & 0x03) << 28) | (((0) ? 1 : 0) << 30) | (((0) ? 1 : 0) << 31)),
|
|
DSPF_NV16 = ((((16) & 0x7F)) | (((24) & 0x1F) << 7) | (((0) & 0x0F) << 12) | (((0) ? 1 : 0) << 16) | (((0) & 0x07) << 17) | (((1) & 0x07) << 20) | (((0) & 0x07) << 23) | (((0) & 0x03) << 26) | (((2) & 0x03) << 28) | (((0) ? 1 : 0) << 30) | (((0) ? 1 : 0) << 31)),
|
|
DSPF_ARGB2554 = ((((17) & 0x7F)) | (((14) & 0x1F) << 7) | (((2) & 0x0F) << 12) | (((1) ? 1 : 0) << 16) | (((0) & 0x07) << 17) | (((2) & 0x07) << 20) | (((0) & 0x07) << 23) | (((0) & 0x03) << 26) | (((0) & 0x03) << 28) | (((0) ? 1 : 0) << 30) | (((0) ? 1 : 0) << 31)),
|
|
DSPF_ARGB4444 = ((((18) & 0x7F)) | (((12) & 0x1F) << 7) | (((4) & 0x0F) << 12) | (((1) ? 1 : 0) << 16) | (((0) & 0x07) << 17) | (((2) & 0x07) << 20) | (((0) & 0x07) << 23) | (((0) & 0x03) << 26) | (((0) & 0x03) << 28) | (((0) ? 1 : 0) << 30) | (((0) ? 1 : 0) << 31)),
|
|
DSPF_NV21 = ((((19) & 0x7F)) | (((12) & 0x1F) << 7) | (((0) & 0x0F) << 12) | (((0) ? 1 : 0) << 16) | (((0) & 0x07) << 17) | (((1) & 0x07) << 20) | (((0) & 0x07) << 23) | (((2) & 0x03) << 26) | (((0) & 0x03) << 28) | (((0) ? 1 : 0) << 30) | (((0) ? 1 : 0) << 31))
|
|
} DFBSurfacePixelFormat;
|
|
typedef struct
|
|
{
|
|
DFBSurfaceDescriptionFlags flags;
|
|
DFBSurfaceCapabilities caps;
|
|
int width;
|
|
int height;
|
|
DFBSurfacePixelFormat pixelformat;
|
|
struct
|
|
{
|
|
void *data;
|
|
int pitch;
|
|
} preallocated[2];
|
|
struct
|
|
{
|
|
DFBColor *entries;
|
|
unsigned int size;
|
|
} palette;
|
|
} DFBSurfaceDescription;
|
|
typedef struct
|
|
{
|
|
DFBPaletteDescriptionFlags flags;
|
|
DFBPaletteCapabilities caps;
|
|
unsigned int size;
|
|
DFBColor *entries;
|
|
} DFBPaletteDescription;
|
|
typedef struct
|
|
{
|
|
DFBDisplayLayerTypeFlags type;
|
|
DFBDisplayLayerCapabilities caps;
|
|
char name[32];
|
|
int level;
|
|
int regions;
|
|
int sources;
|
|
} DFBDisplayLayerDescription;
|
|
typedef struct
|
|
{
|
|
DFBDisplayLayerSourceID source_id;
|
|
char name[24];
|
|
} DFBDisplayLayerSourceDescription;
|
|
typedef struct
|
|
{
|
|
DFBScreenCapabilities caps;
|
|
char name[32];
|
|
int mixers;
|
|
int encoders;
|
|
int outputs;
|
|
} DFBScreenDescription;
|
|
typedef struct
|
|
{
|
|
DFBInputDeviceTypeFlags type;
|
|
DFBInputDeviceCapabilities caps;
|
|
int min_keycode;
|
|
int max_keycode;
|
|
DFBInputDeviceAxisIdentifier max_axis;
|
|
DFBInputDeviceButtonIdentifier max_button;
|
|
char name[32];
|
|
char vendor[40];
|
|
} DFBInputDeviceDescription;
|
|
typedef struct
|
|
{
|
|
DFBWindowDescriptionFlags flags;
|
|
DFBWindowCapabilities caps;
|
|
int width;
|
|
int height;
|
|
DFBSurfacePixelFormat pixelformat;
|
|
int posx;
|
|
int posy;
|
|
DFBSurfaceCapabilities surface_caps;
|
|
} DFBWindowDescription;
|
|
typedef struct
|
|
{
|
|
DFBDataBufferDescriptionFlags flags;
|
|
const char *file;
|
|
struct
|
|
{
|
|
const void *data;
|
|
unsigned int length;
|
|
} memory;
|
|
} DFBDataBufferDescription;
|
|
typedef enum
|
|
{
|
|
DFENUM_OK = 0x00000000,
|
|
DFENUM_CANCEL = 0x00000001
|
|
} DFBEnumerationResult;
|
|
typedef DFBEnumerationResult (*DFBVideoModeCallback)(
|
|
int width,
|
|
int height,
|
|
int bpp,
|
|
void *callbackdata
|
|
);
|
|
typedef DFBEnumerationResult (*DFBScreenCallback)(
|
|
DFBScreenID screen_id,
|
|
DFBScreenDescription desc,
|
|
void *callbackdata
|
|
);
|
|
typedef DFBEnumerationResult (*DFBDisplayLayerCallback)(
|
|
DFBDisplayLayerID layer_id,
|
|
DFBDisplayLayerDescription desc,
|
|
void *callbackdata
|
|
);
|
|
typedef DFBEnumerationResult (*DFBInputDeviceCallback)(
|
|
DFBInputDeviceID device_id,
|
|
DFBInputDeviceDescription desc,
|
|
void *callbackdata
|
|
);
|
|
typedef int (*DFBGetDataCallback)(
|
|
void *buffer,
|
|
unsigned int length,
|
|
void *callbackdata
|
|
);
|
|
typedef enum
|
|
{
|
|
DVCAPS_BASIC = 0x00000000,
|
|
DVCAPS_SEEK = 0x00000001,
|
|
DVCAPS_SCALE = 0x00000002,
|
|
DVCAPS_INTERLACED = 0x00000004,
|
|
DVCAPS_BRIGHTNESS = 0x00000010,
|
|
DVCAPS_CONTRAST = 0x00000020,
|
|
DVCAPS_HUE = 0x00000040,
|
|
DVCAPS_SATURATION = 0x00000080
|
|
} DFBVideoProviderCapabilities;
|
|
typedef enum
|
|
{
|
|
DCAF_NONE = 0x00000000,
|
|
DCAF_BRIGHTNESS = 0x00000001,
|
|
DCAF_CONTRAST = 0x00000002,
|
|
DCAF_HUE = 0x00000004,
|
|
DCAF_SATURATION = 0x00000008
|
|
} DFBColorAdjustmentFlags;
|
|
typedef struct
|
|
{
|
|
DFBColorAdjustmentFlags flags;
|
|
__u16 brightness;
|
|
__u16 contrast;
|
|
__u16 hue;
|
|
__u16 saturation;
|
|
} DFBColorAdjustment;
|
|
struct _IDirectFB
|
|
{
|
|
void *priv;
|
|
int magic;
|
|
DFBResult (*AddRef)(IDirectFB *thiz);
|
|
DFBResult (*Release)(IDirectFB *thiz);
|
|
DFBResult (*SetCooperativeLevel)(IDirectFB *thiz, DFBCooperativeLevel level);
|
|
DFBResult (*SetVideoMode)(IDirectFB *thiz, int width, int height, int bpp);
|
|
DFBResult (*GetCardCapabilities)(IDirectFB *thiz, DFBCardCapabilities *ret_caps);
|
|
DFBResult (*EnumVideoModes)(IDirectFB *thiz, DFBVideoModeCallback callback, void *callbackdata);
|
|
DFBResult (*CreateSurface)(IDirectFB *thiz, const DFBSurfaceDescription *desc, IDirectFBSurface **ret_interface);
|
|
DFBResult (*CreatePalette)(IDirectFB *thiz, const DFBPaletteDescription *desc, IDirectFBPalette **ret_interface);
|
|
DFBResult (*EnumScreens)(IDirectFB *thiz, DFBScreenCallback callback, void *callbackdata);
|
|
DFBResult (*GetScreen)(IDirectFB *thiz, DFBScreenID screen_id, IDirectFBScreen **ret_interface);
|
|
DFBResult (*EnumDisplayLayers)(IDirectFB *thiz, DFBDisplayLayerCallback callback, void *callbackdata);
|
|
DFBResult (*GetDisplayLayer)(IDirectFB *thiz, DFBDisplayLayerID layer_id, IDirectFBDisplayLayer **ret_interface);
|
|
DFBResult (*EnumInputDevices)(IDirectFB *thiz, DFBInputDeviceCallback callback, void *callbackdata);
|
|
DFBResult (*GetInputDevice)(IDirectFB *thiz, DFBInputDeviceID device_id, IDirectFBInputDevice **ret_interface);
|
|
DFBResult (*CreateEventBuffer)(IDirectFB *thiz, IDirectFBEventBuffer **ret_buffer);
|
|
DFBResult (*CreateInputEventBuffer)(IDirectFB *thiz, DFBInputDeviceCapabilities caps, DFBBoolean global, IDirectFBEventBuffer **ret_buffer);
|
|
DFBResult (*CreateImageProvider)(IDirectFB *thiz, const char *filename, IDirectFBImageProvider **ret_interface);
|
|
DFBResult (*CreateVideoProvider)(IDirectFB *thiz, const char *filename, IDirectFBVideoProvider **ret_interface);
|
|
DFBResult (*CreateFont)(IDirectFB *thiz, const char *filename, const DFBFontDescription *desc, IDirectFBFont **ret_interface);
|
|
DFBResult (*CreateDataBuffer)(IDirectFB *thiz, const DFBDataBufferDescription *desc, IDirectFBDataBuffer **ret_interface);
|
|
DFBResult (*SetClipboardData)(IDirectFB *thiz, const char *mime_type, const void *data, unsigned int size, struct timeval *ret_timestamp);
|
|
DFBResult (*GetClipboardData)(IDirectFB *thiz, char **ret_mimetype, void **ret_data, unsigned int *ret_size);
|
|
DFBResult (*GetClipboardTimeStamp)(IDirectFB *thiz, struct timeval *ret_timestamp);
|
|
DFBResult (*Suspend)(IDirectFB *thiz);
|
|
DFBResult (*Resume)(IDirectFB *thiz);
|
|
DFBResult (*WaitIdle)(IDirectFB *thiz);
|
|
DFBResult (*WaitForSync)(IDirectFB *thiz);
|
|
DFBResult (*GetInterface)(IDirectFB *thiz, const char *type, const char *implementation, void *arg, void **ret_interface);
|
|
};
|
|
typedef enum
|
|
{
|
|
DLSCL_SHARED = 0,
|
|
DLSCL_EXCLUSIVE,
|
|
DLSCL_ADMINISTRATIVE
|
|
} DFBDisplayLayerCooperativeLevel;
|
|
typedef enum
|
|
{
|
|
DLBM_DONTCARE = 0,
|
|
DLBM_COLOR,
|
|
DLBM_IMAGE,
|
|
DLBM_TILE
|
|
} DFBDisplayLayerBackgroundMode;
|
|
typedef enum
|
|
{
|
|
DLCONF_NONE = 0x00000000,
|
|
DLCONF_WIDTH = 0x00000001,
|
|
DLCONF_HEIGHT = 0x00000002,
|
|
DLCONF_PIXELFORMAT = 0x00000004,
|
|
DLCONF_BUFFERMODE = 0x00000008,
|
|
DLCONF_OPTIONS = 0x00000010,
|
|
DLCONF_SOURCE = 0x00000020,
|
|
DLCONF_SURFACE_CAPS = 0x00000040,
|
|
DLCONF_ALL = 0x0000007F
|
|
} DFBDisplayLayerConfigFlags;
|
|
typedef struct
|
|
{
|
|
DFBDisplayLayerConfigFlags flags;
|
|
int width;
|
|
int height;
|
|
DFBSurfacePixelFormat pixelformat;
|
|
DFBDisplayLayerBufferMode buffermode;
|
|
DFBDisplayLayerOptions options;
|
|
DFBDisplayLayerSourceID source;
|
|
DFBSurfaceCapabilities surface_caps;
|
|
} DFBDisplayLayerConfig;
|
|
typedef enum
|
|
{
|
|
DSPM_ON = 0,
|
|
DSPM_STANDBY,
|
|
DSPM_SUSPEND,
|
|
DSPM_OFF
|
|
} DFBScreenPowerMode;
|
|
typedef enum
|
|
{
|
|
DSMCAPS_NONE = 0x00000000,
|
|
DSMCAPS_FULL = 0x00000001,
|
|
DSMCAPS_SUB_LEVEL = 0x00000002,
|
|
DSMCAPS_SUB_LAYERS = 0x00000004,
|
|
DSMCAPS_BACKGROUND = 0x00000008
|
|
} DFBScreenMixerCapabilities;
|
|
typedef struct
|
|
{
|
|
DFBScreenMixerCapabilities caps;
|
|
DFBDisplayLayerIDs layers;
|
|
int sub_num;
|
|
DFBDisplayLayerIDs sub_layers;
|
|
char name[24];
|
|
} DFBScreenMixerDescription;
|
|
typedef enum
|
|
{
|
|
DSMCONF_NONE = 0x00000000,
|
|
DSMCONF_TREE = 0x00000001,
|
|
DSMCONF_LEVEL = 0x00000002,
|
|
DSMCONF_LAYERS = 0x00000004,
|
|
DSMCONF_BACKGROUND = 0x00000010,
|
|
DSMCONF_ALL = 0x00000017
|
|
} DFBScreenMixerConfigFlags;
|
|
typedef enum
|
|
{
|
|
DSMT_UNKNOWN = 0x00000000,
|
|
DSMT_FULL = 0x00000001,
|
|
DSMT_SUB_LEVEL = 0x00000002,
|
|
DSMT_SUB_LAYERS = 0x00000003
|
|
} DFBScreenMixerTree;
|
|
typedef struct
|
|
{
|
|
DFBScreenMixerConfigFlags flags;
|
|
DFBScreenMixerTree tree;
|
|
int level;
|
|
DFBDisplayLayerIDs layers;
|
|
DFBColor background;
|
|
} DFBScreenMixerConfig;
|
|
typedef enum
|
|
{
|
|
DSOCAPS_NONE = 0x00000000,
|
|
DSOCAPS_CONNECTORS = 0x00000001,
|
|
DSOCAPS_ENCODER_SEL = 0x00000010,
|
|
DSOCAPS_SIGNAL_SEL = 0x00000020,
|
|
DSOCAPS_CONNECTOR_SEL = 0x00000040,
|
|
DSOCAPS_ALL = 0x00000071
|
|
} DFBScreenOutputCapabilities;
|
|
typedef enum
|
|
{
|
|
DSOC_UNKNOWN = 0x00000000,
|
|
DSOC_VGA = 0x00000001,
|
|
DSOC_SCART = 0x00000002,
|
|
DSOC_YC = 0x00000004,
|
|
DSOC_CVBS = 0x00000008
|
|
} DFBScreenOutputConnectors;
|
|
typedef enum
|
|
{
|
|
DSOS_NONE = 0x00000000,
|
|
DSOS_VGA = 0x00000001,
|
|
DSOS_YC = 0x00000002,
|
|
DSOS_CVBS = 0x00000004,
|
|
DSOS_RGB = 0x00000008,
|
|
DSOS_YCBCR = 0x00000010
|
|
} DFBScreenOutputSignals;
|
|
typedef struct
|
|
{
|
|
DFBScreenOutputCapabilities caps;
|
|
DFBScreenOutputConnectors all_connectors;
|
|
DFBScreenOutputSignals all_signals;
|
|
char name[24];
|
|
} DFBScreenOutputDescription;
|
|
typedef enum
|
|
{
|
|
DSOCONF_NONE = 0x00000000,
|
|
DSOCONF_ENCODER = 0x00000001,
|
|
DSOCONF_SIGNALS = 0x00000002,
|
|
DSOCONF_CONNECTORS = 0x00000004,
|
|
DSOCONF_ALL = 0x00000007
|
|
} DFBScreenOutputConfigFlags;
|
|
typedef struct
|
|
{
|
|
DFBScreenOutputConfigFlags flags;
|
|
int encoder;
|
|
DFBScreenOutputSignals out_signals;
|
|
DFBScreenOutputConnectors out_connectors;
|
|
} DFBScreenOutputConfig;
|
|
typedef enum
|
|
{
|
|
DSECAPS_NONE = 0x00000000,
|
|
DSECAPS_TV_STANDARDS = 0x00000001,
|
|
DSECAPS_TEST_PICTURE = 0x00000002,
|
|
DSECAPS_MIXER_SEL = 0x00000004,
|
|
DSECAPS_OUT_SIGNALS = 0x00000008,
|
|
DSECAPS_SCANMODE = 0x00000010,
|
|
DSECAPS_BRIGHTNESS = 0x00000100,
|
|
DSECAPS_CONTRAST = 0x00000200,
|
|
DSECAPS_HUE = 0x00000400,
|
|
DSECAPS_SATURATION = 0x00000800,
|
|
DSECAPS_ALL = 0x00000f1f
|
|
} DFBScreenEncoderCapabilities;
|
|
typedef enum
|
|
{
|
|
DSET_UNKNOWN = 0x00000000,
|
|
DSET_CRTC = 0x00000001,
|
|
DSET_TV = 0x00000002
|
|
} DFBScreenEncoderType;
|
|
typedef enum
|
|
{
|
|
DSETV_UNKNOWN = 0x00000000,
|
|
DSETV_PAL = 0x00000001,
|
|
DSETV_NTSC = 0x00000002,
|
|
DSETV_SECAM = 0x00000004
|
|
} DFBScreenEncoderTVStandards;
|
|
typedef enum
|
|
{
|
|
DSESM_UNKNOWN = 0x00000000,
|
|
DSESM_INTERLACED = 0x00000001,
|
|
DSESM_PROGRESSIVE = 0x00000002
|
|
} DFBScreenEncoderScanMode;
|
|
typedef struct
|
|
{
|
|
DFBScreenEncoderCapabilities caps;
|
|
DFBScreenEncoderType type;
|
|
DFBScreenEncoderTVStandards tv_standards;
|
|
DFBScreenOutputSignals out_signals;
|
|
char name[24];
|
|
} DFBScreenEncoderDescription;
|
|
typedef enum
|
|
{
|
|
DSECONF_NONE = 0x00000000,
|
|
DSECONF_TV_STANDARD = 0x00000001,
|
|
DSECONF_TEST_PICTURE = 0x00000002,
|
|
DSECONF_MIXER = 0x00000004,
|
|
DSECONF_OUT_SIGNALS = 0x00000008,
|
|
DSECONF_SCANMODE = 0x00000010,
|
|
DSECONF_TEST_COLOR = 0x00000020,
|
|
DSECONF_ADJUSTMENT = 0x00000040,
|
|
DSECONF_ALL = 0x0000007F
|
|
} DFBScreenEncoderConfigFlags;
|
|
typedef enum
|
|
{
|
|
DSETP_OFF = 0x00000000,
|
|
DSETP_MULTI = 0x00000001,
|
|
DSETP_SINGLE = 0x00000002,
|
|
DSETP_WHITE = 0x00000010,
|
|
DSETP_YELLOW = 0x00000020,
|
|
DSETP_CYAN = 0x00000030,
|
|
DSETP_GREEN = 0x00000040,
|
|
DSETP_MAGENTA = 0x00000050,
|
|
DSETP_RED = 0x00000060,
|
|
DSETP_BLUE = 0x00000070,
|
|
DSETP_BLACK = 0x00000080
|
|
} DFBScreenEncoderTestPicture;
|
|
typedef struct
|
|
{
|
|
DFBScreenEncoderConfigFlags flags;
|
|
DFBScreenEncoderTVStandards tv_standard;
|
|
DFBScreenEncoderTestPicture test_picture;
|
|
int mixer;
|
|
DFBScreenOutputSignals out_signals;
|
|
DFBScreenEncoderScanMode scanmode;
|
|
DFBColor test_color;
|
|
DFBColorAdjustment adjustment;
|
|
} DFBScreenEncoderConfig;
|
|
struct _IDirectFBScreen
|
|
{
|
|
void *priv;
|
|
int magic;
|
|
DFBResult (*AddRef)(IDirectFBScreen *thiz);
|
|
DFBResult (*Release)(IDirectFBScreen *thiz);
|
|
DFBResult (*GetID)(IDirectFBScreen *thiz, DFBScreenID *ret_screen_id);
|
|
DFBResult (*GetDescription)(IDirectFBScreen *thiz, DFBScreenDescription *ret_desc);
|
|
DFBResult (*EnumDisplayLayers)(IDirectFBScreen *thiz, DFBDisplayLayerCallback callback, void *callbackdata);
|
|
DFBResult (*SetPowerMode)(IDirectFBScreen *thiz, DFBScreenPowerMode mode);
|
|
DFBResult (*WaitForSync)(IDirectFBScreen *thiz);
|
|
DFBResult (*GetMixerDescriptions)(IDirectFBScreen *thiz, DFBScreenMixerDescription *ret_descriptions);
|
|
DFBResult (*GetMixerConfiguration)(IDirectFBScreen *thiz, int mixer, DFBScreenMixerConfig *ret_config);
|
|
DFBResult (*TestMixerConfiguration)(IDirectFBScreen *thiz, int mixer, const DFBScreenMixerConfig *config, DFBScreenMixerConfigFlags *ret_failed);
|
|
DFBResult (*SetMixerConfiguration)(IDirectFBScreen *thiz, int mixer, const DFBScreenMixerConfig *config);
|
|
DFBResult (*GetEncoderDescriptions)(IDirectFBScreen *thiz, DFBScreenEncoderDescription *ret_descriptions);
|
|
DFBResult (*GetEncoderConfiguration)(IDirectFBScreen *thiz, int encoder, DFBScreenEncoderConfig *ret_config);
|
|
DFBResult (*TestEncoderConfiguration)(IDirectFBScreen *thiz, int encoder, const DFBScreenEncoderConfig *config, DFBScreenEncoderConfigFlags *ret_failed);
|
|
DFBResult (*SetEncoderConfiguration)(IDirectFBScreen *thiz, int encoder, const DFBScreenEncoderConfig *config);
|
|
DFBResult (*GetOutputDescriptions)(IDirectFBScreen *thiz, DFBScreenOutputDescription *ret_descriptions);
|
|
DFBResult (*GetOutputConfiguration)(IDirectFBScreen *thiz, int output, DFBScreenOutputConfig *ret_config);
|
|
DFBResult (*TestOutputConfiguration)(IDirectFBScreen *thiz, int output, const DFBScreenOutputConfig *config, DFBScreenOutputConfigFlags *ret_failed);
|
|
DFBResult (*SetOutputConfiguration)(IDirectFBScreen *thiz, int output, const DFBScreenOutputConfig *config);
|
|
};
|
|
struct _IDirectFBDisplayLayer
|
|
{
|
|
void *priv;
|
|
int magic;
|
|
DFBResult (*AddRef)(IDirectFBDisplayLayer *thiz);
|
|
DFBResult (*Release)(IDirectFBDisplayLayer *thiz);
|
|
DFBResult (*GetID)(IDirectFBDisplayLayer *thiz, DFBDisplayLayerID *ret_layer_id);
|
|
DFBResult (*GetDescription)(IDirectFBDisplayLayer *thiz, DFBDisplayLayerDescription *ret_desc);
|
|
DFBResult (*GetSourceDescriptions)(IDirectFBDisplayLayer *thiz, DFBDisplayLayerSourceDescription *ret_descriptions);
|
|
DFBResult (*GetCurrentOutputField)(IDirectFBDisplayLayer *thiz, int *ret_field);
|
|
DFBResult (*GetSurface)(IDirectFBDisplayLayer *thiz, IDirectFBSurface **ret_interface);
|
|
DFBResult (*GetScreen)(IDirectFBDisplayLayer *thiz, IDirectFBScreen **ret_interface);
|
|
DFBResult (*SetCooperativeLevel)(IDirectFBDisplayLayer *thiz, DFBDisplayLayerCooperativeLevel level);
|
|
DFBResult (*GetConfiguration)(IDirectFBDisplayLayer *thiz, DFBDisplayLayerConfig *ret_config);
|
|
DFBResult (*TestConfiguration)(IDirectFBDisplayLayer *thiz, const DFBDisplayLayerConfig *config, DFBDisplayLayerConfigFlags *ret_failed);
|
|
DFBResult (*SetConfiguration)(IDirectFBDisplayLayer *thiz, const DFBDisplayLayerConfig *config);
|
|
DFBResult (*SetScreenLocation)(IDirectFBDisplayLayer *thiz, float x, float y, float width, float height);
|
|
DFBResult (*SetScreenPosition)(IDirectFBDisplayLayer *thiz, int x, int y);
|
|
DFBResult (*SetScreenRectangle)(IDirectFBDisplayLayer *thiz, int x, int y, int width, int height);
|
|
DFBResult (*SetOpacity)(IDirectFBDisplayLayer *thiz, __u8 opacity);
|
|
DFBResult (*SetSourceRectangle)(IDirectFBDisplayLayer *thiz, int x, int y, int width, int height);
|
|
DFBResult (*SetFieldParity)(IDirectFBDisplayLayer *thiz, int field);
|
|
DFBResult (*SetSrcColorKey)(IDirectFBDisplayLayer *thiz, __u8 r, __u8 g, __u8 b);
|
|
DFBResult (*SetDstColorKey)(IDirectFBDisplayLayer *thiz, __u8 r, __u8 g, __u8 b);
|
|
DFBResult (*GetLevel)(IDirectFBDisplayLayer *thiz, int *ret_level);
|
|
DFBResult (*SetLevel)(IDirectFBDisplayLayer *thiz, int level);
|
|
DFBResult (*SetBackgroundMode)(IDirectFBDisplayLayer *thiz, DFBDisplayLayerBackgroundMode mode);
|
|
DFBResult (*SetBackgroundImage)(IDirectFBDisplayLayer *thiz, IDirectFBSurface *surface);
|
|
DFBResult (*SetBackgroundColor)(IDirectFBDisplayLayer *thiz, __u8 r, __u8 g, __u8 b, __u8 a);
|
|
DFBResult (*GetColorAdjustment)(IDirectFBDisplayLayer *thiz, DFBColorAdjustment *ret_adj);
|
|
DFBResult (*SetColorAdjustment)(IDirectFBDisplayLayer *thiz, const DFBColorAdjustment *adj);
|
|
DFBResult (*CreateWindow)(IDirectFBDisplayLayer *thiz, const DFBWindowDescription *desc, IDirectFBWindow **ret_interface);
|
|
DFBResult (*GetWindow)(IDirectFBDisplayLayer *thiz, DFBWindowID window_id, IDirectFBWindow **ret_interface);
|
|
DFBResult (*EnableCursor)(IDirectFBDisplayLayer *thiz, int enable);
|
|
DFBResult (*GetCursorPosition)(IDirectFBDisplayLayer *thiz, int *ret_x, int *ret_y);
|
|
DFBResult (*WarpCursor)(IDirectFBDisplayLayer *thiz, int x, int y);
|
|
DFBResult (*SetCursorAcceleration)(IDirectFBDisplayLayer *thiz, int numerator, int denominator, int threshold);
|
|
DFBResult (*SetCursorShape)(IDirectFBDisplayLayer *thiz, IDirectFBSurface *shape, int hot_x, int hot_y);
|
|
DFBResult (*SetCursorOpacity)(IDirectFBDisplayLayer *thiz, __u8 opacity);
|
|
DFBResult (*WaitForSync)(IDirectFBDisplayLayer *thiz);
|
|
};
|
|
typedef enum
|
|
{
|
|
DSFLIP_NONE = 0x00000000,
|
|
DSFLIP_WAIT = 0x00000001,
|
|
DSFLIP_BLIT = 0x00000002,
|
|
DSFLIP_ONSYNC = 0x00000004,
|
|
DSFLIP_PIPELINE = 0x00000008,
|
|
DSFLIP_WAITFORSYNC = DSFLIP_WAIT | DSFLIP_ONSYNC
|
|
} DFBSurfaceFlipFlags;
|
|
typedef enum
|
|
{
|
|
DSTF_LEFT = 0x00000000,
|
|
DSTF_CENTER = 0x00000001,
|
|
DSTF_RIGHT = 0x00000002,
|
|
DSTF_TOP = 0x00000004,
|
|
DSTF_BOTTOM = 0x00000008,
|
|
DSTF_TOPLEFT = DSTF_TOP | DSTF_LEFT,
|
|
DSTF_TOPCENTER = DSTF_TOP | DSTF_CENTER,
|
|
DSTF_TOPRIGHT = DSTF_TOP | DSTF_RIGHT,
|
|
DSTF_BOTTOMLEFT = DSTF_BOTTOM | DSTF_LEFT,
|
|
DSTF_BOTTOMCENTER = DSTF_BOTTOM | DSTF_CENTER,
|
|
DSTF_BOTTOMRIGHT = DSTF_BOTTOM | DSTF_RIGHT
|
|
} DFBSurfaceTextFlags;
|
|
typedef enum
|
|
{
|
|
DSLF_READ = 0x00000001,
|
|
DSLF_WRITE = 0x00000002
|
|
} DFBSurfaceLockFlags;
|
|
typedef enum
|
|
{
|
|
DSPD_NONE = 0,
|
|
DSPD_CLEAR = 1,
|
|
DSPD_SRC = 2,
|
|
DSPD_SRC_OVER = 3,
|
|
DSPD_DST_OVER = 4,
|
|
DSPD_SRC_IN = 5,
|
|
DSPD_DST_IN = 6,
|
|
DSPD_SRC_OUT = 7,
|
|
DSPD_DST_OUT = 8
|
|
} DFBSurfacePorterDuffRule;
|
|
typedef enum
|
|
{
|
|
DSBF_ZERO = 1,
|
|
DSBF_ONE = 2,
|
|
DSBF_SRCCOLOR = 3,
|
|
DSBF_INVSRCCOLOR = 4,
|
|
DSBF_SRCALPHA = 5,
|
|
DSBF_INVSRCALPHA = 6,
|
|
DSBF_DESTALPHA = 7,
|
|
DSBF_INVDESTALPHA = 8,
|
|
DSBF_DESTCOLOR = 9,
|
|
DSBF_INVDESTCOLOR = 10,
|
|
DSBF_SRCALPHASAT = 11
|
|
} DFBSurfaceBlendFunction;
|
|
typedef struct
|
|
{
|
|
float x;
|
|
float y;
|
|
float z;
|
|
float w;
|
|
float s;
|
|
float t;
|
|
} DFBVertex;
|
|
typedef enum
|
|
{
|
|
DTTF_LIST,
|
|
DTTF_STRIP,
|
|
DTTF_FAN
|
|
} DFBTriangleFormation;
|
|
struct _IDirectFBSurface
|
|
{
|
|
void *priv;
|
|
int magic;
|
|
DFBResult (*AddRef)(IDirectFBSurface *thiz);
|
|
DFBResult (*Release)(IDirectFBSurface *thiz);
|
|
DFBResult (*GetCapabilities)(IDirectFBSurface *thiz, DFBSurfaceCapabilities *ret_caps);
|
|
DFBResult (*GetSize)(IDirectFBSurface *thiz, int *ret_width, int *ret_height);
|
|
DFBResult (*GetVisibleRectangle)(IDirectFBSurface *thiz, DFBRectangle *ret_rect);
|
|
DFBResult (*GetPixelFormat)(IDirectFBSurface *thiz, DFBSurfacePixelFormat *ret_format);
|
|
DFBResult (*GetAccelerationMask)(IDirectFBSurface *thiz, IDirectFBSurface *source, DFBAccelerationMask *ret_mask);
|
|
DFBResult (*GetPalette)(IDirectFBSurface *thiz, IDirectFBPalette **ret_interface);
|
|
DFBResult (*SetPalette)(IDirectFBSurface *thiz, IDirectFBPalette *palette);
|
|
DFBResult (*SetAlphaRamp)(IDirectFBSurface *thiz, __u8 a0, __u8 a1, __u8 a2, __u8 a3);
|
|
DFBResult (*Lock)(IDirectFBSurface *thiz, DFBSurfaceLockFlags flags, void **ret_ptr, int *ret_pitch);
|
|
DFBResult (*Unlock)(IDirectFBSurface *thiz);
|
|
DFBResult (*Flip)(IDirectFBSurface *thiz, const DFBRegion *region, DFBSurfaceFlipFlags flags);
|
|
DFBResult (*SetField)(IDirectFBSurface *thiz, int field);
|
|
DFBResult (*Clear)(IDirectFBSurface *thiz, __u8 r, __u8 g, __u8 b, __u8 a);
|
|
DFBResult (*SetClip)(IDirectFBSurface *thiz, const DFBRegion *clip);
|
|
DFBResult (*SetColor)(IDirectFBSurface *thiz, __u8 r, __u8 g, __u8 b, __u8 a);
|
|
DFBResult (*SetColorIndex)(IDirectFBSurface *thiz, unsigned int index);
|
|
DFBResult (*SetSrcBlendFunction)(IDirectFBSurface *thiz, DFBSurfaceBlendFunction function);
|
|
DFBResult (*SetDstBlendFunction)(IDirectFBSurface *thiz, DFBSurfaceBlendFunction function);
|
|
DFBResult (*SetPorterDuff)(IDirectFBSurface *thiz, DFBSurfacePorterDuffRule rule);
|
|
DFBResult (*SetSrcColorKey)(IDirectFBSurface *thiz, __u8 r, __u8 g, __u8 b);
|
|
DFBResult (*SetSrcColorKeyIndex)(IDirectFBSurface *thiz, unsigned int index);
|
|
DFBResult (*SetDstColorKey)(IDirectFBSurface *thiz, __u8 r, __u8 g, __u8 b);
|
|
DFBResult (*SetDstColorKeyIndex)(IDirectFBSurface *thiz, unsigned int index);
|
|
DFBResult (*SetBlittingFlags)(IDirectFBSurface *thiz, DFBSurfaceBlittingFlags flags);
|
|
DFBResult (*Blit)(IDirectFBSurface *thiz, IDirectFBSurface *source, const DFBRectangle *source_rect, int x, int y);
|
|
DFBResult (*TileBlit)(IDirectFBSurface *thiz, IDirectFBSurface *source, const DFBRectangle *source_rect, int x, int y);
|
|
DFBResult (*BatchBlit)(IDirectFBSurface *thiz, IDirectFBSurface *source, const DFBRectangle *source_rects, const DFBPoint *dest_points, int num);
|
|
DFBResult (*StretchBlit)(IDirectFBSurface *thiz, IDirectFBSurface *source, const DFBRectangle *source_rect, const DFBRectangle *destination_rect);
|
|
DFBResult (*TextureTriangles)(IDirectFBSurface *thiz, IDirectFBSurface *texture, const DFBVertex *vertices, const int *indices, int num, DFBTriangleFormation formation);
|
|
DFBResult (*SetDrawingFlags)(IDirectFBSurface *thiz, DFBSurfaceDrawingFlags flags);
|
|
DFBResult (*FillRectangle)(IDirectFBSurface *thiz, int x, int y, int w, int h);
|
|
DFBResult (*DrawRectangle)(IDirectFBSurface *thiz, int x, int y, int w, int h);
|
|
DFBResult (*DrawLine)(IDirectFBSurface *thiz, int x1, int y1, int x2, int y2);
|
|
DFBResult (*DrawLines)(IDirectFBSurface *thiz, const DFBRegion *lines, unsigned int num_lines);
|
|
DFBResult (*FillTriangle)(IDirectFBSurface *thiz, int x1, int y1, int x2, int y2, int x3, int y3);
|
|
DFBResult (*FillRectangles)(IDirectFBSurface *thiz, const DFBRectangle *rects, unsigned int num);
|
|
DFBResult (*FillSpans)(IDirectFBSurface *thiz, int y, const DFBSpan *spans, unsigned int num);
|
|
DFBResult (*SetFont)(IDirectFBSurface *thiz, IDirectFBFont *font);
|
|
DFBResult (*GetFont)(IDirectFBSurface *thiz, IDirectFBFont **ret_font);
|
|
DFBResult (*DrawString)(IDirectFBSurface *thiz, const char *text, int bytes, int x, int y, DFBSurfaceTextFlags flags);
|
|
DFBResult (*DrawGlyph)(IDirectFBSurface *thiz, unsigned int index, int x, int y, DFBSurfaceTextFlags flags);
|
|
DFBResult (*GetSubSurface)(IDirectFBSurface *thiz, const DFBRectangle *rect, IDirectFBSurface **ret_interface);
|
|
DFBResult (*GetGL)(IDirectFBSurface *thiz, IDirectFBGL **ret_interface);
|
|
DFBResult (*Dump)(IDirectFBSurface *thiz, const char *directory, const char *prefix);
|
|
};
|
|
struct _IDirectFBPalette
|
|
{
|
|
void *priv;
|
|
int magic;
|
|
DFBResult (*AddRef)(IDirectFBPalette *thiz);
|
|
DFBResult (*Release)(IDirectFBPalette *thiz);
|
|
DFBResult (*GetCapabilities)(IDirectFBPalette *thiz, DFBPaletteCapabilities *ret_caps);
|
|
DFBResult (*GetSize)(IDirectFBPalette *thiz, unsigned int *ret_size);
|
|
DFBResult (*SetEntries)(IDirectFBPalette *thiz, const DFBColor *entries, unsigned int num_entries, unsigned int offset);
|
|
DFBResult (*GetEntries)(IDirectFBPalette *thiz, DFBColor *ret_entries, unsigned int num_entries, unsigned int offset);
|
|
DFBResult (*FindBestMatch)(IDirectFBPalette *thiz, __u8 r, __u8 g, __u8 b, __u8 a, unsigned int *ret_index);
|
|
DFBResult (*CreateCopy)(IDirectFBPalette *thiz, IDirectFBPalette **ret_interface);
|
|
};
|
|
typedef enum
|
|
{
|
|
DIKS_UP = 0x00000000,
|
|
DIKS_DOWN = 0x00000001
|
|
} DFBInputDeviceKeyState;
|
|
typedef enum
|
|
{
|
|
DIBS_UP = 0x00000000,
|
|
DIBS_DOWN = 0x00000001
|
|
} DFBInputDeviceButtonState;
|
|
typedef enum
|
|
{
|
|
DIBM_LEFT = 0x00000001,
|
|
DIBM_RIGHT = 0x00000002,
|
|
DIBM_MIDDLE = 0x00000004
|
|
} DFBInputDeviceButtonMask;
|
|
typedef enum
|
|
{
|
|
DIMM_SHIFT = (1 << DIMKI_SHIFT),
|
|
DIMM_CONTROL = (1 << DIMKI_CONTROL),
|
|
DIMM_ALT = (1 << DIMKI_ALT),
|
|
DIMM_ALTGR = (1 << DIMKI_ALTGR),
|
|
DIMM_META = (1 << DIMKI_META),
|
|
DIMM_SUPER = (1 << DIMKI_SUPER),
|
|
DIMM_HYPER = (1 << DIMKI_HYPER)
|
|
} DFBInputDeviceModifierMask;
|
|
struct _IDirectFBInputDevice
|
|
{
|
|
void *priv;
|
|
int magic;
|
|
DFBResult (*AddRef)(IDirectFBInputDevice *thiz);
|
|
DFBResult (*Release)(IDirectFBInputDevice *thiz);
|
|
DFBResult (*GetID)(IDirectFBInputDevice *thiz, DFBInputDeviceID *ret_device_id);
|
|
DFBResult (*GetDescription)(IDirectFBInputDevice *thiz, DFBInputDeviceDescription *ret_desc);
|
|
DFBResult (*GetKeymapEntry)(IDirectFBInputDevice *thiz, int keycode, DFBInputDeviceKeymapEntry *ret_entry);
|
|
DFBResult (*CreateEventBuffer)(IDirectFBInputDevice *thiz, IDirectFBEventBuffer **ret_buffer);
|
|
DFBResult (*AttachEventBuffer)(IDirectFBInputDevice *thiz, IDirectFBEventBuffer *buffer);
|
|
DFBResult (*GetKeyState)(IDirectFBInputDevice *thiz, DFBInputDeviceKeyIdentifier key_id, DFBInputDeviceKeyState *ret_state);
|
|
DFBResult (*GetModifiers)(IDirectFBInputDevice *thiz, DFBInputDeviceModifierMask *ret_modifiers);
|
|
DFBResult (*GetLockState)(IDirectFBInputDevice *thiz, DFBInputDeviceLockState *ret_locks);
|
|
DFBResult (*GetButtons)(IDirectFBInputDevice *thiz, DFBInputDeviceButtonMask *ret_buttons);
|
|
DFBResult (*GetButtonState)(IDirectFBInputDevice *thiz, DFBInputDeviceButtonIdentifier button, DFBInputDeviceButtonState *ret_state);
|
|
DFBResult (*GetAxis)(IDirectFBInputDevice *thiz, DFBInputDeviceAxisIdentifier axis, int *ret_pos);
|
|
DFBResult (*GetXY)(IDirectFBInputDevice *thiz, int *ret_x, int *ret_y);
|
|
};
|
|
typedef enum
|
|
{
|
|
DFEC_NONE = 0x00,
|
|
DFEC_INPUT = 0x01,
|
|
DFEC_WINDOW = 0x02,
|
|
DFEC_USER = 0x03
|
|
} DFBEventClass;
|
|
typedef enum
|
|
{
|
|
DIET_UNKNOWN = 0,
|
|
DIET_KEYPRESS,
|
|
DIET_KEYRELEASE,
|
|
DIET_BUTTONPRESS,
|
|
DIET_BUTTONRELEASE,
|
|
DIET_AXISMOTION
|
|
} DFBInputEventType;
|
|
typedef enum
|
|
{
|
|
DIEF_NONE = 0x000,
|
|
DIEF_TIMESTAMP = 0x001,
|
|
DIEF_AXISABS = 0x002,
|
|
DIEF_AXISREL = 0x004,
|
|
DIEF_KEYCODE = 0x008,
|
|
DIEF_KEYID = 0x010,
|
|
DIEF_KEYSYMBOL = 0x020,
|
|
DIEF_MODIFIERS = 0x040,
|
|
DIEF_LOCKS = 0x080,
|
|
DIEF_BUTTONS = 0x100,
|
|
DIEF_GLOBAL = 0x200
|
|
} DFBInputEventFlags;
|
|
typedef struct
|
|
{
|
|
DFBEventClass clazz;
|
|
DFBInputEventType type;
|
|
DFBInputDeviceID device_id;
|
|
DFBInputEventFlags flags;
|
|
struct timeval timestamp;
|
|
int key_code;
|
|
DFBInputDeviceKeyIdentifier key_id;
|
|
DFBInputDeviceKeySymbol key_symbol;
|
|
DFBInputDeviceModifierMask modifiers;
|
|
DFBInputDeviceLockState locks;
|
|
DFBInputDeviceButtonIdentifier button;
|
|
DFBInputDeviceButtonMask buttons;
|
|
DFBInputDeviceAxisIdentifier axis;
|
|
int axisabs;
|
|
int axisrel;
|
|
} DFBInputEvent;
|
|
typedef enum
|
|
{
|
|
DWET_NONE = 0x00000000,
|
|
DWET_POSITION = 0x00000001,
|
|
DWET_SIZE = 0x00000002,
|
|
DWET_CLOSE = 0x00000004,
|
|
DWET_DESTROYED = 0x00000008,
|
|
DWET_GOTFOCUS = 0x00000010,
|
|
DWET_LOSTFOCUS = 0x00000020,
|
|
DWET_KEYDOWN = 0x00000100,
|
|
DWET_KEYUP = 0x00000200,
|
|
DWET_BUTTONDOWN = 0x00010000,
|
|
DWET_BUTTONUP = 0x00020000,
|
|
DWET_MOTION = 0x00040000,
|
|
DWET_ENTER = 0x00080000,
|
|
DWET_LEAVE = 0x00100000,
|
|
DWET_WHEEL = 0x00200000,
|
|
DWET_POSITION_SIZE = DWET_POSITION | DWET_SIZE,
|
|
DWET_ALL = 0x003F033F
|
|
} DFBWindowEventType;
|
|
typedef struct
|
|
{
|
|
DFBEventClass clazz;
|
|
DFBWindowEventType type;
|
|
DFBWindowID window_id;
|
|
int x;
|
|
int y;
|
|
int cx;
|
|
int cy;
|
|
int step;
|
|
int w;
|
|
int h;
|
|
int key_code;
|
|
DFBInputDeviceKeyIdentifier key_id;
|
|
DFBInputDeviceKeySymbol key_symbol;
|
|
DFBInputDeviceModifierMask modifiers;
|
|
DFBInputDeviceLockState locks;
|
|
DFBInputDeviceButtonIdentifier button;
|
|
DFBInputDeviceButtonMask buttons;
|
|
struct timeval timestamp;
|
|
} DFBWindowEvent;
|
|
typedef struct
|
|
{
|
|
DFBEventClass clazz;
|
|
unsigned int type;
|
|
void *data;
|
|
} DFBUserEvent;
|
|
typedef union
|
|
{
|
|
DFBEventClass clazz;
|
|
DFBInputEvent input;
|
|
DFBWindowEvent window;
|
|
DFBUserEvent user;
|
|
} DFBEvent;
|
|
struct _IDirectFBEventBuffer
|
|
{
|
|
void *priv;
|
|
int magic;
|
|
DFBResult (*AddRef)(IDirectFBEventBuffer *thiz);
|
|
DFBResult (*Release)(IDirectFBEventBuffer *thiz);
|
|
DFBResult (*Reset)(IDirectFBEventBuffer *thiz);
|
|
DFBResult (*WaitForEvent)(IDirectFBEventBuffer *thiz);
|
|
DFBResult (*WaitForEventWithTimeout)(IDirectFBEventBuffer *thiz, unsigned int seconds, unsigned int milli_seconds);
|
|
DFBResult (*GetEvent)(IDirectFBEventBuffer *thiz, DFBEvent *ret_event);
|
|
DFBResult (*PeekEvent)(IDirectFBEventBuffer *thiz, DFBEvent *ret_event);
|
|
DFBResult (*HasEvent)(IDirectFBEventBuffer *thiz);
|
|
DFBResult (*PostEvent)(IDirectFBEventBuffer *thiz, const DFBEvent *event);
|
|
DFBResult (*WakeUp)(IDirectFBEventBuffer *thiz);
|
|
DFBResult (*CreateFileDescriptor)(IDirectFBEventBuffer *thiz, int *ret_fd);
|
|
};
|
|
typedef enum
|
|
{
|
|
DWOP_NONE = 0x00000000,
|
|
DWOP_COLORKEYING = 0x00000001,
|
|
DWOP_ALPHACHANNEL = 0x00000002,
|
|
DWOP_OPAQUE_REGION = 0x00000004,
|
|
DWOP_SHAPED = 0x00000008,
|
|
DWOP_KEEP_POSITION = 0x00000010,
|
|
DWOP_KEEP_SIZE = 0x00000020,
|
|
DWOP_KEEP_STACKING = 0x00000040,
|
|
DWOP_GHOST = 0x00001000,
|
|
DWOP_INDESTRUCTIBLE = 0x00002000,
|
|
DWOP_ALL = 0x0000307F
|
|
} DFBWindowOptions;
|
|
typedef enum
|
|
{
|
|
DWSC_MIDDLE = 0x00000000,
|
|
DWSC_UPPER = 0x00000001,
|
|
DWSC_LOWER = 0x00000002
|
|
} DFBWindowStackingClass;
|
|
struct _IDirectFBWindow
|
|
{
|
|
void *priv;
|
|
int magic;
|
|
DFBResult (*AddRef)(IDirectFBWindow *thiz);
|
|
DFBResult (*Release)(IDirectFBWindow *thiz);
|
|
DFBResult (*GetID)(IDirectFBWindow *thiz, DFBWindowID *ret_window_id);
|
|
DFBResult (*GetPosition)(IDirectFBWindow *thiz, int *ret_x, int *ret_y);
|
|
DFBResult (*GetSize)(IDirectFBWindow *thiz, int *ret_width, int *ret_height);
|
|
DFBResult (*CreateEventBuffer)(IDirectFBWindow *thiz, IDirectFBEventBuffer **ret_buffer);
|
|
DFBResult (*AttachEventBuffer)(IDirectFBWindow *thiz, IDirectFBEventBuffer *buffer);
|
|
DFBResult (*EnableEvents)(IDirectFBWindow *thiz, DFBWindowEventType mask);
|
|
DFBResult (*DisableEvents)(IDirectFBWindow *thiz, DFBWindowEventType mask);
|
|
DFBResult (*GetSurface)(IDirectFBWindow *thiz, IDirectFBSurface **ret_surface);
|
|
DFBResult (*SetOptions)(IDirectFBWindow *thiz, DFBWindowOptions options);
|
|
DFBResult (*GetOptions)(IDirectFBWindow *thiz, DFBWindowOptions *ret_options);
|
|
DFBResult (*SetColorKey)(IDirectFBWindow *thiz, __u8 r, __u8 g, __u8 b);
|
|
DFBResult (*SetColorKeyIndex)(IDirectFBWindow *thiz, unsigned int index);
|
|
DFBResult (*SetOpacity)(IDirectFBWindow *thiz, __u8 opacity);
|
|
DFBResult (*SetOpaqueRegion)(IDirectFBWindow *thiz, int x1, int y1, int x2, int y2);
|
|
DFBResult (*GetOpacity)(IDirectFBWindow *thiz, __u8 *ret_opacity);
|
|
DFBResult (*SetCursorShape)(IDirectFBWindow *thiz, IDirectFBSurface *shape, int hot_x, int hot_y);
|
|
DFBResult (*RequestFocus)(IDirectFBWindow *thiz);
|
|
DFBResult (*GrabKeyboard)(IDirectFBWindow *thiz);
|
|
DFBResult (*UngrabKeyboard)(IDirectFBWindow *thiz);
|
|
DFBResult (*GrabPointer)(IDirectFBWindow *thiz);
|
|
DFBResult (*UngrabPointer)(IDirectFBWindow *thiz);
|
|
DFBResult (*GrabKey)(IDirectFBWindow *thiz, DFBInputDeviceKeySymbol symbol, DFBInputDeviceModifierMask modifiers);
|
|
DFBResult (*UngrabKey)(IDirectFBWindow *thiz, DFBInputDeviceKeySymbol symbol, DFBInputDeviceModifierMask modifiers);
|
|
DFBResult (*Move)(IDirectFBWindow *thiz, int dx, int dy);
|
|
DFBResult (*MoveTo)(IDirectFBWindow *thiz, int x, int y);
|
|
DFBResult (*Resize)(IDirectFBWindow *thiz, int width, int height);
|
|
DFBResult (*SetStackingClass)(IDirectFBWindow *thiz, DFBWindowStackingClass stacking_class);
|
|
DFBResult (*Raise)(IDirectFBWindow *thiz);
|
|
DFBResult (*Lower)(IDirectFBWindow *thiz);
|
|
DFBResult (*RaiseToTop)(IDirectFBWindow *thiz);
|
|
DFBResult (*LowerToBottom)(IDirectFBWindow *thiz);
|
|
DFBResult (*PutAtop)(IDirectFBWindow *thiz, IDirectFBWindow *lower);
|
|
DFBResult (*PutBelow)(IDirectFBWindow *thiz, IDirectFBWindow *upper);
|
|
DFBResult (*Close)(IDirectFBWindow *thiz);
|
|
DFBResult (*Destroy)(IDirectFBWindow *thiz);
|
|
};
|
|
struct _IDirectFBFont
|
|
{
|
|
void *priv;
|
|
int magic;
|
|
DFBResult (*AddRef)(IDirectFBFont *thiz);
|
|
DFBResult (*Release)(IDirectFBFont *thiz);
|
|
DFBResult (*GetAscender)(IDirectFBFont *thiz, int *ret_ascender);
|
|
DFBResult (*GetDescender)(IDirectFBFont *thiz, int *ret_descender);
|
|
DFBResult (*GetHeight)(IDirectFBFont *thiz, int *ret_height);
|
|
DFBResult (*GetMaxAdvance)(IDirectFBFont *thiz, int *ret_maxadvance);
|
|
DFBResult (*GetKerning)(IDirectFBFont *thiz, unsigned int prev_index, unsigned int current_index, int *ret_kern_x, int *ret_kern_y);
|
|
DFBResult (*GetStringWidth)(IDirectFBFont *thiz, const char *text, int bytes, int *ret_width);
|
|
DFBResult (*GetStringExtents)(IDirectFBFont *thiz, const char *text, int bytes, DFBRectangle *ret_logical_rect, DFBRectangle *ret_ink_rect);
|
|
DFBResult (*GetGlyphExtents)(IDirectFBFont *thiz, unsigned int index, DFBRectangle *ret_rect, int *ret_advance);
|
|
};
|
|
typedef enum
|
|
{
|
|
DICAPS_NONE = 0x00000000,
|
|
DICAPS_ALPHACHANNEL = 0x00000001,
|
|
DICAPS_COLORKEY = 0x00000002
|
|
} DFBImageCapabilities;
|
|
typedef struct
|
|
{
|
|
DFBImageCapabilities caps;
|
|
__u8 colorkey_r;
|
|
__u8 colorkey_g;
|
|
__u8 colorkey_b;
|
|
} DFBImageDescription;
|
|
typedef void (*DIRenderCallback)(DFBRectangle *rect, void *ctx);
|
|
struct _IDirectFBImageProvider
|
|
{
|
|
void *priv;
|
|
int magic;
|
|
DFBResult (*AddRef)(IDirectFBImageProvider *thiz);
|
|
DFBResult (*Release)(IDirectFBImageProvider *thiz);
|
|
DFBResult (*GetSurfaceDescription)(IDirectFBImageProvider *thiz, DFBSurfaceDescription *ret_dsc);
|
|
DFBResult (*GetImageDescription)(IDirectFBImageProvider *thiz, DFBImageDescription *ret_dsc);
|
|
DFBResult (*RenderTo)(IDirectFBImageProvider *thiz, IDirectFBSurface *destination, const DFBRectangle *destination_rect);
|
|
DFBResult (*SetRenderCallback)(IDirectFBImageProvider *thiz, DIRenderCallback callback, void *callback_data);
|
|
};
|
|
typedef int (*DVFrameCallback)(void *ctx);
|
|
struct _IDirectFBVideoProvider
|
|
{
|
|
void *priv;
|
|
int magic;
|
|
DFBResult (*AddRef)(IDirectFBVideoProvider *thiz);
|
|
DFBResult (*Release)(IDirectFBVideoProvider *thiz);
|
|
DFBResult (*GetCapabilities)(IDirectFBVideoProvider *thiz, DFBVideoProviderCapabilities *ret_caps);
|
|
DFBResult (*GetSurfaceDescription)(IDirectFBVideoProvider *thiz, DFBSurfaceDescription *ret_dsc);
|
|
DFBResult (*PlayTo)(IDirectFBVideoProvider *thiz, IDirectFBSurface *destination, const DFBRectangle *destination_rect, DVFrameCallback callback, void *ctx);
|
|
DFBResult (*Stop)(IDirectFBVideoProvider *thiz);
|
|
DFBResult (*SeekTo)(IDirectFBVideoProvider *thiz, double seconds);
|
|
DFBResult (*GetPos)(IDirectFBVideoProvider *thiz, double *ret_seconds);
|
|
DFBResult (*GetLength)(IDirectFBVideoProvider *thiz, double *ret_seconds);
|
|
DFBResult (*GetColorAdjustment)(IDirectFBVideoProvider *thiz, DFBColorAdjustment *ret_adj);
|
|
DFBResult (*SetColorAdjustment)(IDirectFBVideoProvider *thiz, const DFBColorAdjustment *adj);
|
|
};
|
|
struct _IDirectFBDataBuffer
|
|
{
|
|
void *priv;
|
|
int magic;
|
|
DFBResult (*AddRef)(IDirectFBDataBuffer *thiz);
|
|
DFBResult (*Release)(IDirectFBDataBuffer *thiz);
|
|
DFBResult (*Flush)(IDirectFBDataBuffer *thiz);
|
|
DFBResult (*SeekTo)(IDirectFBDataBuffer *thiz, unsigned int offset);
|
|
DFBResult (*GetPosition)(IDirectFBDataBuffer *thiz, unsigned int *ret_offset);
|
|
DFBResult (*GetLength)(IDirectFBDataBuffer *thiz, unsigned int *ret_length);
|
|
DFBResult (*WaitForData)(IDirectFBDataBuffer *thiz, unsigned int length);
|
|
DFBResult (*WaitForDataWithTimeout)(IDirectFBDataBuffer *thiz, unsigned int length, unsigned int seconds, unsigned int milli_seconds);
|
|
DFBResult (*GetData)(IDirectFBDataBuffer *thiz, unsigned int length, void *ret_data, unsigned int *ret_read);
|
|
DFBResult (*PeekData)(IDirectFBDataBuffer *thiz, unsigned int length, int offset, void *ret_data, unsigned int *ret_read);
|
|
DFBResult (*HasData)(IDirectFBDataBuffer *thiz);
|
|
DFBResult (*PutData)(IDirectFBDataBuffer *thiz, const void *data, unsigned int length);
|
|
DFBResult (*CreateImageProvider)(IDirectFBDataBuffer *thiz, IDirectFBImageProvider **interface);
|
|
};
|