mirror of
https://github.com/TechplexEngineer/plexview.git
synced 2026-07-27 22:15:37 +00:00
I wish I could figure out how to have PlexVie be out of the LibOMV tree but its just not working die to a DLL not found exception about libopenjpeg. (Yes the dll is in the bin folder) This will do for now
45 lines
1.2 KiB
C
45 lines
1.2 KiB
C
|
|
#ifndef LIBSL_H
|
|
#define LIBSL_H
|
|
|
|
#include "../libopenjpeg/openjpeg.h"
|
|
|
|
struct MarshalledImage
|
|
{
|
|
unsigned char* encoded;
|
|
int length;
|
|
int dummy; // padding for 64-bit alignment
|
|
|
|
unsigned char* decoded;
|
|
int width;
|
|
int height;
|
|
int layers;
|
|
int resolutions;
|
|
int components;
|
|
int packet_count;
|
|
opj_packet_info_t* packets;
|
|
};
|
|
|
|
#ifdef WIN32
|
|
#define DLLEXPORT extern "C" __declspec(dllexport)
|
|
#else
|
|
#define DLLEXPORT extern "C"
|
|
#endif
|
|
|
|
// uncompresed images are raw RGBA 8bit/channel
|
|
DLLEXPORT bool DotNetEncode(MarshalledImage* image, bool lossless);
|
|
DLLEXPORT bool DotNetDecode(MarshalledImage* image);
|
|
DLLEXPORT bool DotNetDecodeWithInfo(MarshalledImage* image);
|
|
DLLEXPORT bool DotNetAllocEncoded(MarshalledImage* image);
|
|
DLLEXPORT bool DotNetAllocDecoded(MarshalledImage* image);
|
|
DLLEXPORT void DotNetFree(MarshalledImage* image);
|
|
|
|
DLLEXPORT bool DotNetEncode64(MarshalledImage* image, bool lossless);
|
|
DLLEXPORT bool DotNetDecode64(MarshalledImage* image);
|
|
DLLEXPORT bool DotNetDecodeWithInfo64(MarshalledImage* image);
|
|
DLLEXPORT bool DotNetAllocEncoded64(MarshalledImage* image);
|
|
DLLEXPORT bool DotNetAllocDecoded64(MarshalledImage* image);
|
|
DLLEXPORT void DotNetFree64(MarshalledImage* image);
|
|
|
|
#endif
|