yuzu-emu
/
yuzu-mainline
Archived
1
0
Fork 0

astc: In-class initialize member variables where appropriate

This commit is contained in:
Lioncash 2018-07-17 23:02:54 -04:00
parent 8e28af6f89
commit 4cd52a34b9
1 changed files with 22 additions and 39 deletions

View File

@ -25,16 +25,15 @@
class BitStream {
public:
BitStream(unsigned char* ptr, int nBits = 0, int start_offset = 0)
: m_BitsWritten(0), m_BitsRead(0), m_NumBits(nBits), m_CurByte(ptr),
m_NextBit(start_offset % 8), done(false) {}
explicit BitStream(unsigned char* ptr, int nBits = 0, int start_offset = 0)
: m_NumBits(nBits), m_CurByte(ptr), m_NextBit(start_offset % 8) {}
~BitStream() = default;
int GetBitsWritten() const {
return m_BitsWritten;
}
~BitStream() {}
void WriteBitsR(unsigned int val, unsigned int nBits) {
for (unsigned int i = 0; i < nBits; i++) {
WriteBit((val >> (nBits - i - 1)) & 1);
@ -95,13 +94,13 @@ private:
done = done || ++m_BitsWritten >= m_NumBits;
}
int m_BitsWritten;
int m_BitsWritten = 0;
const int m_NumBits;
unsigned char* m_CurByte;
int m_NextBit;
int m_BitsRead;
int m_NextBit = 0;
int m_BitsRead = 0;
bool done;
bool done = false;
};
template <typename IntType>
@ -382,17 +381,13 @@ private:
namespace ASTCC {
struct TexelWeightParams {
uint32_t m_Width;
uint32_t m_Height;
bool m_bDualPlane;
uint32_t m_MaxWeight;
bool m_bError;
bool m_bVoidExtentLDR;
bool m_bVoidExtentHDR;
TexelWeightParams() {
memset(this, 0, sizeof(*this));
}
uint32_t m_Width = 0;
uint32_t m_Height = 0;
bool m_bDualPlane = false;
uint32_t m_MaxWeight = 0;
bool m_bError = false;
bool m_bVoidExtentLDR = false;
bool m_bVoidExtentHDR = false;
uint32_t GetPackedBitSize() {
// How many indices do we have?
@ -668,27 +663,15 @@ IntType Replicate(const IntType& val, uint32_t numBits, uint32_t toBit) {
class Pixel {
protected:
typedef int16_t ChannelType;
uint8_t m_BitDepth[4];
int16_t color[4];
using ChannelType = int16_t;
uint8_t m_BitDepth[4] = {8, 8, 8, 8};
int16_t color[4] = {};
public:
Pixel() {
for (int i = 0; i < 4; i++) {
m_BitDepth[i] = 8;
color[i] = 0;
}
}
Pixel(ChannelType a, ChannelType r, ChannelType g, ChannelType b, unsigned bitDepth = 8) {
for (int i = 0; i < 4; i++)
m_BitDepth[i] = bitDepth;
color[0] = a;
color[1] = r;
color[2] = g;
color[3] = b;
}
Pixel() = default;
Pixel(ChannelType a, ChannelType r, ChannelType g, ChannelType b, unsigned bitDepth = 8)
: m_BitDepth{uint8_t(bitDepth), uint8_t(bitDepth), uint8_t(bitDepth), uint8_t(bitDepth)},
color{a, r, g, b} {}
// Changes the depth of each pixel. This scales the values to
// the appropriate bit depth by either truncating the least