📄 myos.h
字号:
#ifndef _MYOS_H
#define _MYOS_H
//------------------------------------------------------------
//#define _WIN
#define _LINUX
//------------------------
#include <sys/types.h>
#include <stdio.h>
#include <assert.h>
#include <fcntl.h>
//#include <io.h>
#include <sys/stat.h>
#include <string.h>
#include "MyType.h"
//#include "dir.h"
#ifdef _WIN
#include <winsock2.h>
#define MY_THREAD HANDLE
#define MY_SOCKET SOCKET
#define MY_FILE_H HANDLE
#define MY_CRITICAL CRITICAL_SECTION
#define INVALID_FD ((HANDLE)(LONG_PTR)-1)
#define INVALID_SOCK (SOCKET)(~0)
#define DIR_SEPARATOR "\\"
typedef DWORD WINAPI (*MY_THREAD_FUNC_TYPE)(LPVOID);
#endif
#ifdef _LINUX
#include <pthread.h>
#include <semaphore.h>
#define MY_CRITICAL pthread_mutex_t
#define WINAPI
#define MY_THREAD pthread_t
#define MY_SOCKET int
#define FILE_HANDLE int
#define INVALID_FD -1
#define INVALID_SOCK INVALID_FD
#define DIR_SEPARATOR "/"
typedef void *(*MY_THREAD_FUNC_TYPE)(void*);
#endif
typedef struct {
#ifdef _WIN
HANDLE h;
#endif
#ifdef _LINUX
sem_t sem;
#endif
}MY_SEM;
extern void MySemInit(MY_SEM *pSem, Uint32 InitValue);
extern void MySemDestroy(MY_SEM *pSem);
extern int MySemWait(MY_SEM *pSem);
extern void MySemPost(MY_SEM *pSem);
extern void MyCriticalInit(MY_CRITICAL *pCritical);
extern void MyCriticalEntry(MY_CRITICAL *pCritical);
extern void MyCriticalLeave(MY_CRITICAL *pCritical);
extern void MyCriticalDestroy(MY_CRITICAL *pCritical);
extern void MyCloseSocket(MY_SOCKET *pSocketFd);
extern int MyThreadCreate(MY_THREAD *pThread, MY_THREAD_FUNC_TYPE start_routine, void *para);
extern int InitNetwork(void);
extern void UnInitNetwork(void);
extern Uint32 MyGetSysTick(void);
extern int MyFileExists(char *FileName);// //1 exists, 0 not found
//extern void MyClose(void *fd);
extern void MySleep(Uint32 i);
int MyIsDirExists(const char *Dir);
void MyExtractFilePath(Uint8 *Dest, Uint8 *FileName);
void MyExtractFileExt(Uint8 *Dest, Uint8 *FileName);
void MyExtractFileName( Uint8 *Dest, Uint8 *FileName, int bWithExt );
//void MyExtractFileName( Uint8 *Dest, Uint8 *FileName, BOOL bWithExt );
Uint32 MyGetFileSize(Uint8 *filepathname);
int MyGetFileDateTime(Uint8 *pathname, Uint16 *pdate, Uint16 *ptime);
//------------------------------------------------------------
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -