TURBOJPEG_1.0
{
  global:
    TJBUFSIZE;
    tjCompress;
    tjDecompress;
    tjDecompressHeader;
    tjDestroy;
    tjGetErrorStr;
    tjInitCompress;
    tjInitDecompress;
  local:
    *;
};

TURBOJPEG_1.1
{
  global:
    TJBUFSIZEYUV;
    tjDecompressHeader2;
    tjDecompressToYUV;
    tjEncodeYUV;
} TURBOJPEG_1.0;

TURBOJPEG_1.2
{
  global:
    tjAlloc;
    tjBufSize;
    tjBufSizeYUV;
    tjCompress2;
    tjDecompress2;
    tjEncodeYUV2;
    tjFree;
    tjGetScalingFactors;
    tjInitTransform;
    tjTransform;
} TURBOJPEG_1.1;

TURBOJPEG_1.4
{
  global:
    tjBufSizeYUV2;
    tjCompressFromYUV;
    tjCompressFromYUVPlanes;
    tjDecodeYUV;
    tjDecodeYUVPlanes;
    tjDecompressHeader3;
    tjDecompressToYUV2;
    tjDecompressToYUVPlanes;
    tjEncodeYUV3;
    tjEncodeYUVPlanes;
    tjPlaneHeight;
    tjPlaneSizeYUV;
    tjPlaneWidth;
} TURBOJPEG_1.2;

TURBOJPEG_2.0
{
  global:
    tjGetErrorCode;
    tjGetErrorStr2;
    tjLoadImage;
    tjSaveImage;
} TURBOJPEG_1.4;

TURBOJPEG_3
{
  global:
    tj3Alloc;
    tj3Compress8;
    tj3Compress12;
    tj3Compress16;
    tj3CompressFromYUV8;
    tj3CompressFromYUVPlanes8;
    tj3DecodeYUV8;
    tj3DecodeYUVPlanes8;
    tj3Decompress8;
    tj3Decompress12;
    tj3Decompress16;
    tj3DecompressHeader;
    tj3DecompressToYUV8;
    tj3DecompressToYUVPlanes8;
    tj3Destroy;
    tj3EncodeYUV8;
    tj3EncodeYUVPlanes8;
    tj3Free;
    tj3Get;
    tj3GetErrorCode;
    tj3GetErrorStr;
    tj3GetScalingFactors;
    tj3Init;
    tj3JPEGBufSize;
    tj3LoadImage8;
    tj3LoadImage12;
    tj3LoadImage16;
    tj3SaveImage8;
    tj3SaveImage12;
    tj3SaveImage16;
    tj3Set;
    tj3SetCroppingRegion;
    tj3SetScalingFactor;
    tj3Transform;
    tj3YUVBufSize;
    tj3YUVPlaneHeight;
    tj3YUVPlaneSize;
    tj3YUVPlaneWidth;
} TURBOJPEG_2.0;
