CringeDB/File-Page Abstraction/cdb_file-page.h

19 lines
849 B
C
Raw Normal View History

2022-08-29 11:05:24 +02:00
typedef struct fp_File_impl * fp_File;
//Creates a new file, opens it, and resizes it to the specified page size
fp_File fp_fileNew(char * fileName, unsigned long pageSize); //there shouldn't be a page, longer than 4gb
fp_File fp_fileTemp(char * fileName, unsigned long pageSize);
fp_File fp_fileOpen(char * fileName);
2022-08-29 17:27:24 +02:00
void fp_fileInit(fp_File file, unsigned long pageSize);
2022-08-29 11:05:24 +02:00
//Since someone else has to read the header, this function sets the read page size after fp_fileOpen has been called
void fp_fileSetPageSize(fp_File file, unsigned long pageSize);
//negative values indicate the removable of the latest pages; so this library doesn't need more functions
void * fp_fileAppendPages(fp_File file, long numberOfPages);
void * fp_fileToMemroy(fp_File file);
2022-08-29 17:27:24 +02:00
void fp_fileFlush(fp_File file);
2022-08-29 11:05:24 +02:00
void fp_fileClose(fp_File file);