AssetStudio/Texture2DDecoderNative/bcn.h
hozuki c76e41b1ab
Replace C++/CLI components with P/Invoke components (#562)
* Replace C++/CLI components with P/Invoke

* Deleted C++/CLI projects

* Use Utf8StringHandle to marshal UTF-8 strings

* Use plaform-default calling convention

* Handle DLL preloading on Linux and macOS

* Change intermediate and output directories of native projects

* Improve P/Invoke documentation
2020-08-06 10:35:50 +08:00

20 lines
757 B
C

#pragma once
#include <stdint.h>
struct color_bgra
{
uint8_t b;
uint8_t g;
uint8_t r;
uint8_t a;
};
const color_bgra g_black_color{ 0, 0, 0, 255 };
int decode_bc1(const uint8_t* data, const long w, const long h, uint32_t* image);
void decode_bc3_alpha(const uint8_t* data, uint32_t* outbuf, int channel);
int decode_bc3(const uint8_t* data, const long w, const long h, uint32_t* image);
int decode_bc4(const uint8_t* data, uint32_t m_width, uint32_t m_height, uint32_t* image);
int decode_bc5(const uint8_t* data, uint32_t m_width, uint32_t m_height, uint32_t* image);
int decode_bc6(const uint8_t* data, uint32_t m_width, uint32_t m_height, uint32_t* image);
int decode_bc7(const uint8_t* data, uint32_t m_width, uint32_t m_height, uint32_t* image);