ReactOS Fundraising Campaign 2012
 
€ 4,410 / € 30,000

Information | Donate

Home | Info | Community | Development | myReactOS | Contact Us

  1. Home
  2. Community
  3. Development
  4. myReactOS
  5. Fundraiser 2012

  1. Main Page
  2. Alphabetical List
  3. Data Structures
  4. Directories
  5. File List
  6. Data Fields
  7. Globals
  8. Related Pages

ReactOS Development > Doxygen

jaricom.c
Go to the documentation of this file.
00001 /*
00002  * jaricom.c
00003  *
00004  * Developed 1997-2009 by Guido Vollbeding.
00005  * This file is part of the Independent JPEG Group's software.
00006  * For conditions of distribution and use, see the accompanying README file.
00007  *
00008  * This file contains probability estimation tables for common use in
00009  * arithmetic entropy encoding and decoding routines.
00010  *
00011  * This data represents Table D.2 in the JPEG spec (ISO/IEC IS 10918-1
00012  * and CCITT Recommendation ITU-T T.81) and Table 24 in the JBIG spec
00013  * (ISO/IEC IS 11544 and CCITT Recommendation ITU-T T.82).
00014  */
00015 
00016 #define JPEG_INTERNALS
00017 #include "jinclude.h"
00018 #include "jpeglib.h"
00019 
00020 /* The following #define specifies the packing of the four components
00021  * into the compact INT32 representation.
00022  * Note that this formula must match the actual arithmetic encoder
00023  * and decoder implementation.  The implementation has to be changed
00024  * if this formula is changed.
00025  * The current organization is leaned on Markus Kuhn's JBIG
00026  * implementation (jbig_tab.c).
00027  */
00028 
00029 #define V(i,a,b,c,d) (((INT32)a << 16) | ((INT32)c << 8) | ((INT32)d << 7) | b)
00030 
00031 const INT32 jpeg_aritab[113+1] = {
00032 /*
00033  * Index, Qe_Value, Next_Index_LPS, Next_Index_MPS, Switch_MPS
00034  */
00035   V(   0, 0x5a1d,   1,   1, 1 ),
00036   V(   1, 0x2586,  14,   2, 0 ),
00037   V(   2, 0x1114,  16,   3, 0 ),
00038   V(   3, 0x080b,  18,   4, 0 ),
00039   V(   4, 0x03d8,  20,   5, 0 ),
00040   V(   5, 0x01da,  23,   6, 0 ),
00041   V(   6, 0x00e5,  25,   7, 0 ),
00042   V(   7, 0x006f,  28,   8, 0 ),
00043   V(   8, 0x0036,  30,   9, 0 ),
00044   V(   9, 0x001a,  33,  10, 0 ),
00045   V(  10, 0x000d,  35,  11, 0 ),
00046   V(  11, 0x0006,   9,  12, 0 ),
00047   V(  12, 0x0003,  10,  13, 0 ),
00048   V(  13, 0x0001,  12,  13, 0 ),
00049   V(  14, 0x5a7f,  15,  15, 1 ),
00050   V(  15, 0x3f25,  36,  16, 0 ),
00051   V(  16, 0x2cf2,  38,  17, 0 ),
00052   V(  17, 0x207c,  39,  18, 0 ),
00053   V(  18, 0x17b9,  40,  19, 0 ),
00054   V(  19, 0x1182,  42,  20, 0 ),
00055   V(  20, 0x0cef,  43,  21, 0 ),
00056   V(  21, 0x09a1,  45,  22, 0 ),
00057   V(  22, 0x072f,  46,  23, 0 ),
00058   V(  23, 0x055c,  48,  24, 0 ),
00059   V(  24, 0x0406,  49,  25, 0 ),
00060   V(  25, 0x0303,  51,  26, 0 ),
00061   V(  26, 0x0240,  52,  27, 0 ),
00062   V(  27, 0x01b1,  54,  28, 0 ),
00063   V(  28, 0x0144,  56,  29, 0 ),
00064   V(  29, 0x00f5,  57,  30, 0 ),
00065   V(  30, 0x00b7,  59,  31, 0 ),
00066   V(  31, 0x008a,  60,  32, 0 ),
00067   V(  32, 0x0068,  62,  33, 0 ),
00068   V(  33, 0x004e,  63,  34, 0 ),
00069   V(  34, 0x003b,  32,  35, 0 ),
00070   V(  35, 0x002c,  33,   9, 0 ),
00071   V(  36, 0x5ae1,  37,  37, 1 ),
00072   V(  37, 0x484c,  64,  38, 0 ),
00073   V(  38, 0x3a0d,  65,  39, 0 ),
00074   V(  39, 0x2ef1,  67,  40, 0 ),
00075   V(  40, 0x261f,  68,  41, 0 ),
00076   V(  41, 0x1f33,  69,  42, 0 ),
00077   V(  42, 0x19a8,  70,  43, 0 ),
00078   V(  43, 0x1518,  72,  44, 0 ),
00079   V(  44, 0x1177,  73,  45, 0 ),
00080   V(  45, 0x0e74,  74,  46, 0 ),
00081   V(  46, 0x0bfb,  75,  47, 0 ),
00082   V(  47, 0x09f8,  77,  48, 0 ),
00083   V(  48, 0x0861,  78,  49, 0 ),
00084   V(  49, 0x0706,  79,  50, 0 ),
00085   V(  50, 0x05cd,  48,  51, 0 ),
00086   V(  51, 0x04de,  50,  52, 0 ),
00087   V(  52, 0x040f,  50,  53, 0 ),
00088   V(  53, 0x0363,  51,  54, 0 ),
00089   V(  54, 0x02d4,  52,  55, 0 ),
00090   V(  55, 0x025c,  53,  56, 0 ),
00091   V(  56, 0x01f8,  54,  57, 0 ),
00092   V(  57, 0x01a4,  55,  58, 0 ),
00093   V(  58, 0x0160,  56,  59, 0 ),
00094   V(  59, 0x0125,  57,  60, 0 ),
00095   V(  60, 0x00f6,  58,  61, 0 ),
00096   V(  61, 0x00cb,  59,  62, 0 ),
00097   V(  62, 0x00ab,  61,  63, 0 ),
00098   V(  63, 0x008f,  61,  32, 0 ),
00099   V(  64, 0x5b12,  65,  65, 1 ),
00100   V(  65, 0x4d04,  80,  66, 0 ),
00101   V(  66, 0x412c,  81,  67, 0 ),
00102   V(  67, 0x37d8,  82,  68, 0 ),
00103   V(  68, 0x2fe8,  83,  69, 0 ),
00104   V(  69, 0x293c,  84,  70, 0 ),
00105   V(  70, 0x2379,  86,  71, 0 ),
00106   V(  71, 0x1edf,  87,  72, 0 ),
00107   V(  72, 0x1aa9,  87,  73, 0 ),
00108   V(  73, 0x174e,  72,  74, 0 ),
00109   V(  74, 0x1424,  72,  75, 0 ),
00110   V(  75, 0x119c,  74,  76, 0 ),
00111   V(  76, 0x0f6b,  74,  77, 0 ),
00112   V(  77, 0x0d51,  75,  78, 0 ),
00113   V(  78, 0x0bb6,  77,  79, 0 ),
00114   V(  79, 0x0a40,  77,  48, 0 ),
00115   V(  80, 0x5832,  80,  81, 1 ),
00116   V(  81, 0x4d1c,  88,  82, 0 ),
00117   V(  82, 0x438e,  89,  83, 0 ),
00118   V(  83, 0x3bdd,  90,  84, 0 ),
00119   V(  84, 0x34ee,  91,  85, 0 ),
00120   V(  85, 0x2eae,  92,  86, 0 ),
00121   V(  86, 0x299a,  93,  87, 0 ),
00122   V(  87, 0x2516,  86,  71, 0 ),
00123   V(  88, 0x5570,  88,  89, 1 ),
00124   V(  89, 0x4ca9,  95,  90, 0 ),
00125   V(  90, 0x44d9,  96,  91, 0 ),
00126   V(  91, 0x3e22,  97,  92, 0 ),
00127   V(  92, 0x3824,  99,  93, 0 ),
00128   V(  93, 0x32b4,  99,  94, 0 ),
00129   V(  94, 0x2e17,  93,  86, 0 ),
00130   V(  95, 0x56a8,  95,  96, 1 ),
00131   V(  96, 0x4f46, 101,  97, 0 ),
00132   V(  97, 0x47e5, 102,  98, 0 ),
00133   V(  98, 0x41cf, 103,  99, 0 ),
00134   V(  99, 0x3c3d, 104, 100, 0 ),
00135   V( 100, 0x375e,  99,  93, 0 ),
00136   V( 101, 0x5231, 105, 102, 0 ),
00137   V( 102, 0x4c0f, 106, 103, 0 ),
00138   V( 103, 0x4639, 107, 104, 0 ),
00139   V( 104, 0x415e, 103,  99, 0 ),
00140   V( 105, 0x5627, 105, 106, 1 ),
00141   V( 106, 0x50e7, 108, 107, 0 ),
00142   V( 107, 0x4b85, 109, 103, 0 ),
00143   V( 108, 0x5597, 110, 109, 0 ),
00144   V( 109, 0x504f, 111, 107, 0 ),
00145   V( 110, 0x5a10, 110, 111, 1 ),
00146   V( 111, 0x5522, 112, 109, 0 ),
00147   V( 112, 0x59eb, 112, 111, 1 ),
00148 /*
00149  * This last entry is used for fixed probability estimate of 0.5
00150  * as recommended in Section 10.3 Table 5 of ITU-T Rec. T.851.
00151  */
00152   V( 113, 0x5a1d, 113, 113, 0 )
00153 };

Generated on Sun May 27 2012 04:19:23 for ReactOS by doxygen 1.7.6.1

ReactOS is a registered trademark or a trademark of ReactOS Foundation in the United States and other countries.