raw evaluation numbers for the mp3decoder
[IRC.git] / Robust / src / Benchmarks / SSJava / MP3Decoder / Subband.java
1 //package ssJava.mp3decoder;
2
3 /**
4  * Abstract base class for subband classes of layer I and II
5  */
6 @LATTICE("S<L,L<H,H<SH,SH<SH0")
7 @METHODDEFAULT("OUT<V,V<THIS,THIS<C,C<IN,C*,THISLOC=THIS,RETURNLOC=OUT")
8 static abstract class Subband {
9   /*
10    * Changes from version 1.1 to 1.2: - array size increased by one, although a
11    * scalefactor with index 63 is illegal (to prevent segmentation faults)
12    */
13   // Scalefactors for layer I and II, Annex 3-B.1 in ISO/IEC DIS 11172:
14   public static final float scalefactors[] = { 2.00000000000000f, 1.58740105196820f,
15       1.25992104989487f, 1.00000000000000f, 0.79370052598410f, 0.62996052494744f,
16       0.50000000000000f, 0.39685026299205f, 0.31498026247372f, 0.25000000000000f,
17       0.19842513149602f, 0.15749013123686f, 0.12500000000000f, 0.09921256574801f,
18       0.07874506561843f, 0.06250000000000f, 0.04960628287401f, 0.03937253280921f,
19       0.03125000000000f, 0.02480314143700f, 0.01968626640461f, 0.01562500000000f,
20       0.01240157071850f, 0.00984313320230f, 0.00781250000000f, 0.00620078535925f,
21       0.00492156660115f, 0.00390625000000f, 0.00310039267963f, 0.00246078330058f,
22       0.00195312500000f, 0.00155019633981f, 0.00123039165029f, 0.00097656250000f,
23       0.00077509816991f, 0.00061519582514f, 0.00048828125000f, 0.00038754908495f,
24       0.00030759791257f, 0.00024414062500f, 0.00019377454248f, 0.00015379895629f,
25       0.00012207031250f, 0.00009688727124f, 0.00007689947814f, 0.00006103515625f,
26       0.00004844363562f, 0.00003844973907f, 0.00003051757813f, 0.00002422181781f,
27       0.00001922486954f, 0.00001525878906f, 0.00001211090890f, 0.00000961243477f,
28       0.00000762939453f, 0.00000605545445f, 0.00000480621738f, 0.00000381469727f,
29       0.00000302772723f, 0.00000240310869f, 0.00000190734863f, 0.00000151386361f,
30       0.00000120155435f, 0.00000000000000f /* illegal scalefactor */
31   };
32
33   public abstract void read_allocation(@LOC("IN") Bitstream stream, @LOC("IN") Header header,
34       @LOC("IN") Crc16 crc) throws DecoderException;
35
36   public abstract void read_scalefactor(@LOC("IN") Bitstream stream, @LOC("IN") Header header);
37
38   @RETURNLOC("OUT")
39   public abstract boolean read_sampledata(@LOC("IN") Bitstream stream);
40
41   @RETURNLOC("OUT")
42   public abstract boolean put_next_sample(@LOC("IN") int channels,
43       @LOC("IN") SynthesisFilter filter1, @LOC("IN") SynthesisFilter filter2);
44 };