mFS file system library for EEPROM memory chips.

Revision:
7:5ac5121bb4e0
Parent:
6:dd3346914d42
Child:
8:e67733ad4427
--- a/mfs.h	Mon Feb 21 18:34:40 2011 +0000
+++ b/mfs.h	Mon Feb 21 22:37:00 2011 +0000
@@ -1,34 +1,56 @@
 /** @file mfs.h */ 
 /*H****************************************************************************
-* FILENAME :        mfs.h                                                     *
-*                                                                             *
-* DESCRIPTION :                                                               *
-*       mFS file system implementation for mBED with external I2C EEEPROM.    *
-*                                                                             *
-* Block Flags:                                                                *
-* 7:FBOF      Begining of file                                                *
-* 6:LBOF      Last block of file                                              *
-* 5:RO        Read only file (Used only with FBOF)                            *
-* 4:HIDDEN    Hidden file (Used only with FBOF)                               *
-* 3:INUSE     Block in use                                                    *
-* 2:NBAD      Bad block (INV)                                                 *
-* 1:VOL       Volume label (Used only with FBOF)                              *
-* 0:LOCK      Locked file (Used only with FBOF)                               *
-*                                                                             *
-* AUTHOR :    Olli Vanhoja        START DATE :    2011-02-18                  *
-*******************************************************************************
-*
-* CHANGES :
-*
-* VERSION DATE       WHO            DETAIL
-* 0.1     2011-02-21 Olli Vanhoja   Initial release version
-* 0.2     2011-02-21 Olli Vanhoja   Documentational comments added
-* 0.3     2011-02-21 Olli Vanhoja   *File::read issues fixed, rewind/forward
-*                                    functions improved
-*                                   *Added possibility change I2C speed
-*                                   *I2C autoreset on failure
-*
-*H*/
+ * FILENAME :        mfs.h                                                    *
+ *                                                                            *
+ * DESCRIPTION :                                                              *
+ *       mFS file system implementation for mBED with external I2C EEEPROM.   *
+ *                                                                           */
+/**\note {
+ * ----------------------------------------------------------------------------
+ * "THE BEER-WARE LICENSE" (Revision 42):
+ * <olli.vanhoja@gmail.com> wrote this file. As long as you retain this notice
+ * you can do whatever you want with this stuff. If we meet some day, and you
+ * think this stuff is worth it, you can buy me a beer in return Olli Vanhoja
+ * ----------------------------------------------------------------------------}
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+ * THE SOFTWARE.
+ */
+/*                                                                             *
+ * Block Flags:                                                                *
+ * 7:FBOF      Begining of file                                                *
+ * 6:LBOF      Last block of file                                              *
+ * 5:RO        Read only file (Used only with FBOF)                            *
+ * 4:HIDDEN    Hidden file (Used only with FBOF)                               *
+ * 3:INUSE     Block in use                                                    *
+ * 2:NBAD      Bad block (INV)                                                 *
+ * 1:VOL       Volume label (Used only with FBOF)                              *
+ * 0:LOCK      Locked file (Used only with FBOF)                               *
+ *                                                                             *
+ * AUTHOR :                                                                    *
+ /** \author {Olli Vanhoja} *//*       START DATE :    2011-02-18              *
+ *******************************************************************************
+ *
+ * CHANGES :
+ *
+ * VERSION DATE       WHO            DETAIL
+ * 0.1     2011-02-21 Olli Vanhoja   Initial release version
+ * 0.2     2011-02-21 Olli Vanhoja   Documentational comments added
+ * 0.3     2011-02-21 Olli Vanhoja   *File::read issues fixed, rewind/forward
+ *                                    functions improved
+ *                                   *Added possibility change I2C speed
+ *                                   *I2C autoreset on failure
+ * 0.4     2011-02-22 Olli Vanhoja   *mfs::renameFile(char [20], char [20] function added
+ *
+ * TODO :
+ *       Directory support (VOL labeled blocks)
+ *
+ *H*/
 
 #ifndef MFS_H
 #define MFS_H
@@ -115,6 +137,13 @@
     */
     char removeFile(char filename[20]);
     
+    /** Rename file
+    *
+    * @param filename[20] Filename input.
+    * @returns Error code. 0 = OK, 1 = File doesn't exists
+    */
+    char renameFile(char oldFilename[20], char newFilename[20]);
+    
     /** Set user modifiable flags.
     *
     * desc RO|HIDDEN|LOCK