facebook360_dep
Facebook360 Depth Estimation Pipeline
Classes | Functions | Variables
ispc_texcomp_astc.cpp File Reference
#include "ispc_texcomp.h"
#include "kernel_astc_ispc.h"
#include <cassert>
#include <cstring>
#include <algorithm>
#include <vector>
#include <limits>

Classes

struct  astc_block
 

Functions

void GetProfile_astc_fast (astc_enc_settings *settings, int block_width, int block_height)
 
void GetProfile_astc_alpha_fast (astc_enc_settings *settings, int block_width, int block_height)
 
void GetProfile_astc_alpha_slow (astc_enc_settings *settings, int block_width, int block_height)
 
bool can_store (int value, int bits)
 
int pack_block_mode (astc_block *block)
 
int get_levels (int range)
 
int sequence_bits (int count, int range)
 
void set_bits (uint32_t data[4], int *pos, int bits, uint32_t value)
 
uint32_t get_field (uint32_t input, int a, int b)
 
uint32_t get_bit (uint32_t input, int a)
 
void pack_five_trits (uint32_t data[4], int sequence[5], int *pos, int n)
 
void pack_three_quint (uint32_t data[4], int sequence[3], int *pos, int n)
 
void pack_integer_sequence (uint32_t output_data[4], uint8_t sequence[], int pos, int count, int range)
 
uint32_t reverse_bits_32 (uint32_t input)
 
void pack_block (uint32_t data[4], astc_block *block)
 
void atsc_rank (const rgba_surface *src, int xx, int yy, uint32_t *mode_buffer, astc_enc_settings *settings)
 
void pack_block_c (uint32_t data[4], ispc::astc_block *block)
 
void setup_list_context (ispc::astc_enc_context *ctx, uint32_t packed_mode)
 
void astc_encode (const rgba_surface *src, float *block_scores, uint8_t *dst, uint64_t *list, astc_enc_settings *settings)
 
void CompressBlocksASTC (const rgba_surface *src, uint8_t *dst, astc_enc_settings *settings)
 

Variables

int range_table [][3]
 

Function Documentation

◆ astc_encode()

void astc_encode ( const rgba_surface src,
float *  block_scores,
uint8_t *  dst,
uint64_t *  list,
astc_enc_settings settings 
)

◆ atsc_rank()

void atsc_rank ( const rgba_surface src,
int  xx,
int  yy,
uint32_t *  mode_buffer,
astc_enc_settings settings 
)

◆ can_store()

bool can_store ( int  value,
int  bits 
)

◆ CompressBlocksASTC()

void CompressBlocksASTC ( const rgba_surface src,
uint8_t *  dst,
astc_enc_settings settings 
)

◆ get_bit()

uint32_t get_bit ( uint32_t  input,
int  a 
)

◆ get_field()

uint32_t get_field ( uint32_t  input,
int  a,
int  b 
)

◆ get_levels()

int get_levels ( int  range)

◆ GetProfile_astc_alpha_fast()

void GetProfile_astc_alpha_fast ( astc_enc_settings settings,
int  block_width,
int  block_height 
)

◆ GetProfile_astc_alpha_slow()

void GetProfile_astc_alpha_slow ( astc_enc_settings settings,
int  block_width,
int  block_height 
)

◆ GetProfile_astc_fast()

void GetProfile_astc_fast ( astc_enc_settings settings,
int  block_width,
int  block_height 
)

◆ pack_block()

void pack_block ( uint32_t  data[4],
astc_block block 
)

◆ pack_block_c()

void pack_block_c ( uint32_t  data[4],
ispc::astc_block *  block 
)

◆ pack_block_mode()

int pack_block_mode ( astc_block block)

◆ pack_five_trits()

void pack_five_trits ( uint32_t  data[4],
int  sequence[5],
int *  pos,
int  n 
)

◆ pack_integer_sequence()

void pack_integer_sequence ( uint32_t  output_data[4],
uint8_t  sequence[],
int  pos,
int  count,
int  range 
)

◆ pack_three_quint()

void pack_three_quint ( uint32_t  data[4],
int  sequence[3],
int *  pos,
int  n 
)

◆ reverse_bits_32()

uint32_t reverse_bits_32 ( uint32_t  input)

◆ sequence_bits()

int sequence_bits ( int  count,
int  range 
)

◆ set_bits()

void set_bits ( uint32_t  data[4],
int *  pos,
int  bits,
uint32_t  value 
)

◆ setup_list_context()

void setup_list_context ( ispc::astc_enc_context *  ctx,
uint32_t  packed_mode 
)

Variable Documentation

◆ range_table

int range_table[][3]