static inline iLResult iLFile_Open(iLFile* a_file, const char* a_fileName, const char* mode)
{
a_file = fopen(a_fileName, mode);
return iLR_OK;
}
static inline iLResult iLFile_Close(iLFile* a_file)
{
fclose(a_file);
return iLR_OK;
}
static inline iLResult iLFile_Read(iLFile* a_file, uint8_t* a_buffer, uint32_t a_length)
{
fread(a_buffer, a_length, 1, a_file);
return iLR_OK;
}
static inline iLResult iLFile_Write(iLFile* a_file, uint8_t* a_buffer, uint32_t a_length)
{
fwrite(a_buffer, a_length, 1, a_file);
return iLR_OK;
}
static inline iLResult iLFile_SetPosition(iLFile* a_file, uint64_t a_pos)
{
return iLR_OK;
}
static inline iLResult iLFile_GetPosition(iLFile* a_file, uint64_t* a_pos)
{
return iLR_OK;
}
static inline iLResult iLFile_Size(iLFile* a_file, uint64_t* a_size)
{
uint64_t curPos = ftello(a_file);
fseeko(a_file, 0, SEEK_END);
*a_size = ftello(a_file);
fseeko(a_file, curPos, SEEK_SET);
return iLR_OK;
}