aboutsummaryrefslogtreecommitdiff
path: root/image/codecs/indeo/vlc.h
diff options
context:
space:
mode:
authorPaul Gilbert2016-09-07 21:30:26 -0400
committerPaul Gilbert2016-09-10 10:08:17 -0400
commit400661182efae9659e664fec0e81c7ed8c3a10ec (patch)
treef19551bf9c7ba4b78c4a7e940d1c261b87fd4229 /image/codecs/indeo/vlc.h
parentc60a03019cb00649e19fa2c9baf289688237b90f (diff)
downloadscummvm-rg350-400661182efae9659e664fec0e81c7ed8c3a10ec.tar.gz
scummvm-rg350-400661182efae9659e664fec0e81c7ed8c3a10ec.tar.bz2
scummvm-rg350-400661182efae9659e664fec0e81c7ed8c3a10ec.zip
IMAGE: Indeo4 header now being successfully loaded
Diffstat (limited to 'image/codecs/indeo/vlc.h')
-rw-r--r--image/codecs/indeo/vlc.h24
1 files changed, 17 insertions, 7 deletions
diff --git a/image/codecs/indeo/vlc.h b/image/codecs/indeo/vlc.h
index 682be66e4a..01c7b1160b 100644
--- a/image/codecs/indeo/vlc.h
+++ b/image/codecs/indeo/vlc.h
@@ -37,8 +37,11 @@ namespace Image {
namespace Indeo {
#define VLC_TYPE int16
-#define INIT_VLC_LE 2
-#define INIT_VLC_USE_NEW_STATIC 4
+
+enum VLCFlag {
+ INIT_VLC_LE = 2,
+ INIT_VLC_USE_NEW_STATIC = 4
+};
struct VLCcode {
uint8 bits;
@@ -54,14 +57,21 @@ struct VLCcode {
struct VLC {
private:
static int compare_vlcspec(const void *a, const void *b);
+
+ /**
+ * Gets a value of a given size from a table
+ * @param table Table to get data from
+ * @param idx Index of value to retrieve
+ * @param wrap Size of elements with alignment
+ * @param size Size of elements
+ */
+ static uint getData(const void *table, uint idx, uint wrap, uint size);
public:
- int bits;
- VLC_TYPE (*table)[2]; ///< code, bits
- int table_size, table_allocated;
+ int _bits;
+ VLC_TYPE (*_table)[2]; ///< code, bits
+ int _table_size, _table_allocated;
VLC();
- ~VLC() { ff_free_vlc(); }
-
/* Build VLC decoding tables suitable for use with get_vlc().