EMMA Coverage Report (generated Tue Mar 14 21:50:42 EST 2006)
[all classes][org.farng.mp3.id3]

COVERAGE SUMMARY FOR SOURCE FILE [FrameBodyPOSS.java]

nameclass, %method, %block, %line, %
FrameBodyPOSS.java0%   (0/1)0%   (0/6)0%   (0/47)0%   (0/15)

COVERAGE BREAKDOWN BY CLASS AND METHOD

nameclass, %method, %block, %line, %
     
class FrameBodyPOSS0%   (0/1)0%   (0/6)0%   (0/47)0%   (0/15)
FrameBodyPOSS (): void 0%   (0/1)0%   (0/3)0%   (0/2)
FrameBodyPOSS (FrameBodyPOSS): void 0%   (0/1)0%   (0/4)0%   (0/2)
FrameBodyPOSS (RandomAccessFile): void 0%   (0/1)0%   (0/6)0%   (0/3)
FrameBodyPOSS (byte, long): void 0%   (0/1)0%   (0/17)0%   (0/4)
getIdentifier (): String 0%   (0/1)0%   (0/2)0%   (0/1)
setupObjectList (): void 0%   (0/1)0%   (0/15)0%   (0/3)

1package org.farng.mp3.id3;
2 
3import org.farng.mp3.InvalidTagException;
4import org.farng.mp3.object.ObjectNumberHashMap;
5import org.farng.mp3.object.ObjectNumberVariableLength;
6 
7import java.io.IOException;
8import java.io.RandomAccessFile;
9 
10/**
11 * <h3>4.21.&nbsp;&nbsp; Position synchronisation frame</h3>
12 * <p/>
13 * <p>&nbsp;&nbsp; This frame delivers information to the listener of how far into the<br> &nbsp;&nbsp; audio stream he
14 * picked up; in effect, it states the time offset from<br> &nbsp;&nbsp; the first frame in the stream. The frame layout
15 * is:</p>
16 * <p/>
17 * <p>&nbsp;&nbsp;&nbsp;&nbsp; &lt;Head for 'Position synchronisation', ID: &quot;POSS&quot;&gt;<br>
18 * <p/>
19 * &nbsp;&nbsp;&nbsp;&nbsp; Time stamp format&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; $xx<br>
20 * &nbsp;&nbsp;&nbsp;&nbsp; Position&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
21 * $xx (xx ...)</p>
22 * <p/>
23 * <p>&nbsp;&nbsp; Where time stamp format is:</p>
24 * <p/>
25 * <p>&nbsp;&nbsp;&nbsp;&nbsp; $01&nbsp; Absolute time, 32 bit sized, using MPEG frames as unit<br>
26 * &nbsp;&nbsp;&nbsp;&nbsp; $02&nbsp; Absolute time, 32 bit sized, using milliseconds as unit</p>
27 * <p/>
28 * <p>&nbsp;&nbsp; and position is where in the audio the listener starts to receive,<br> &nbsp;&nbsp; i.e. the
29 * beginning of the next frame. If this frame is used in the<br>
30 * <p/>
31 * &nbsp;&nbsp; beginning of a file the value is always 0. There may only be one<br> &nbsp;&nbsp; &quot;POSS&quot; frame
32 * in each tag.<br> </p>
33 *
34 * @author Eric Farng
35 * @version $Revision: 1.4 $
36 */
37public class FrameBodyPOSS extends AbstractID3v2FrameBody {
38 
39    /**
40     * Creates a new FrameBodyPOSS object.
41     */
42    public FrameBodyPOSS() {
43        super();
44    }
45 
46    /**
47     * Creates a new FrameBodyPOSS object.
48     */
49    public FrameBodyPOSS(final FrameBodyPOSS body) {
50        super(body);
51    }
52 
53    /**
54     * Creates a new FrameBodyPOSS object.
55     */
56    public FrameBodyPOSS(final byte timeStampFormat, final long position) {
57        setObject(ObjectNumberHashMap.TIME_STAMP_FORMAT, new Byte(timeStampFormat));
58        setObject("Position", new Long(position));
59    }
60 
61    /**
62     * Creates a new FrameBodyPOSS object.
63     */
64    public FrameBodyPOSS(final RandomAccessFile file) throws IOException, InvalidTagException {
65        this.read(file);
66    }
67 
68    public String getIdentifier() {
69        return "POSS";
70    }
71 
72    protected void setupObjectList() {
73        appendToObjectList(new ObjectNumberHashMap(ObjectNumberHashMap.TIME_STAMP_FORMAT, 1));
74        appendToObjectList(new ObjectNumberVariableLength("Position", 1));
75    }
76}

[all classes][org.farng.mp3.id3]
EMMA 2.0.5312 (C) Vladimir Roubtsov