Server IP : 185.86.78.101 / Your IP : 216.73.216.124 Web Server : Apache System : Linux 675867-vds-valikoshka1996.gmhost.pp.ua 5.4.0-150-generic #167-Ubuntu SMP Mon May 15 17:35:05 UTC 2023 x86_64 User : www ( 1000) PHP Version : 7.4.33 Disable Function : passthru,exec,system,putenv,chroot,chgrp,chown,shell_exec,popen,proc_open,pcntl_exec,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,imap_open,apache_setenv MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : OFF Directory : /usr/include/ |
Upload File : |
/* * Header file for the arithmetic encoder and decoder of * the portable JBIG compression library * * Markus Kuhn -- http://www.cl.cam.ac.uk/~mgk25/jbigkit/ */ #ifndef JBG_AR_H #define JBG_AR_H /* * Status of arithmetic encoder */ struct jbg_arenc_state { unsigned char st[4096]; /* probability status for contexts, MSB = MPS */ unsigned long c; /* register C: base of coding intervall, * * layout as in Table 23 */ unsigned long a; /* register A: normalized size of coding interval */ long sc; /* number of buffered 0xff values that might still overflow */ int ct; /* bit shift counter, determines when next byte will be written */ int buffer; /* buffer for most recent output byte != 0xff */ void (*byte_out)(int, void *); /* function that receives all PSCD bytes */ void *file; /* parameter passed to byte_out */ }; /* * Status of arithmetic decoder */ struct jbg_ardec_state { unsigned char st[4096]; /* probability status for contexts, MSB = MPS */ unsigned long c; /* register C: base of coding intervall, * * layout as in Table 25 */ unsigned long a; /* register A: normalized size of coding interval */ unsigned char *pscd_ptr; /* pointer to next PSCD data byte */ unsigned char *pscd_end; /* pointer to byte after PSCD */ int ct; /* bit-shift counter, determines when next byte will be read; * special value -1 signals that zero-padding has started */ int startup; /* boolean flag that controls initial fill of s->c */ int nopadding; /* boolean flag that triggers return -2 between * reaching PSCD end and decoding the first symbol * that might never have been encoded in the first * place */ }; void arith_encode_init(struct jbg_arenc_state *s, int reuse_st); void arith_encode_flush(struct jbg_arenc_state *s); void arith_encode(struct jbg_arenc_state *s, int cx, int pix); void arith_decode_init(struct jbg_ardec_state *s, int reuse_st); int arith_decode(struct jbg_ardec_state *s, int cx); #endif /* JBG_AR_H */