Paradox Game Engine  v1.0.0 beta06
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Events Macros Pages
dxt_wrapper.h
Go to the documentation of this file.
1 #ifndef DXT_WRAPPER_H
2 #define DXT_WRAPPER_H
3 
4 #define DXT_API __declspec(dllexport)
5 
6 #include "DirectXTex.h"
7 
8 extern "C" {
9 
10  // Utilities functions
11  DXT_API void dxtComputePitch( DXGI_FORMAT fmt, size_t width, size_t height, size_t& rowPitch, size_t& slicePitch, DWORD flags );
12  DXT_API bool dxtIsCompressed(DXGI_FORMAT fmt);
13  DXT_API HRESULT dxtConvert( const DirectX::Image& srcImage, DXGI_FORMAT format, DWORD filter, float threshold, DirectX::ScratchImage& cImage );
14  DXT_API HRESULT dxtConvertArray( const DirectX::Image* srcImages, size_t nimages, const DirectX::TexMetadata& metadata, DXGI_FORMAT format, DWORD filter, float threshold, DirectX::ScratchImage& cImage );
15  DXT_API HRESULT dxtCompress( const DirectX::Image& srcImage, DXGI_FORMAT format, DWORD compress, float alphaRef, DirectX::ScratchImage& cImage );
16  DXT_API HRESULT dxtCompressArray( const DirectX::Image* srcImages, size_t nimages, const DirectX::TexMetadata& metadata, DXGI_FORMAT format, DWORD compress, float alphaRef, DirectX::ScratchImage& cImages );
17  DXT_API HRESULT dxtDecompress( const DirectX::Image& cImage, DXGI_FORMAT format, DirectX::ScratchImage& image );
18  DXT_API HRESULT dxtDecompressArray( const DirectX::Image* cImages, size_t nimages, const DirectX::TexMetadata& metadata, DXGI_FORMAT format, DirectX::ScratchImage& images );
19  DXT_API HRESULT dxtGenerateMipMaps( const DirectX::Image& baseImage, DWORD filter, size_t levels, DirectX::ScratchImage& mipChain, bool allow1D);
20  DXT_API HRESULT dxtGenerateMipMapsArray( const DirectX::Image* srcImages, size_t nimages, const DirectX::TexMetadata& metadata, DWORD filter, size_t levels, DirectX::ScratchImage& mipChain );
21  DXT_API HRESULT dxtGenerateMipMaps3D( const DirectX::Image* baseImages, size_t depth, DWORD filter, size_t levels, DirectX::ScratchImage& mipChain );
22  DXT_API HRESULT dxtGenerateMipMaps3DArray( const DirectX::Image* srcImages, size_t nimages, const DirectX::TexMetadata& metadata, DWORD filter, size_t levels, DirectX::ScratchImage& mipChain );
23  DXT_API HRESULT dxtResize(const DirectX::Image* srcImages, size_t nimages, const DirectX::TexMetadata& metadata, size_t width, size_t height, DWORD filter, DirectX::ScratchImage& result );
24  DXT_API HRESULT dxtComputeNormalMap( const DirectX::Image* srcImages, size_t nimages, const DirectX::TexMetadata& metadata, DWORD flags, float amplitude, DXGI_FORMAT format, DirectX::ScratchImage& normalMaps );
25  DXT_API HRESULT dxtPremultiplyAlpha( const DirectX::Image* srcImages, size_t nimages, const DirectX::TexMetadata& metadata, DWORD flags, DirectX::ScratchImage& result );
26 
27  // I/O functions
28  DXT_API HRESULT dxtLoadDDSFile(LPCWSTR szFile, DWORD flags, DirectX::TexMetadata* metadata, DirectX::ScratchImage& image);
29  DXT_API HRESULT dxtSaveToDDSFile( const DirectX::Image& image, DWORD flags, LPCWSTR szFile );
30  DXT_API HRESULT dxtSaveToDDSFileArray( const DirectX::Image* images, size_t nimages, const DirectX::TexMetadata& metadata, DWORD flags, LPCWSTR szFile );
31 
32  // Scratch Image
36 
37  DXT_API HRESULT dxtInitialize1D(DirectX::ScratchImage * img, DXGI_FORMAT fmt, size_t length, size_t arraySize, size_t mipLevels );
38  DXT_API HRESULT dxtInitialize2D(DirectX::ScratchImage * img, DXGI_FORMAT fmt, size_t width, size_t height, size_t arraySize, size_t mipLevels );
39  DXT_API HRESULT dxtInitialize3D(DirectX::ScratchImage * img, DXGI_FORMAT fmt, size_t width, size_t height, size_t depth, size_t mipLevels );
40  DXT_API HRESULT dxtInitializeCube(DirectX::ScratchImage * img, DXGI_FORMAT fmt, size_t width, size_t height, size_t nCubes, size_t mipLevels );
41 
42  DXT_API HRESULT dxtInitializeFromImage(DirectX::ScratchImage * img, const DirectX::Image& srcImage, bool allow1D);
43  DXT_API HRESULT dxtInitializeArrayFromImages(DirectX::ScratchImage * img, const DirectX::Image* images, size_t nImages, bool allow1D );
44  DXT_API HRESULT dxtInitializeCubeFromImages(DirectX::ScratchImage * img, const DirectX::Image* images, size_t nImages );
45  DXT_API HRESULT dxtInitialize3DFromImages(DirectX::ScratchImage * img, const DirectX::Image* images, size_t depth );
46 
48 
49  DXT_API bool dxtOverrideFormat(DirectX::ScratchImage * img, DXGI_FORMAT f );
50 
52  DXT_API const DirectX::Image* dxtGetImage(const DirectX::ScratchImage * img, size_t mip, size_t item, size_t slice);
53 
56 
59 
60 } // extern "C"
61 
62 
63 
64 #endif // DXT_WRAPPER_H
DXT_API HRESULT dxtDecompressArray(const DirectX::Image *cImages, size_t nimages, const DirectX::TexMetadata &metadata, DXGI_FORMAT format, DirectX::ScratchImage &images)
Definition: dxt_wrapper.cpp:36
DXT_API HRESULT dxtInitializeFromImage(DirectX::ScratchImage *img, const DirectX::Image &srcImage, bool allow1D)
DXT_API HRESULT dxtSaveToDDSFileArray(const DirectX::Image *images, size_t nimages, const DirectX::TexMetadata &metadata, DWORD flags, LPCWSTR szFile)
Definition: dxt_wrapper.cpp:88
DXT_API HRESULT dxtInitialize3D(DirectX::ScratchImage *img, DXGI_FORMAT fmt, size_t width, size_t height, size_t depth, size_t mipLevels)
_In_ size_t _In_ const TexMetadata _In_ DWORD _In_ size_t nImages
Definition: DirectXTexP.h:118
DXT_API HRESULT dxtInitializeCubeFromImages(DirectX::ScratchImage *img, const DirectX::Image *images, size_t nImages)
#define DXT_API
Definition: dxt_wrapper.h:4
_In_ size_t _In_ DXGI_FORMAT _In_ size_t _In_ DXGI_FORMAT _In_ DWORD flags
Definition: DirectXTexP.h:170
DXT_API HRESULT dxtConvert(const DirectX::Image &srcImage, DXGI_FORMAT format, DWORD filter, float threshold, DirectX::ScratchImage &cImage)
Definition: dxt_wrapper.cpp:11
_In_ size_t _In_ DXGI_FORMAT _In_ size_t _In_ float threshold
Definition: DirectXTexP.h:183
DXT_API void dxtRelease(DirectX::ScratchImage *img)
DXT_API HRESULT dxtPremultiplyAlpha(const DirectX::Image *srcImages, size_t nimages, const DirectX::TexMetadata &metadata, DWORD flags, DirectX::ScratchImage &result)
Definition: dxt_wrapper.cpp:71
DXT_API HRESULT dxtLoadDDSFile(LPCWSTR szFile, DWORD flags, DirectX::TexMetadata *metadata, DirectX::ScratchImage &image)
Definition: dxt_wrapper.cpp:78
DXT_API bool dxtIsCompressed(DXGI_FORMAT fmt)
Definition: dxt_wrapper.cpp:9
DXT_API HRESULT dxtResize(const DirectX::Image *srcImages, size_t nimages, const DirectX::TexMetadata &metadata, size_t width, size_t height, DWORD filter, DirectX::ScratchImage &result)
Definition: dxt_wrapper.cpp:61
DXT_API HRESULT dxtGenerateMipMapsArray(const DirectX::Image *srcImages, size_t nimages, const DirectX::TexMetadata &metadata, DWORD filter, size_t levels, DirectX::ScratchImage &mipChain)
Definition: dxt_wrapper.cpp:46
DXT_API HRESULT dxtInitializeArrayFromImages(DirectX::ScratchImage *img, const DirectX::Image *images, size_t nImages, bool allow1D)
DXT_API HRESULT dxtSaveToDDSFile(const DirectX::Image &image, DWORD flags, LPCWSTR szFile)
Definition: dxt_wrapper.cpp:83
DXT_API HRESULT dxtComputeNormalMap(const DirectX::Image *srcImages, size_t nimages, const DirectX::TexMetadata &metadata, DWORD flags, float amplitude, DXGI_FORMAT format, DirectX::ScratchImage &normalMaps)
Definition: dxt_wrapper.cpp:66
DXT_API size_t dxtGetImageCount(const DirectX::ScratchImage *img)
_In_ size_t _In_ const TexMetadata & metadata
Definition: DirectXTexP.h:116
DXT_API const DirectX::Image * dxtGetImage(const DirectX::ScratchImage *img, size_t mip, size_t item, size_t slice)
DXT_API void dxtComputePitch(DXGI_FORMAT fmt, size_t width, size_t height, size_t &rowPitch, size_t &slicePitch, DWORD flags)
Definition: dxt_wrapper.cpp:4
DXT_API uint8_t * dxtGetPixels(const DirectX::ScratchImage *img)
DXT_API void dxtDeleteScratchImage(DirectX::ScratchImage *img)
Definition: dxt_wrapper.cpp:99
DXT_API HRESULT dxtCompressArray(const DirectX::Image *srcImages, size_t nimages, const DirectX::TexMetadata &metadata, DXGI_FORMAT format, DWORD compress, float alphaRef, DirectX::ScratchImage &cImages)
Definition: dxt_wrapper.cpp:26
DXT_API HRESULT dxtInitializeCube(DirectX::ScratchImage *img, DXGI_FORMAT fmt, size_t width, size_t height, size_t nCubes, size_t mipLevels)
DXT_API bool dxtOverrideFormat(DirectX::ScratchImage *img, DXGI_FORMAT f)
DXT_API HRESULT dxtDecompress(const DirectX::Image &cImage, DXGI_FORMAT format, DirectX::ScratchImage &image)
Definition: dxt_wrapper.cpp:31
_In_ size_t _In_ size_t _In_ DXGI_FORMAT format
Definition: DirectXTexP.h:175
DXT_API const DirectX::TexMetadata & dxtGetMetadata(const DirectX::ScratchImage *img)
DXT_API HRESULT dxtConvertArray(const DirectX::Image *srcImages, size_t nimages, const DirectX::TexMetadata &metadata, DXGI_FORMAT format, DWORD filter, float threshold, DirectX::ScratchImage &cImage)
Definition: dxt_wrapper.cpp:16
DXT_API HRESULT dxtGenerateMipMaps(const DirectX::Image &baseImage, DWORD filter, size_t levels, DirectX::ScratchImage &mipChain, bool allow1D)
Definition: dxt_wrapper.cpp:41
DXT_API HRESULT dxtInitialize(DirectX::ScratchImage *img, const DirectX::TexMetadata &mdata)
DXT_API HRESULT dxtInitialize3DFromImages(DirectX::ScratchImage *img, const DirectX::Image *images, size_t depth)
DXT_API HRESULT dxtGenerateMipMaps3DArray(const DirectX::Image *srcImages, size_t nimages, const DirectX::TexMetadata &metadata, DWORD filter, size_t levels, DirectX::ScratchImage &mipChain)
Definition: dxt_wrapper.cpp:56
DXT_API HRESULT dxtInitialize1D(DirectX::ScratchImage *img, DXGI_FORMAT fmt, size_t length, size_t arraySize, size_t mipLevels)
DXT_API const DirectX::Image * dxtGetImages(const DirectX::ScratchImage *img)
DXT_API size_t dxtGetPixelsSize(const DirectX::ScratchImage *img)
DXT_API DirectX::ScratchImage * dxtCreateScratchImage()
Definition: dxt_wrapper.cpp:94
DXT_API HRESULT dxtInitialize2D(DirectX::ScratchImage *img, DXGI_FORMAT fmt, size_t width, size_t height, size_t arraySize, size_t mipLevels)
DXT_API HRESULT dxtCompress(const DirectX::Image &srcImage, DXGI_FORMAT format, DWORD compress, float alphaRef, DirectX::ScratchImage &cImage)
Definition: dxt_wrapper.cpp:21
DXT_API HRESULT dxtGenerateMipMaps3D(const DirectX::Image *baseImages, size_t depth, DWORD filter, size_t levels, DirectX::ScratchImage &mipChain)
Definition: dxt_wrapper.cpp:51