* \code
* typedef struct KFileSerial
* {
- * KFile fd;
- * Serial *ser;
+ * KFile fd;
+ * Serial *ser;
* } KFileSerial;
* \endcode
*
* \code
* INLINE KFileSerial * KFILESERIAL(KFile *fd)
* {
- * ASSERT(fd->_type == KFT_SERIAL);
- * return (KFileSerial *)fd;
+ * ASSERT(fd->_type == KFT_SERIAL);
+ * return (KFileSerial *)fd;
* }
* \endcode
*
* \code
* static int ser_kfile_close(struct KFile *fd)
* {
- * KFileSerial *fds = KFILESERIAL(fd);
- * ser_close(fds->ser);
- * return 0;
+ * KFileSerial *fds = KFILESERIAL(fd);
+ * ser_close(fds->ser);
+ * return 0;
* }
* \endcode
* KFILESERIAL macro helps to ensure that obj passed is really a Serial.
* are demanded to specific driver implementation.
*
* \version $Id$
+ *
* \author Bernardo Innocenti <bernie@develer.com>
* \author Francesco Sacchi <batt@develer.com>
* \author Daniele Basile <asterix@develer.com>
/* fwd decl */
struct KFile;
-typedef int32_t kfile_off_t; ///< KFile offset type, used by kfile_seek function.
+typedef int32_t kfile_off_t; ///< KFile offset type, used by kfile_seek function.
+typedef uint32_t kfile_size_t; ///< KFile size type, used in kfile struct.
/**
* Costants for repositioning read/write file offset.
DB(id_t _type); ///< Used to keep trace, at runtime, of obj type.
/* NOTE: these must _NOT_ be size_t on 16bit CPUs! */
- uint32_t seek_pos;
- uint32_t size;
+ kfile_off_t seek_pos;
+ kfile_size_t size;
} KFile;
/**
/**
* Kfile test function.
*/
-bool kfile_test(KFile *fd, uint8_t *test_buf, uint8_t *save_buf, size_t size);
+int kfile_testSetUp(void);
+int kfile_testRun(KFile *fd, uint8_t *test_buf, uint8_t *save_buf, size_t size);
+int kfile_testTearDown(void);
#endif /* KERN_KFILE_H */