Class that contain only FATFileSystem

Fork of USBFileSystem by Erik -

Files at this revision

API Documentation at this revision

Comitter:
mkilivan
Date:
Fri Dec 19 14:41:08 2014 +0000
Parent:
2:9af05743d551
Commit message:
Remove USB part

Changed in this revision

USBDevice.lib Show diff for this revision Revisions of this file
USBFileSystem.cpp Show annotated file Show diff for this revision Revisions of this file
USBFileSystem.h Show annotated file Show diff for this revision Revisions of this file
--- a/USBDevice.lib	Wed Oct 23 20:32:07 2013 +0000
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,1 +0,0 @@
-https://mbed.org/users/mbed_official/code/USBDevice/#d495202c90f4
--- a/USBFileSystem.cpp	Wed Oct 23 20:32:07 2013 +0000
+++ b/USBFileSystem.cpp	Fri Dec 19 14:41:08 2014 +0000
@@ -4,10 +4,7 @@
 
 USBFileSystem::USBFileSystem(const char* n) : FATFileSystem_ds(n) {
   localFunction = NULL;
-  usbFunction = NULL;
-  usbfree = true;
   local_count = 0;
-  usbMode(1);
 }
 
 
@@ -53,14 +50,10 @@
     return (local_count == 0);
 }
 
-bool USBFileSystem::usbSafe( void ){
-    return usbfree;
-}
-
 int USBFileSystem::disk_status_fat() { 
     int retval = _disk_status();
     
-    if ((retval == 0) && (!usbSafe()))
+    if (retval == 0)
         return 4;
     else 
         return retval;
@@ -69,24 +62,14 @@
  int USBFileSystem::disk_status_msd() { 
     int retval = _disk_status();
     
-    if ((retval == 0) && (!localSafe()))
+    if (retval == 0)
         return 4;
     else 
         return retval;
  }
  
 int USBFileSystem::disk_write(const uint8_t * data, uint64_t block) {
-    if (localSafe()) {
-        if (usbfree && (usbFunction!=NULL) )
-            usbFunction(false);
-            
-        usbfree = false;
-        }
-  
-    int retval= _disk_write(data, block);
-
-    if (localSafe())
-        usb_write.attach_us(this, &USBFileSystem::usbFree, USBWRITE_TIMEOUT * 1000);
+      int retval= _disk_write(data, block);
 
     return retval;
 }
@@ -100,14 +83,10 @@
     
     //Pseudo-IRQ
     if (open && (local_count == 1)) {
-        if (usbmode == 1)
-            disconnect();
         if (localFunction != NULL) 
             (*localFunction)(false);
     }
     if (!open && (local_count == 0)) {
-        if (usbmode == 1)
-            connect();
         if (localFunction != NULL) 
             (*localFunction)(true);
     }
@@ -116,17 +95,3 @@
 void USBFileSystem::attachLocal(void (*function)(bool)) {
     localFunction = function;
 }   
-
-void USBFileSystem::attachUSB(void (*function)(bool)) {
-    usbFunction = function;
-}   
-
-void USBFileSystem::usbFree( void ) {
-    usbfree = true;
-    if (usbFunction != NULL)
-        usbFunction(true);
-}
-
-void USBFileSystem::usbMode(int mode) {
-    usbmode = mode;
-}
\ No newline at end of file
--- a/USBFileSystem.h	Wed Oct 23 20:32:07 2013 +0000
+++ b/USBFileSystem.h	Fri Dec 19 14:41:08 2014 +0000
@@ -2,7 +2,6 @@
 #define USBFILESYSTEM_H
 
 #include "FATFileSystem.h"
-#include "USBMSD.h"
 #include "FATFileHandle.h"
 
 class FATFileSystem_ds : public FATFileSystem {    
@@ -14,15 +13,6 @@
     virtual int disk_status( void ) {return disk_status_fat();}
 };
 
-class USBMSD_ds : public USBMSD {    
-    public:
-    USBMSD_ds() {};
-    
-    protected:
-    virtual int disk_status_msd( void ) = 0;
-    virtual int disk_status( void ) {return disk_status_msd();}
-};
-
 /** Class which combines FATFileSystem with USBMSD device
 *
 * The functions to be implemented by the child class are the same as
@@ -53,7 +43,7 @@
 *
 * See the program's wiki for more documentation!
 */
-class USBFileSystem : public FATFileSystem_ds, public USBMSD_ds {
+class USBFileSystem : public FATFileSystem_ds {
 public:
     /** 
     * Constructor for USBFileSystem
@@ -70,35 +60,12 @@
     */
     void attachLocal(void (*function)(bool));
     
-    /** Attach a function to be called when USB occupies/frees the filesystem 
-    *
-    * The function is called with 'true' as argument when it is freed, false when it is occupied
-    *
-    * @param function - Function to be called, must have void as return type, and a single boolean argument
-    */
-    void attachUSB(void (*function)(bool));
-    
     /** Check if locally files are opened for write
     *
     * @return - true if none are opened for write, false otherwise
     */
     bool localSafe( void );
     
-    /** Check if via USB files files are being written
-    *
-    * @return - true if none are being written, false otherwise
-    */
-    bool usbSafe( void );
-    
-    /** Sets the USB mode
-    *
-    * Argument = 0: USB is write protected when not available.
-    * Argument = 1: USB is disconnected when not available (default).
-    *
-    * @param mode - USB safety mode
-    */
-    void usbMode( int mode );
-    
     
 protected:
     //Functions to be implemented by child:
@@ -113,7 +80,6 @@
     //Not to be implemented by child:
     virtual FileHandle* open(const char* name, int flags);
     void localOpen( bool open );
-    void usbFree( void );
     
 private:
     virtual int disk_status_fat(void);
@@ -121,13 +87,9 @@
     virtual int disk_write(const uint8_t * buffer, uint64_t sector);
     
     int local_count;
-    int usbmode;
-    Timeout usb_write;
-    bool usbfree;
     
     void (*localFunction)(bool);
-    void (*usbFunction)(bool);
-    
+    void (*usbFunction)(bool);    
     friend class USBFileHandle;
 
 };