|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.jaudiotagger.tag.id3.AbstractTagItem org.jaudiotagger.tag.id3.AbstractTagFrameBody org.jaudiotagger.tag.id3.framebody.AbstractID3v2FrameBody org.jaudiotagger.tag.id3.framebody.FrameBodyCTOC
public class FrameBodyCTOC
Table of content frame.
The purpose of "CTOC" frames is to allow a table of contents to be defined. In the simplest case, a single "CTOC" frame can be used to provide a flat (single-level) table of contents. However, multiple "CTOC" frames can also be used to define a hierarchical (multi-level) table of contents.There may be more than one frame of this type in a tag but each must have an Element ID that is unique with respect to any other "CTOC" or "CHAP" frame in the tag.
Each "CTOC" frame represents one level or element of a table of contents by providing a list of Child Element IDs. These match the Element IDs of other "CHAP" and "CTOC" frames in the tag.
<ID3v2.3 or ID3v2.4 frame header, ID: "CTOC"> | (10 bytes) | |
Element ID | <text string> $00 | |
Flags | %000000ab | |
Entry count | $xx (8-bit unsigned int) | |
<Child Element ID list> | ||
<Optional embedded sub-frames> |
Flag a - Top-level bit
This is set to 1 to identify the top-level "CTOC" frame. This frame
is the root of the Table of Contents tree and is not a child of any
other "CTOC" frame. Only one "CTOC" frame in an ID3v2 tag can have
this bit set to 1. In all other "CTOC" frames this bit shall be set
to 0.
Flag b - Ordered bit
This should be set to 1 if the entries in the Child Element ID list
are ordered or set to 0 if they not are ordered. This provides a hint
as to whether the elements should be played as a continuous ordered
sequence or played individually.
The Entry count is the number of entries in the Child Element ID list that follows and must be greater than zero. Each entry in the list consists of:
Child Element ID | <text string> $00 |
If a parser does not recognise "CTOC" frames it can skip them using the size field in the frame header. When it does this it will skip any embedded sub-frames carried within the frame.
For more details, please refer to the ID3 Chapter Frame specifications:
Field Summary |
---|
Fields inherited from class org.jaudiotagger.tag.id3.framebody.AbstractID3v2FrameBody |
---|
TYPE_BODY |
Fields inherited from class org.jaudiotagger.tag.id3.AbstractTagFrameBody |
---|
objectList |
Fields inherited from class org.jaudiotagger.tag.id3.AbstractTagItem |
---|
logger |
Constructor Summary | |
---|---|
FrameBodyCTOC()
Creates a new FrameBodyCTOC datatype. |
|
FrameBodyCTOC(java.nio.ByteBuffer byteBuffer,
int frameSize)
Creates a new FrameBodyCTOC datatype. |
|
FrameBodyCTOC(FrameBodyCTOC body)
Creates a new FrameBodyCTOC datatype. |
Method Summary | |
---|---|
java.lang.String |
getIdentifier()
The ID3v2 frame identifier |
protected void |
setupObjectList()
TODO:proper mapping |
Methods inherited from class org.jaudiotagger.tag.id3.framebody.AbstractID3v2FrameBody |
---|
createStructure, equals, getSize, read, setSize, setSize, write |
Methods inherited from class org.jaudiotagger.tag.id3.AbstractTagFrameBody |
---|
getBriefDescription, getHeader, getLongDescription, getObject, getObjectValue, getTextEncoding, isSubsetOf, iterator, setHeader, setObjectValue, setTextEncoding, toString |
Methods inherited from class java.lang.Object |
---|
clone, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Constructor Detail |
---|
public FrameBodyCTOC()
public FrameBodyCTOC(FrameBodyCTOC body)
body
- public FrameBodyCTOC(java.nio.ByteBuffer byteBuffer, int frameSize) throws InvalidTagException
byteBuffer
- frameSize
-
InvalidTagException
- if unable to create framebody from bufferMethod Detail |
---|
public java.lang.String getIdentifier()
getIdentifier
in class AbstractID3v2FrameBody
protected void setupObjectList()
setupObjectList
in class AbstractTagFrameBody
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |