]>
Commit | Line | Data |
---|---|---|
8414a40c VZ |
1 | Subject: tiff stream interface (contrib) |
2 | Date: Thu, 30 Mar 2000 10:48:51 -0800 | |
3 | From: "Avi Bleiweiss" <avi@shutterfly.com> | |
4 | To: <warmerda@home.com>, <mike@onshore.com> | |
5 | ||
6 | Here at Shutterfly we have augmented the file based tiff library to support | |
7 | C++ streams. The implementation is an adaptor class, which takes any C++ | |
8 | stream from the user and in return it deposits i/o operation method pointers | |
9 | (e.g. read, write, seek and close) into the tiff's library client state. | |
10 | ||
11 | The class TiffStream has an overloaded factory method - makeFileStream - | |
12 | which takes the C++ stream as an argument, calls TIFFClientOpen and returns | |
13 | a tiff handle. The class retains the tiff handle in its local state and | |
14 | provides a helper function (getTiffHandle) to query the handle at any time. | |
15 | Additional helper method - getStreamSize - provides the stream size to the | |
16 | user. The implementation assumes client responsibility to delete the stream | |
17 | object. The class calls TIFFClose at destruction time. | |
18 | ||
19 | Attached are a definition (tiffstream.h) and an implementation | |
20 | (tiffstream.cpp) files of the TiffStream class. No changes are required to | |
21 | the tiff core piece and the class sits on top of the library. The code is | |
22 | fairly tested at this point and is used internally in Shutterfly imaging | |
23 | software. The code is portable across WindowsNT/Linux/Solaris. | |
24 | ||
25 | We at Shutterfly believe this software has benefits to the larger community | |
26 | of tiff library users and would like to contribute this software to be part | |
27 | of the tiff distributed package. Let me know of any issue. | |
28 | ||
29 | Thanks | |
30 | Avi |