X-Git-Url: https://codewiz.org/gitweb?a=blobdiff_plain;f=kern%2Fkfile.h;h=3bb0d09fe369088fc12b1d264b45603bcad91bcf;hb=1b38e2c9925d6ec7fc50b327fc46d490f20d7ee0;hp=953ed502f09fb8291d2ba4c55efd52121ee5212d;hpb=5f3952176a4e9a00ca8dd5ec4a6b994958f89e0a;p=bertos.git diff --git a/kern/kfile.h b/kern/kfile.h index 953ed502..3bb0d09f 100644 --- a/kern/kfile.h +++ b/kern/kfile.h @@ -1,9 +1,34 @@ /** * \file * * * \brief Virtual KFile I/O interface. @@ -12,36 +37,6 @@ * \author Bernardo Innocenti */ -/*#* - *#* $Log$ - *#* Revision 1.3 2007/10/04 19:39:25 batt - *#* Add seek constants. - *#* - *#* Revision 1.1 2007/06/14 14:42:48 batt - *#* Move kfile to kern/ directory; remove duplicate file.h. - *#* - *#* Revision 1.7 2007/06/08 14:25:43 batt - *#* Merge from project_ks. - *#* - *#* Revision 1.6 2006/07/19 12:56:28 bernie - *#* Convert to new Doxygen style. - *#* - *#* Revision 1.5 2005/11/04 16:20:02 bernie - *#* Fix reference to README.devlib in header. - *#* - *#* Revision 1.4 2005/04/11 19:10:28 bernie - *#* Include top-level headers from cfg/ subdir. - *#* - *#* Revision 1.3 2004/12/31 16:43:23 bernie - *#* Move seek function last in VT. - *#* - *#* Revision 1.2 2004/08/25 14:12:09 rasky - *#* Aggiornato il comment block dei log RCS - *#* - *#* Revision 1.1 2004/08/04 02:40:25 bernie - *#* Add virtual file I/O interface. - *#* - *#*/ #ifndef MWARE_KFILE_H #define MWARE_KFILE_H @@ -50,6 +45,8 @@ /* fwd decl */ struct _KFile; +typedef int32_t kfile_off_t; + /** * Costants for repositioning read/write file offset. * These are needed because on some embedded platforms @@ -65,7 +62,7 @@ typedef enum KSeekMode typedef size_t (*ReadFunc_t) (struct _KFile *fd, void *buf, size_t size); typedef size_t (*WriteFunc_t) (struct _KFile *fd, const void *buf, size_t size); -typedef int32_t (*SeekFunc_t) (struct _KFile *fd, int32_t offset, KSeekMode whence); +typedef kfile_off_t (*SeekFunc_t) (struct _KFile *fd, kfile_off_t offset, KSeekMode whence); typedef bool (*OpenFunc_t) (struct _KFile *fd, const char *name, int mode); typedef bool (*CloseFunc_t) (struct _KFile *fd); @@ -86,4 +83,15 @@ typedef struct _KFile uint32_t size; } KFile; + +/* + * Generic implementation of seek function. + */ +kfile_off_t kfile_seek(struct _KFile *fd, kfile_off_t offset, KSeekMode whence); + +/* + * Kfile test function + */ +bool kfile_test(uint8_t *buf, size_t _size , uint8_t *save_buf, size_t save_buf_size); + #endif /* MWARE_KFILE_H */