25 #ifndef __SYNFIG_FILESYSTEM_H
26 #define __SYNFIG_FILESYSTEM_H
49 typedef etl::handle< FileSystem >
Handle;
51 class Stream :
public etl::rshared_object
63 private std::streambuf,
75 {
return read((
char*)buffer, size).gcount(); }
86 private std::streambuf,
92 virtual size_t internal_write(
const void *buffer,
size_t size) = 0;
97 for(
size_t i = 0; i < size; i++)
98 if (!put(((
const char*)buffer)[i]).good())
105 {
return (*
this << &streambuf).good(); }
122 file_system(file_system), filename(filename) { }
125 operator bool ()
const {
return !
empty(); }
136 {
return other < *
this; }
138 {
return *
this > other || other < *
this; }
140 {
return !(*
this != other); }