CringeDB/File-Page Abstraction/cdb_file-page.h
2024-02-18 17:42:05 +01:00

19 lines
849 B
C

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);
void fp_fileInit(fp_File file, unsigned long pageSize);
//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_fileToMemory(fp_File file);
void fp_fileFlush(fp_File file);
void fp_fileClose(fp_File file);