?login_element?

Subversion Repositories NedoOS

Rev

Blame | Last modification | View Log | Download

  1. #ifndef MHMT_PACK_H
  2. #define MHMT_PACK_H
  3.  
  4. #include "mhmt-types.h"
  5. #include "mhmt-lz.h"
  6.  
  7.  
  8. //#define MAX_CODES_SIZE 3860 // max num of codes is 3857, plus stopcode, plus some extra bytes
  9. #define MAX_CODES_SIZE 65540
  10.  
  11. // this structure exists in array for each input byte and used to build optimal code chain
  12. struct packinfo
  13. {
  14.         struct lzcode code; // code of jumping here from previous position
  15.         ULONG price; // bitprice (bitlength) of the best chain of lzcodes going up to this point:
  16.                      // initialized as 0xFFFFFFFF (maximum price)
  17.         ULONG _just_a_filler_; // to make structure 8 bytes long (true for 32bit machines)
  18. };
  19.  
  20.  
  21.  
  22.  
  23.  
  24. ULONG pack(void);
  25.  
  26.  
  27.  
  28.  
  29. #endif
  30.  
  31.