aboutsummaryrefslogtreecommitdiff
path: root/Src/jpeg/writer_jpg.h
diff options
context:
space:
mode:
Diffstat (limited to 'Src/jpeg/writer_jpg.h')
-rw-r--r--Src/jpeg/writer_jpg.h25
1 files changed, 25 insertions, 0 deletions
diff --git a/Src/jpeg/writer_jpg.h b/Src/jpeg/writer_jpg.h
new file mode 100644
index 00000000..fda88e7d
--- /dev/null
+++ b/Src/jpeg/writer_jpg.h
@@ -0,0 +1,25 @@
+#pragma once
+
+#include <api/service/svcs/svc_imgwrite.h>
+
+// {7BC27468-0475-4c0d-AEED-0C51195DC2EA}
+static const GUID JPEGwriteguid =
+{ 0x7bc27468, 0x475, 0x4c0d, { 0xae, 0xed, 0xc, 0x51, 0x19, 0x5d, 0xc2, 0xea } };
+
+class JpgWrite : public svc_imageWriter
+{
+public:
+ JpgWrite();
+ static const char *getServiceName() { return "JPEG writer"; }
+ static GUID getServiceGuid() { return JPEGwriteguid; }
+ const wchar_t * getImageTypeName() { return L"JPEG"; }
+ const wchar_t * getExtensions() { return L"jpg;jpeg"; }
+ int setConfig(const wchar_t * item, const wchar_t * value);
+ int getConfig(const wchar_t * item, wchar_t * value, int valuelen);
+ int bitDepthSupported(int depth);
+ void * convert(const void *pixels, int bitDepth, int w, int h, int *length);
+protected:
+ RECVS_DISPATCH;
+
+ int quality;
+};