doc: Add KFileBlock group and put a reference into KBlock docs.
authorlottaviano <lottaviano@38d2e660-2303-0410-9eaa-f027e97ec537>
Fri, 19 Nov 2010 09:23:03 +0000 (09:23 +0000)
committerlottaviano <lottaviano@38d2e660-2303-0410-9eaa-f027e97ec537>
Fri, 19 Nov 2010 09:23:03 +0000 (09:23 +0000)
git-svn-id: https://src.develer.com/svnoss/bertos/trunk@4564 38d2e660-2303-0410-9eaa-f027e97ec537

bertos/io/kblock.h
bertos/io/kfile_block.h

index 8bfe384fb3b6cc076e715f217bb99db362f2366a..56a0bf78c4688b225abd70891b5aa36d5d912be1 100644 (file)
@@ -69,6 +69,9 @@
  * }
  * \endcode
  *
+ * \note The KBlock interface is optimized for block reads. If you need a
+ * file-like access, you can use \ref kfile_block.
+ *
  * \author Francesco Sacchi <batt@develer.com>
  *
  * $WIZ$ module_name = "kblock"
index 70fd681e7e30a5a5c64dfbccad76ba55c685972c..22b77fdcaeb5b19d6452900216961ce4b2e24fcd 100644 (file)
  *
  * -->
  *
+ * \defgroup kfile_block KFile interface over KBlock
+ * \ingroup core
+ * \{
+ *
  * \brief KFile interface over a KBlock.
  *
  * With this module, you can access a KBlock device
  * with the handy KFile interface.
  * In order to achieve this, the block device must support partial block write.
  *
+ * Make sure you have trimmed the KBlock to avoid overwriting something.
+ * Example:
+ * \code
+ * // init a derived instance of KBlock
+ * // any will do.
+ * Flash flash;
+ * flash_init(&flash, 0);
+ * kblock_trim(&flash.blk, trim_start, internal_flash.blk.blk_cnt - trim_start);
+ *
+ * // now create and initialize the kfile_block instance
+ * KFileBlock kfb;
+ * kfileblock_init(&kfb, &flash.blk);
+ *
+ * // now you can access the Flash in a file like fashion
+ * kfile_read(&kfb.fd, buf, 20);
+ * \endcode
+ *
  * \author Francesco Sacchi <batt@develer.com>
  * \author Daniele Basile <asterix@develer.com>
  *
@@ -71,4 +92,6 @@ typedef struct KFileBlock
  */
 void kfileblock_init(KFileBlock *fb, KBlock *blk);
 
+/** \} */ //defgroup kfile_block
+
 #endif /* IO_KFILE_KBLOCK_H */