vp6booldec.h 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. /*------------------------------------------------------------------------------
  2. -- --
  3. -- This software is confidential and proprietary and may be used --
  4. -- only as expressly authorized by a licensing agreement from --
  5. -- --
  6. -- Hantro Products Oy. --
  7. -- --
  8. -- (C) COPYRIGHT 2006 HANTRO PRODUCTS OY --
  9. -- ALL RIGHTS RESERVED --
  10. -- --
  11. -- The entire notice above must be reproduced --
  12. -- on all copies and should not be removed. --
  13. -- --
  14. --------------------------------------------------------------------------------
  15. -
  16. - Description : ...
  17. -
  18. --------------------------------------------------------------------------------
  19. -
  20. - Version control information, please leave untouched.
  21. -
  22. - $RCSfile: vp6booldec.h,v $
  23. - $Revision: 1.2 $
  24. - $Date: 2009/09/03 08:24:48 $
  25. -
  26. ------------------------------------------------------------------------------*/
  27. #ifndef __VP6BOOLDEC_H__
  28. #define __VP6BOOLDEC_H__
  29. #include "basetype.h"
  30. typedef struct
  31. {
  32. u32 lowvalue;
  33. u32 range;
  34. u32 value;
  35. i32 count;
  36. u32 pos;
  37. u8 *buffer;
  38. u32 BitCounter;
  39. u32 streamEndPos;
  40. u32 strmError;
  41. } BOOL_CODER;
  42. extern void VP6HWStartDecode(BOOL_CODER * bc, u8 *buffer, u32 len);
  43. extern u32 VP6HWDecodeBool(BOOL_CODER * bc, i32 probability);
  44. extern u32 VP6HWDecodeBool128(BOOL_CODER * bc);
  45. extern void VP6HWStopDecode(BOOL_CODER * bc);
  46. u32 VP6HWbitread ( BOOL_CODER *br, i32 bits );
  47. #endif /* __VP6BOOLDEC_H__ */