some more win32'fication to fix non-ascii filename handling
[kdelibs.git] / kimgio / exr.h
blob644f639d14c8dbf620b61663cdd13addaacb7ce4
1 /**
2 * QImageIO Routines to read (and perhaps in the future, write) images
3 * in the high definition EXR format.
5 * Copyright (c) 2003, Brad Hards <bradh@frogmouth.net>
7 * This library is distributed under the conditions of the GNU LGPL.
9 */
11 #ifndef KIMG_EXR_H
12 #define KIMG_EXR_H
14 #include <QtGui/QImageIOPlugin>
16 class EXRHandler : public QImageIOHandler
18 public:
19 EXRHandler();
21 /**
22 Test if the file / stream can potentially read more data
24 bool canRead() const;
26 /**
27 Read contents from the file / stream into an image
29 \param outImage pointer to the QImage that the file / stream will
30 be read into
32 \return true on a successful read, false on failure
34 bool read( QImage *outImage );
36 /**
37 Write the contents of an image into the file / stream
39 \param image the image to write out
41 \return true on a successful write, false on failure
43 bool write( const QImage &image );
45 /**
46 The name of this plugin
48 \return always returns "exr" for this plugin
50 QByteArray name() const;
52 /**
53 Convenience routine. You should use canRead() instead.
55 static bool canRead( QIODevice *device );
58 #ifndef DOXYGEN_SHOULD_SKIP_THIS
59 class EXRPlugin : public QImageIOPlugin
61 public:
62 QStringList keys() const;
63 Capabilities capabilities(QIODevice *device, const QByteArray &format) const;
64 QImageIOHandler *create(QIODevice *device, const QByteArray &format = QByteArray()) const;
66 #endif
68 #endif