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 |
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, getBoxes, getBoxes, getBoxes, getByteBuffer, getContainerSize, hasNext, next, parseContainer, remove, setBoxes, toString, writeContainerprotected 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 ChannelCopyright © 2014. All rights reserved.