File: fileobject.h

package info (click to toggle)
sarg 2.4.0-4
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 8,456 kB
  • sloc: ansic: 17,692; sh: 4,581; xml: 371; javascript: 352; php: 205; makefile: 183; sed: 16; pascal: 2
file content (25 lines) | stat: -rw-r--r-- 736 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#ifndef FILEOBJECT_H
#define FILEOBJECT_H

typedef struct FileObjectStruct
{
	void *Data;
	int (*Read)(void *Data,void *Buffer,int Size);
	int (*Eof)(void *Data);
	void (*Rewind)(void *Data);
	int (*Close)(void *Data);
} FileObject;

FileObject *FileObject_Open(const char *FileName);
FileObject *FileObject_FdOpen(int fd);
int FileObject_Read(FileObject *File,void *Buffer,int Size);
int FileObject_Eof(FileObject *File);
void FileObject_Rewind(FileObject *File);
int FileObject_Close(FileObject *File);

void FileObject_SetLastOpenError(const char *Message);
const char *FileObject_GetLastOpenError(void);
void FileObject_SetLastCloseError(const char *Message);
const char *FileObject_GetLastCloseError(void);

#endif // FILEOBJECT_H