public class AbstractContainerBox extends BasicContainer implements Box
| Modifier and Type | Field and Description |
|---|---|
protected boolean |
largeBox |
protected String |
type |
boxParser, dataSource| Constructor and Description |
|---|
AbstractContainerBox(String type) |
| Modifier and Type | Method and Description |
|---|---|
void |
getBox(WritableByteChannel writableByteChannel)
Writes the complete box - size | 4-cc | content - to the given
writableByteChannel. |
protected ByteBuffer |
getHeader() |
long |
getOffset()
Returns the position of the box in the original file.
|
Container |
getParent() |
long |
getSize() |
String |
getType()
The box's 4-cc type.
|
void |
initContainer(DataSource dataSource,
long containerSize,
BoxParser boxParser) |
void |
parse(DataSource dataSource,
ByteBuffer header,
long contentSize,
BoxParser boxParser)
Parses the box excluding the already parsed header (size, 4cc, [long-size], [user-type]).
|
void |
setParent(Container parent) |
addBox, close, getBoxes, getBoxes, getBoxes, getByteBuffer, getContainerSize, hasNext, next, remove, setBoxes, toString, writeContainerclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitforEachRemainingprotected String type
protected boolean largeBox
public AbstractContainerBox(String type)
public long getOffset()
Boxprotected ByteBuffer getHeader()
public void parse(DataSource dataSource, ByteBuffer header, long contentSize, BoxParser boxParser) throws IOException
BoxcontentSize, contentSize
number of bytes should be read from the box source (readableByteChannel).
If you need the header buffer at a later stage you have to create a copy.parse in interface BoxdataSource - the source for this boxheader - the box' already parsed header (create copy if you need it
later as it will be overwritten)contentSize - remaining bytes of this boxboxParser - use it to parse sub-boxes.IOException - in case of an error during a read operationpublic void getBox(WritableByteChannel writableByteChannel) throws IOException
BoxwritableByteChannel.getBox in interface BoxwritableByteChannel - the box's sinkIOException - in case of problems with the Channelpublic void initContainer(DataSource dataSource, long containerSize, BoxParser boxParser) throws IOException
initContainer in class BasicContainerIOExceptionCopyright © 2015. All rights reserved.