Files
Aerofoil/PortabilityLayer/ResolveCachingColor.h
2020-05-21 03:30:11 -04:00

37 lines
754 B
C++

#pragma once
#include "RGBAColor.h"
namespace PortabilityLayer
{
class ResolveCachingColor
{
public:
ResolveCachingColor();
ResolveCachingColor(const RGBAColor &color);
ResolveCachingColor(const ResolveCachingColor &color);
uint8_t Resolve8(const RGBAColor *palette, unsigned int numColors);
ResolveCachingColor &operator=(const ResolveCachingColor &other);
static ResolveCachingColor FromStandardColor(uint8_t standardColor);
const RGBAColor &GetRGBAColor() const;
private:
RGBAColor m_rgbaColor;
uint16_t m_resolved16;
uint8_t m_resolved8;
bool m_isResolved16;
bool m_isResolved8;
};
}
inline const PortabilityLayer::RGBAColor &PortabilityLayer::ResolveCachingColor::GetRGBAColor() const
{
return m_rgbaColor;
}