37 #ifndef PLATFORMSPECIFICFUNCTIONS_C_H_
38 #define PLATFORMSPECIFICFUNCTIONS_C_H_
45 int PlatformSpecificSetJmp(
void (*
function) (
void*),
void* data);
46 void PlatformSpecificLongJmp(
void);
47 void PlatformSpecificRestoreJumpBuffer(
void);
50 long GetPlatformSpecificTimeInMillis(
void);
51 void SetPlatformSpecificTimeInMillisMethod(
long(*platformSpecific)(
void));
53 const char* GetPlatformSpecificTimeString(
void);
54 void SetPlatformSpecificTimeStringMethod(
const char* (*platformMethod)(
void));
57 int PlatformSpecificAtoI(
const char*str);
58 size_t PlatformSpecificStrLen(
const char* str);
59 char* PlatformSpecificStrCat(
char* s1,
const char* s2);
60 char* PlatformSpecificStrCpy(
char* s1,
const char* s2);
61 char* PlatformSpecificStrNCpy(
char* s1,
const char* s2,
size_t size);
62 int PlatformSpecificStrCmp(
const char* s1,
const char* s2);
63 int PlatformSpecificStrNCmp(
const char* s1,
const char* s2,
size_t size);
64 char* PlatformSpecificStrStr(
const char* s1,
const char* s2);
66 int PlatformSpecificVSNprintf(
char *str,
size_t size,
const char* format,
67 va_list va_args_list);
69 char PlatformSpecificToLower(
char c);
72 double PlatformSpecificFabs(
double d);
73 int PlatformSpecificIsNan(
double d);
74 int PlatformSpecificAtExit(
void(*func)(
void));
77 typedef void* PlatformSpecificFile;
79 PlatformSpecificFile PlatformSpecificFOpen(
const char* filename,
81 void PlatformSpecificFPuts(
const char* str, PlatformSpecificFile file);
82 void PlatformSpecificFClose(PlatformSpecificFile file);
84 int PlatformSpecificPutchar(
int c);
85 void PlatformSpecificFlush(
void);
88 void* PlatformSpecificMalloc(
size_t size);
89 void* PlatformSpecificRealloc(
void* memory,
size_t size);
90 void PlatformSpecificFree(
void* memory);
91 void* PlatformSpecificMemCpy(
void* s1,
const void* s2,
size_t size);
92 void* PlatformSpecificMemset(
void* mem,
int c,
size_t size);