Files
UnrealEngineUWP/Engine/Source/ThirdParty/IntelISPCTexComp/ispc_texcomp/kernel_ispc.h
Chris Babcock 2ec56d72b2 Updated IntelISPCTexComp DLLs to fix crashes with some processors on Windows
#jira UE-52281
#ue4
#rb Peter.Sauerbrei
#lockdown nick.penwarden

[CL 3754875 by Chris Babcock in Main branch]
2017-11-13 17:08:06 -05:00

110 lines
3.2 KiB
C++

//
// E:\P4 Release 4.18\Engine\Source\ThirdParty\IntelISPCTexComp\ispc_texcomp\kernel_ispc.h
// (Header automatically generated by the ispc compiler.)
// DO NOT EDIT THIS FILE.
//
#ifndef ISPC_E__P4_RELEASE_4_18_ENGINE_SOURCE_THIRDPARTY_INTELISPCTEXCOMP_ISPC_TEXCOMP_KERNEL_ISPC_H
#define ISPC_E__P4_RELEASE_4_18_ENGINE_SOURCE_THIRDPARTY_INTELISPCTEXCOMP_ISPC_TEXCOMP_KERNEL_ISPC_H
#include <stdint.h>
#ifdef __cplusplus
namespace ispc { /* namespace */
#endif // __cplusplus
#ifndef __ISPC_ALIGN__
#if defined(__clang__) || !defined(_MSC_VER)
// Clang, GCC, ICC
#define __ISPC_ALIGN__(s) __attribute__((aligned(s)))
#define __ISPC_ALIGNED_STRUCT__(s) struct __ISPC_ALIGN__(s)
#else
// Visual Studio
#define __ISPC_ALIGN__(s) __declspec(align(s))
#define __ISPC_ALIGNED_STRUCT__(s) __ISPC_ALIGN__(s) struct
#endif
#endif
#ifndef __ISPC_STRUCT_rgba_surface__
#define __ISPC_STRUCT_rgba_surface__
struct rgba_surface {
uint8_t * ptr;
int32_t width;
int32_t height;
int32_t stride;
};
#endif
#ifndef __ISPC_STRUCT_bc6h_enc_settings__
#define __ISPC_STRUCT_bc6h_enc_settings__
struct bc6h_enc_settings {
bool slow_mode;
bool fast_mode;
int32_t refineIterations_1p;
int32_t refineIterations_2p;
int32_t fastSkipTreshold;
};
#endif
#ifndef __ISPC_STRUCT_bc7_enc_settings__
#define __ISPC_STRUCT_bc7_enc_settings__
struct bc7_enc_settings {
bool mode_selection[4];
int32_t refineIterations[8];
bool skip_mode2;
int32_t fastSkipTreshold_mode1;
int32_t fastSkipTreshold_mode3;
int32_t fastSkipTreshold_mode7;
int32_t mode45_channel0;
int32_t refineIterations_channel;
int32_t channels;
};
#endif
#ifndef __ISPC_STRUCT_etc_enc_settings__
#define __ISPC_STRUCT_etc_enc_settings__
struct etc_enc_settings {
int32_t fastSkipTreshold;
};
#endif
///////////////////////////////////////////////////////////////////////////
// Functions exported from ispc code
///////////////////////////////////////////////////////////////////////////
#if defined(__cplusplus) && (! defined(__ISPC_NO_EXTERN_C) || !__ISPC_NO_EXTERN_C )
extern "C" {
#endif // __cplusplus
extern void CompressBlocksBC1_ispc(struct rgba_surface * src, uint8_t * dst);
extern void CompressBlocksBC3_ispc(struct rgba_surface * src, uint8_t * dst);
extern void CompressBlocksBC6H_ispc(struct rgba_surface * src, uint8_t * dst, struct bc6h_enc_settings * settings);
extern void CompressBlocksBC7_ispc(struct rgba_surface * src, uint8_t * dst, struct bc7_enc_settings * settings);
extern void CompressBlocksETC1_ispc(struct rgba_surface * src, uint8_t * dst, struct etc_enc_settings * settings);
#if defined(__cplusplus) && (! defined(__ISPC_NO_EXTERN_C) || !__ISPC_NO_EXTERN_C )
} /* end extern C */
#endif // __cplusplus
#ifndef __ISPC_ALIGN__
#if defined(__clang__) || !defined(_MSC_VER)
// Clang, GCC, ICC
#define __ISPC_ALIGN__(s) __attribute__((aligned(s)))
#define __ISPC_ALIGNED_STRUCT__(s) struct __ISPC_ALIGN__(s)
#else
// Visual Studio
#define __ISPC_ALIGN__(s) __declspec(align(s))
#define __ISPC_ALIGNED_STRUCT__(s) __ISPC_ALIGN__(s) struct
#endif
#endif
#ifdef __cplusplus
} /* namespace */
#endif // __cplusplus
#endif // ISPC_D__ISPC_ISPCTEXTURECOMPRESSOR_MASTER_ISPC_TEXTURE_COMPRESSOR_ISPC_TEXCOMP_KERNEL_ISPC_H