You've already forked UnrealEngineUWP
mirror of
https://github.com/izzy2lost/UnrealEngineUWP.git
synced 2026-03-26 18:15:20 -07:00
#jira UE-52281 #ue4 #rb Peter.Sauerbrei #lockdown nick.penwarden [CL 3754875 by Chris Babcock in Main branch]
117 lines
3.2 KiB
C++
117 lines
3.2 KiB
C++
//
|
|
// E:\P4 Release 4.18\Engine\Source\ThirdParty\IntelISPCTexComp\ispc_texcomp\kernel_astc_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_ASTC_ISPC_H
|
|
#define ISPC_E__P4_RELEASE_4_18_ENGINE_SOURCE_THIRDPARTY_INTELISPCTEXCOMP_ISPC_TEXCOMP_KERNEL_ASTC_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_astc_enc_context__
|
|
#define __ISPC_STRUCT_astc_enc_context__
|
|
struct astc_enc_context {
|
|
int32_t width;
|
|
int32_t height;
|
|
int32_t channels;
|
|
bool dual_plane;
|
|
int32_t partitions;
|
|
int32_t color_endpoint_pairs;
|
|
};
|
|
#endif
|
|
|
|
#ifndef __ISPC_STRUCT_astc_enc_settings__
|
|
#define __ISPC_STRUCT_astc_enc_settings__
|
|
struct astc_enc_settings {
|
|
int32_t block_width;
|
|
int32_t block_height;
|
|
int32_t channels;
|
|
int32_t fastSkipTreshold;
|
|
int32_t refineIterations;
|
|
};
|
|
#endif
|
|
|
|
#ifndef __ISPC_STRUCT_astc_block__
|
|
#define __ISPC_STRUCT_astc_block__
|
|
struct astc_block {
|
|
int32_t width;
|
|
int32_t height;
|
|
bool dual_plane;
|
|
int32_t weight_range;
|
|
uint8_t weights[64];
|
|
int32_t color_component_selector;
|
|
int32_t partitions;
|
|
int32_t partition_id;
|
|
int32_t color_endpoint_pairs;
|
|
int32_t channels;
|
|
int32_t color_endpoint_modes[4];
|
|
int32_t endpoint_range;
|
|
uint8_t endpoints[18];
|
|
};
|
|
#endif
|
|
|
|
|
|
///////////////////////////////////////////////////////////////////////////
|
|
// Functions exported from ispc code
|
|
///////////////////////////////////////////////////////////////////////////
|
|
#if defined(__cplusplus) && (! defined(__ISPC_NO_EXTERN_C) || !__ISPC_NO_EXTERN_C )
|
|
extern "C" {
|
|
#endif // __cplusplus
|
|
extern void astc_encode_ispc(struct rgba_surface * src, float * block_scores, uint8_t * dst, uint64_t * list, struct astc_enc_context * list_context, struct astc_enc_settings * settings);
|
|
extern void astc_rank_ispc(struct rgba_surface * src, int32_t xx, int32_t yy, uint32_t * mode_buffer, struct astc_enc_settings * settings);
|
|
extern int32_t get_programCount();
|
|
#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_ASTC_ISPC_H
|