Re: [SAGA-RG] saga::file::read and saga::file::write etc.

Hi all,
2. I'ld suggest to change the saga::file::read and saga::file::write API functions as follows:
saga::ssize_t read(saga::mutable_buffer, saga::ssize_t bytes = 0) saga::ssize_t write(saga::const_buffer, saga::ssize_t bytes = 0)
The rationale behind this is that the buffer already contains a size, which by default could be used for the operation (if the 'bytes' parameter is zero). In C++ this would allow to simplify the code significantly. i.e.
saga::file f(...);
char cb[100]; f.read(buffer(cb)); // read 100 char's
std::vector<double> v(20); f.read(buffer(v, 10)); // read 10 doubles
Or
std::vector<int> vi; // fill vi ... f.write(buffer(vi)); // write all elements of vi
The same is true for saga::stream::read and saga::stream::write, BTW. Regards Hartmut
participants (1)
-
Hartmut Kaiser