cog/Libraries/MAC/Files/Source/MACLib/Old/UnBitArrayOld.h

47 lines
1.1 KiB
C++
Executable File

#ifndef APE_UNBITARRAY_OLD_H
#define APE_UNBITARRAY_OLD_H
#include "All.h"
#ifdef BACKWARDS_COMPATIBILITY
#include "../UnBitArrayBase.h"
class IAPEDecompress;
// decodes 0000 up to and including 3890
class CUnBitArrayOld : public CUnBitArrayBase
{
public:
// construction/destruction
CUnBitArrayOld(IAPEDecompress *pAPEDecompress, int nVersion);
~CUnBitArrayOld();
// functions
void GenerateArray(int *pOutputArray, int nElements, int nBytesRequired = -1);
unsigned int DecodeValue(DECODE_VALUE_METHOD DecodeMethod, int nParam1 = 0, int nParam2 = 0);
private:
void GenerateArrayOld(int* pOutputArray, uint32 NumberOfElements, int MinimumBitArrayBytes);
void GenerateArrayRice(int* pOutputArray, uint32 NumberOfElements, int MinimumBitArrayBytes);
uint32 DecodeValueRiceUnsigned(uint32 k);
// data
uint32 k;
uint32 K_Sum;
uint32 m_nRefillBitThreshold;
// functions
__inline int DecodeValueNew(BOOL bCapOverflow);
uint32 GetBitsRemaining();
__inline uint32 Get_K(uint32 x);
};
#endif
#endif // #ifndef APE_UNBITARRAY_OLD_H