/decoders/image/all.d
http://github.com/wilkie/djehuty · D · 59 lines · 35 code · 15 blank · 9 comment · 8 complexity · f39aaab30317db5f7b6d9555a5d48177 MD5 · raw file
- module decoders.image.all;
- import graphics.bitmap;
- import core.string;
- import core.stream;
- import decoders.decoder;
- import decoders.image.decoder;
- public import decoders.image.png;
- public import decoders.image.bmp;
- public import decoders.image.gif;
- public import decoders.image.jpeg;
- // TIFF
- // TGA
- // JPEG 2000
- // MNG
- // PCX
- // RAW
- StreamData runAllDecoders(ref ImageDecoder imageCodec, Stream stream, ref Bitmap view) {
- StreamData ret;
- ulong pos = stream.position;
- imageCodec = new PNGDecoder();
- if ((ret = imageCodec.decode(stream, view)) != StreamData.Invalid) {
- return ret;
- }
- stream.position = pos;
- imageCodec = new BMPDecoder();
- if ((ret = imageCodec.decode(stream, view)) != StreamData.Invalid) {
- return ret;
- }
- stream.position = pos;
- imageCodec = new GIFDecoder();
- if ((ret = imageCodec.decode(stream, view)) != StreamData.Invalid) {
- return ret;
- }
- stream.position = pos;
- imageCodec = new JPEGDecoder();
- if ((ret = imageCodec.decode(stream, view)) != StreamData.Invalid) {
- return ret;
- }
- imageCodec = null;
- return StreamData.Invalid;
- }
- // Codecs:
- //mixin(CreateCodecArray!());
- //