|
From: | Paul Schneider |
Subject: | Re: [Openexr-devel] Implementing low level file IO |
Date: | Mon, 23 May 2005 11:41:13 -0700 |
Hi, Brad,I believe random access is required for EXR reading. The library makes an effort to read as sequentially as possible, but in order to support tiled files, mipmaps, and arbitrary scanline access, you need to be able to seek.
The use of the filename[] argument depends on the implementation. Some implementations (like the std::ifstream and std::ofstream classes included with OpenEXR) use the filename[] to locate the file to read or write. Others ignore it - I believe the Photoshop plugin just passes the string "EXR file". If an exception occurs, the filename[] will be presented to the user as part of the error message by default ("the file "filename[]" could not be written, because you are out of disk space"), so it's probably a good idea to pass something meaningful.
- Paul On May 23, 2005, at 1:23 AM, Brad Hards wrote:
I'm looking at the manual section 7.2 (Custom Low-Level File I/O), and havinga few concerns. I think I need to do this to get good integration intoQt4/KDE4 - so I can use a QIODevice, which is the base class for all kinds of IO concepts (network sockets, files, generic buffers and process output).The problem is that sometimes a QIODevice doesn't support random access - you cannot seek. So the question is "what is OpenEXR going to do if tellg just returns zero"? If it is going to break, I'll just disable reading files from non-seekable devices, but some indication of the dragons lurking might bevery useful before I get too much into this. Brad _______________________________________________ Openexr-devel mailing list address@hidden http://lists.nongnu.org/mailman/listinfo/openexr-devel
[Prev in Thread] | Current Thread | [Next in Thread] |