Files
Aerofoil/PortabilityLayer/AntiAliasTable.h

26 lines
640 B
C
Raw Normal View History

#pragma once
2020-06-05 23:21:56 -04:00
#include <stdint.h>
2021-03-18 17:08:11 -04:00
#include <stddef.h>
namespace PortabilityLayer
{
struct RGBAColor;
2020-06-05 23:21:56 -04:00
struct AntiAliasTable
{
// Striped 256x16 because constant background color is more likely than constant sample
uint8_t m_aaTranslate[256][16];
2020-11-13 00:52:10 -05:00
void GenerateForPalette(const RGBAColor &baseColor, const RGBAColor *colors, size_t numColors, bool cacheable);
2021-03-27 03:01:43 -04:00
void GenerateForPaletteFast(const RGBAColor &baseColor);
2020-11-13 00:52:10 -05:00
void GenerateForSimpleScale(uint8_t colorChannel, bool cacheable);
private:
bool LoadFromCache(const char *path);
void SaveToCache(const char *path);
static const unsigned int kCacheVersion = 1;
};
}