comparison Meerwald/dwt.c @ 14:1906e659edd0

fix undef. behaviour
author Peter Meerwald <pmeerw@cosy.sbg.ac.at>
date Mon, 30 Jun 2008 15:46:32 +0200
parents f83ef905a63d
children
comparison
equal deleted inserted replaced
13:cbecc570129d 14:1906e659edd0
154 switch (which) { 154 switch (which) {
155 case FILTERH: 155 case FILTERH:
156 filter[k] = tf[j--] / 2.0; 156 filter[k] = tf[j--] / 2.0;
157 break; 157 break;
158 case FILTERG: 158 case FILTERG:
159 filter[k] = (double) (((i & 0x01) * 2) - 1) * tf[i++] / 2.0; 159 filter[k] = (double) (((i & 0x01) * 2) - 1) * tf[i] / 2.0;
160 i++;
160 break; 161 break;
161 case FILTERHi: 162 case FILTERHi:
162 filter[k] = tf[j--]; 163 filter[k] = tf[j--];
163 break; 164 break;
164 case FILTERGi: 165 case FILTERGi:
165 filter[k] = (double) (((i & 0x01) * 2) - 1) * tf[i++]; 166 filter[k] = (double) (((i & 0x01) * 2) - 1) * tf[i];
167 i++;
166 break; 168 break;
167 default: 169 default:
168 return -1; 170 return -1;
169 } 171 }
170 172
276 filterlength = j - i + 1; 278 filterlength = j - i + 1;
277 for (k = 0; k < filterlength; k++) 279 for (k = 0; k < filterlength; k++)
278 switch (which) { 280 switch (which) {
279 case FILTERG: 281 case FILTERG:
280 case FILTERGi: 282 case FILTERGi:
281 filter[k] = (double) ((((i+1) & 0x01) * 2) - 1) * tf[i++]; 283 filter[k] = (double) ((((i+1) & 0x01) * 2) - 1) * tf[i];
284 i++;
282 break; 285 break;
283 case FILTERH: 286 case FILTERH:
284 case FILTERHi: 287 case FILTERHi:
285 filter[k] = tf[j--]; 288 filter[k] = tf[j--];
286 break; 289 break;

Repositories maintained by Peter Meerwald, pmeerw@pmeerw.net.