RLPark 1.0.0
Reinforcement Learning Framework in Java
|
00001 /* 00002 * The Apache Software License, Version 1.1 00003 * 00004 * Copyright (c) 2001-2002 The Apache Software Foundation. All rights 00005 * reserved. 00006 * 00007 * Redistribution and use in source and binary forms, with or without 00008 * modification, are permitted provided that the following conditions 00009 * are met: 00010 * 00011 * 1. Redistributions of source code must retain the above copyright 00012 * notice, this list of conditions and the following disclaimer. 00013 * 00014 * 2. Redistributions in binary form must reproduce the above copyright 00015 * notice, this list of conditions and the following disclaimer in 00016 * the documentation and/or other materials provided with the 00017 * distribution. 00018 * 00019 * 3. The end-user documentation included with the redistribution, if 00020 * any, must include the following acknowlegement: 00021 * "This product includes software developed by the 00022 * Apache Software Foundation (http://www.apache.org/)." 00023 * Alternately, this acknowlegement may appear in the software itself, 00024 * if and wherever such third-party acknowlegements normally appear. 00025 * 00026 * 4. The names "Ant" and "Apache Software 00027 * Foundation" must not be used to endorse or promote products derived 00028 * from this software without prior written permission. For written 00029 * permission, please contact apache@apache.org. 00030 * 00031 * 5. Products derived from this software may not be called "Apache" 00032 * nor may "Apache" appear in their names without prior written 00033 * permission of the Apache Group. 00034 * 00035 * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED 00036 * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES 00037 * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 00038 * DISCLAIMED. IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR 00039 * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 00040 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 00041 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF 00042 * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND 00043 * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, 00044 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT 00045 * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 00046 * SUCH DAMAGE. 00047 * ==================================================================== 00048 * 00049 * This software consists of voluntary contributions made by many 00050 * individuals on behalf of the Apache Software Foundation. For more 00051 * information on the Apache Software Foundation, please see 00052 * <http://www.apache.org/>. 00053 */ 00054 00055 /* 00056 * This package is based on the work done by Keiron Liddle, Aftex Software 00057 * <keiron@aftexsw.com> to whom the Ant project is very grateful for his 00058 * great code. 00059 */ 00060 00061 package zephyr.plugin.core.api.internal.bz2; 00062 00069 class CRC { 00070 public static int crc32Table[] = { 00071 0x00000000, 0x04c11db7, 0x09823b6e, 0x0d4326d9, 00072 0x130476dc, 0x17c56b6b, 0x1a864db2, 0x1e475005, 00073 0x2608edb8, 0x22c9f00f, 0x2f8ad6d6, 0x2b4bcb61, 00074 0x350c9b64, 0x31cd86d3, 0x3c8ea00a, 0x384fbdbd, 00075 0x4c11db70, 0x48d0c6c7, 0x4593e01e, 0x4152fda9, 00076 0x5f15adac, 0x5bd4b01b, 0x569796c2, 0x52568b75, 00077 0x6a1936c8, 0x6ed82b7f, 0x639b0da6, 0x675a1011, 00078 0x791d4014, 0x7ddc5da3, 0x709f7b7a, 0x745e66cd, 00079 0x9823b6e0, 0x9ce2ab57, 0x91a18d8e, 0x95609039, 00080 0x8b27c03c, 0x8fe6dd8b, 0x82a5fb52, 0x8664e6e5, 00081 0xbe2b5b58, 0xbaea46ef, 0xb7a96036, 0xb3687d81, 00082 0xad2f2d84, 0xa9ee3033, 0xa4ad16ea, 0xa06c0b5d, 00083 0xd4326d90, 0xd0f37027, 0xddb056fe, 0xd9714b49, 00084 0xc7361b4c, 0xc3f706fb, 0xceb42022, 0xca753d95, 00085 0xf23a8028, 0xf6fb9d9f, 0xfbb8bb46, 0xff79a6f1, 00086 0xe13ef6f4, 0xe5ffeb43, 0xe8bccd9a, 0xec7dd02d, 00087 0x34867077, 0x30476dc0, 0x3d044b19, 0x39c556ae, 00088 0x278206ab, 0x23431b1c, 0x2e003dc5, 0x2ac12072, 00089 0x128e9dcf, 0x164f8078, 0x1b0ca6a1, 0x1fcdbb16, 00090 0x018aeb13, 0x054bf6a4, 0x0808d07d, 0x0cc9cdca, 00091 0x7897ab07, 0x7c56b6b0, 0x71159069, 0x75d48dde, 00092 0x6b93dddb, 0x6f52c06c, 0x6211e6b5, 0x66d0fb02, 00093 0x5e9f46bf, 0x5a5e5b08, 0x571d7dd1, 0x53dc6066, 00094 0x4d9b3063, 0x495a2dd4, 0x44190b0d, 0x40d816ba, 00095 0xaca5c697, 0xa864db20, 0xa527fdf9, 0xa1e6e04e, 00096 0xbfa1b04b, 0xbb60adfc, 0xb6238b25, 0xb2e29692, 00097 0x8aad2b2f, 0x8e6c3698, 0x832f1041, 0x87ee0df6, 00098 0x99a95df3, 0x9d684044, 0x902b669d, 0x94ea7b2a, 00099 0xe0b41de7, 0xe4750050, 0xe9362689, 0xedf73b3e, 00100 0xf3b06b3b, 0xf771768c, 0xfa325055, 0xfef34de2, 00101 0xc6bcf05f, 0xc27dede8, 0xcf3ecb31, 0xcbffd686, 00102 0xd5b88683, 0xd1799b34, 0xdc3abded, 0xd8fba05a, 00103 0x690ce0ee, 0x6dcdfd59, 0x608edb80, 0x644fc637, 00104 0x7a089632, 0x7ec98b85, 0x738aad5c, 0x774bb0eb, 00105 0x4f040d56, 0x4bc510e1, 0x46863638, 0x42472b8f, 00106 0x5c007b8a, 0x58c1663d, 0x558240e4, 0x51435d53, 00107 0x251d3b9e, 0x21dc2629, 0x2c9f00f0, 0x285e1d47, 00108 0x36194d42, 0x32d850f5, 0x3f9b762c, 0x3b5a6b9b, 00109 0x0315d626, 0x07d4cb91, 0x0a97ed48, 0x0e56f0ff, 00110 0x1011a0fa, 0x14d0bd4d, 0x19939b94, 0x1d528623, 00111 0xf12f560e, 0xf5ee4bb9, 0xf8ad6d60, 0xfc6c70d7, 00112 0xe22b20d2, 0xe6ea3d65, 0xeba91bbc, 0xef68060b, 00113 0xd727bbb6, 0xd3e6a601, 0xdea580d8, 0xda649d6f, 00114 0xc423cd6a, 0xc0e2d0dd, 0xcda1f604, 0xc960ebb3, 00115 0xbd3e8d7e, 0xb9ff90c9, 0xb4bcb610, 0xb07daba7, 00116 0xae3afba2, 0xaafbe615, 0xa7b8c0cc, 0xa379dd7b, 00117 0x9b3660c6, 0x9ff77d71, 0x92b45ba8, 0x9675461f, 00118 0x8832161a, 0x8cf30bad, 0x81b02d74, 0x857130c3, 00119 0x5d8a9099, 0x594b8d2e, 0x5408abf7, 0x50c9b640, 00120 0x4e8ee645, 0x4a4ffbf2, 0x470cdd2b, 0x43cdc09c, 00121 0x7b827d21, 0x7f436096, 0x7200464f, 0x76c15bf8, 00122 0x68860bfd, 0x6c47164a, 0x61043093, 0x65c52d24, 00123 0x119b4be9, 0x155a565e, 0x18197087, 0x1cd86d30, 00124 0x029f3d35, 0x065e2082, 0x0b1d065b, 0x0fdc1bec, 00125 0x3793a651, 0x3352bbe6, 0x3e119d3f, 0x3ad08088, 00126 0x2497d08d, 0x2056cd3a, 0x2d15ebe3, 0x29d4f654, 00127 0xc5a92679, 0xc1683bce, 0xcc2b1d17, 0xc8ea00a0, 00128 0xd6ad50a5, 0xd26c4d12, 0xdf2f6bcb, 0xdbee767c, 00129 0xe3a1cbc1, 0xe760d676, 0xea23f0af, 0xeee2ed18, 00130 0xf0a5bd1d, 0xf464a0aa, 0xf9278673, 0xfde69bc4, 00131 0x89b8fd09, 0x8d79e0be, 0x803ac667, 0x84fbdbd0, 00132 0x9abc8bd5, 0x9e7d9662, 0x933eb0bb, 0x97ffad0c, 00133 0xafb010b1, 0xab710d06, 0xa6322bdf, 0xa2f33668, 00134 0xbcb4666d, 0xb8757bda, 0xb5365d03, 0xb1f740b4 00135 }; 00136 00137 public CRC() { 00138 initialiseCRC(); 00139 } 00140 00141 void initialiseCRC() { 00142 globalCrc = 0xffffffff; 00143 } 00144 00145 int getFinalCRC() { 00146 return ~globalCrc; 00147 } 00148 00149 int getGlobalCRC() { 00150 return globalCrc; 00151 } 00152 00153 void setGlobalCRC(int newCrc) { 00154 globalCrc = newCrc; 00155 } 00156 00157 void updateCRC(int inCh) { 00158 int temp = globalCrc >> 24 ^ inCh; 00159 if (temp < 0) 00160 temp = 256 + temp; 00161 globalCrc = globalCrc << 8 ^ CRC.crc32Table[temp]; 00162 } 00163 00164 int globalCrc; 00165 }