Procházet zdrojové kódy

Make FileSystemFilter forward all virtual functions to wrapped IOSystem instance

This makes it possible to override those functions. Previously the
default implementation was always used.

Fixes #1773
mbuchner před 7 roky
rodič
revize
1299905026
1 změnil soubory, kde provedl 49 přidání a 0 odebrání
  1. 49 0
      code/FileSystemFilter.h

+ 49 - 0
code/FileSystemFilter.h

@@ -168,6 +168,55 @@ public:
         return wrapped->ComparePaths (one,second);
         return wrapped->ComparePaths (one,second);
     }
     }
 
 
+    // -------------------------------------------------------------------
+    /** Pushes a new directory onto the directory stack. */
+    bool PushDirectory(const std::string &path)
+    {
+        return wrapped->PushDirectory(path);
+    }
+
+    // -------------------------------------------------------------------
+    /** Returns the top directory from the stack. */
+    const std::string &CurrentDirectory() const
+    {
+        return wrapped->CurrentDirectory();
+    }
+
+    // -------------------------------------------------------------------
+    /** Returns the number of directories stored on the stack. */
+    size_t StackSize() const
+    {
+        return wrapped->StackSize();
+    }
+
+    // -------------------------------------------------------------------
+    /** Pops the top directory from the stack. */
+    bool PopDirectory()
+    {
+        return wrapped->PopDirectory();
+    }
+
+    // -------------------------------------------------------------------
+    /** Creates an new directory at the given path. */
+    bool CreateDirectory(const std::string &path)
+    {
+        return wrapped->CreateDirectory(path);
+    }
+
+    // -------------------------------------------------------------------
+    /** Will change the current directory to the given path. */
+    bool ChangeDirectory(const std::string &path)
+    {
+        return wrapped->ChangeDirectory(path);
+    }
+
+    // -------------------------------------------------------------------
+    /** Delete file. */
+    bool DeleteFile(const std::string &file)
+    {
+        return wrapped->DeleteFile(file);
+    }
+
 private:
 private:
 
 
     // -------------------------------------------------------------------
     // -------------------------------------------------------------------