]> git.tdb.fi Git - libs/core.git/blobdiff - source/file.h
Add Filtered class
[libs/core.git] / source / file.h
index f2271d02623c439dcd1385af35beb4d4c4fc841f..df5105daaade7f83a1496f80bb8476cbd75eb40a 100644 (file)
@@ -9,6 +9,8 @@ Distributed under the LGPL
 
 #include <string>
 #include "base.h"
+#include "buffered.h"
+#include "filtered.h"
 #include "seek.h"
 
 namespace Msp {
@@ -47,6 +49,7 @@ private:
        Handle handle;
 
        void              check_access(Mode) const;
+protected:
        virtual unsigned  do_write(const char *, unsigned);
        virtual unsigned  do_read(char *, unsigned);
 };
@@ -60,6 +63,8 @@ inline File::CreateMode operator&(File::CreateMode m, File::CreateMode n)
 inline File::CreateMode operator~(File::CreateMode m)
 { return File::CreateMode(~(int)m); }
 
+typedef Filtered<File, Buffered> BufferedFile;
+
 } // namespace IO
 } // namespace Msp