LeviLamina
Loading...
Searching...
No Matches
IntegerSequenceCodec.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5namespace astc_codec {
6
7class IntegerSequenceCodec {
8public:
9 // IntegerSequenceCodec inner types define
10 enum class EncodingMode : int {
11 KTritEncoding = 0,
12 KQuintEncoding = 1,
13 KBitEncoding = 2,
14 };
15
16public:
17 // member variables
18 // NOLINTBEGIN
21 // NOLINTEND
22
23public:
24 // prevent constructor by default
25 IntegerSequenceCodec& operator=(IntegerSequenceCodec const&);
26 IntegerSequenceCodec(IntegerSequenceCodec const&);
27 IntegerSequenceCodec();
28
29public:
30 // member functions
31 // NOLINTBEGIN
32
33 // NOLINTEND
34
35public:
36 // static functions
37 // NOLINTBEGIN
38 MCNAPI_C static int GetBitCount(int num_vals, int trits, int quints, int bits);
39
40 MCNAPI_C static int GetBitCountForRange(int num_vals, int range);
41
42 MCNAPI_C static void GetCountsForRange(int range, int* trits, int* quints, int* bits);
43 // NOLINTEND
44
45public:
46 // constructor thunks
47 // NOLINTBEGIN
48 MCNAPI_C void* $ctor(int range);
49 // NOLINTEND
50};
51
52} // namespace astc_codec
Definition Alias.h:14