]> git.tdb.fi Git - libs/core.git/blobdiff - source/io/file.h
Use size_t for sizes in I/O classes
[libs/core.git] / source / io / file.h
index d34273477736c21efdd01335e75306b52f7ba990..aeac6c8d265556974ddfee94febdb8ea5fd131b7 100644 (file)
@@ -57,11 +57,12 @@ private:
 public:
        virtual ~File();
 
-       void set_block(bool);
+       virtual void set_block(bool);
+       virtual void set_inherit(bool);
 
 protected:
-       virtual unsigned do_write(const char *, unsigned);
-       virtual unsigned do_read(char *, unsigned);
+       virtual std::size_t do_write(const char *, std::size_t);
+       virtual std::size_t do_read(char *, std::size_t);
 
 public:
        virtual void sync();
@@ -92,15 +93,20 @@ private:
 public:
        BufferedFile(const std::string &, Mode = M_READ, File::CreateMode = File::C_OVERWRITE);
 
+       virtual void set_block(bool);
+       virtual void set_inherit(bool);
+
 protected:
-       virtual unsigned do_write(const char *, unsigned);
-       virtual unsigned do_read(char *, unsigned);
+       virtual std::size_t do_write(const char *, std::size_t);
+       virtual std::size_t do_read(char *, std::size_t);
 public:
-       virtual unsigned put(char);
+       virtual std::size_t put(char);
 
        virtual bool getline(std::string &);
        virtual int get();
 
+       virtual const Handle &get_handle(Mode);
+
        virtual SeekOffset seek(SeekOffset, SeekType);
        virtual SeekOffset tell() const { return position; }
 };