📄 fdt.h
字号:
//--------------------------------------------------------------------------
// Streaming/Socket IO Layer
//--------------------------------------------------------------------------
// SIO.H
//
// Author: Michael A. Denio
// Copyright 1999 by Texas Instruments Inc.
//-------------------------------------------------------------------------
// Task Manager Equates
#define FD_MAX 24 // Number of FD per table
// File Descriptor Table
typedef struct _fdtable {
uint Type; // Set to HTYPE_FDTABLE
HANDLE hOwner; // Owning Task
HANDLE hSem; // File Event semaphore
int Evented; // Flag if we were "evented"
int error; // FileOp Error Number
struct _filedesc *pfd[FD_MAX]; // FD List
} FDTABLE;
// File Descriptor
typedef struct _filedesc {
uint Type; // Set to HTYPE_FD
uint fdType; // File Type
#define FDTYPE_ANY 0
#define FDTYPE_SOCKET 1
#define FDTYPE_PIPE 2
uint EventFlags; // Event Flags
struct _fdtable *pfdt; // Owning FDTable
int fd; // Appication's FD (1 to 'n')
HANDLE hSock; // Corresponding socket
} FILEDESC;
//--------------------------------------------------------------------
//
// Private Functions
//
extern int fdint_new( FDTABLE *pfdt, FILEDESC **ppfd, uint fdType );
extern void fdint_free( FILEDESC *pfd );
extern int fdint_close( FILEDESC *pfd );
extern FILEDESC *fdint_verify( int fd, uint fdType );
extern FDTABLE *fdint_getfdt( HANDLE hTask );
extern void fdint_clearevent( FDTABLE *pfdt );
extern void fdint_signalevent( FDTABLE *pfdt );
extern void fdint_signaltimeout( FDTABLE *pfdt );
extern void fdint_waitevent( FDTABLE *pfdt, UINT32 timeout );
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -