com.coremedia.iso.boxes
Interface ContainerBox

All Superinterfaces:
Box
All Known Implementing Classes:
AbstractAppleMetaDataBox, AbstractContainerBox, ActionMessageFormat0SampleEntryBox, AppleAlbumArtistBox, AppleAlbumBox, AppleArtistBox, AppleCommentBox, AppleCompilationBox, AppleCopyrightBox, AppleCoverBox, AppleCustomGenreBox, AppleDescriptionBox, AppleEncoderBox, AppleGaplessPlaybackBox, AppleGenericBox, AppleGroupingBox, AppleIdBox, AppleItemListBox, AppleMediaTypeBox, AppleNetworkBox, ApplePurchaseDateBox, AppleRatingBox, AppleRecordingYearBox, AppleReferenceMovieBox, AppleReferenceMovieDescriptorBox, AppleShowBox, AppleSortAlbumBox, AppleStandardGenreBox, AppleStoreAccountTypeBox, AppleStoreCountryCodeBox, AppleSynopsisBox, AppleTempBox, AppleTrackAuthorBox, AppleTrackNumberBox, AppleTrackTitleBox, AppleTvEpisodeBox, AppleTvEpisodeNumberBox, AppleTvSeasonBox, AppleWaveBox, AudioSampleEntry, DataInformationBox, DataReferenceBox, EditBox, FullContainerBox, IsoFile, ItemProtectionBox, MediaBox, MediaInformationBox, MetaBox, MovieBox, MovieExtendsBox, MovieFragmentBox, MovieFragmentRandomAccessBox, MpegSampleEntry, Ovc1VisualSampleEntryImpl, ProtectionSchemeInformationBox, SampleDescriptionBox, SampleEntry, SampleTableBox, SchemeInformationBox, SubtitleSampleEntry, TextSampleEntry, TrackBox, TrackFragmentBox, TrackReferenceBox, UserDataBox, VisualSampleEntry

public interface ContainerBox
extends Box

Interface for all ISO boxes that may contain other boxes.


Method Summary
 List<Box> getBoxes()
          Gets all child boxes.
<T extends Box>
List<T>
getBoxes(Class<T> clazz)
          Gets all child boxes of the given type.
<T extends Box>
List<T>
getBoxes(Class<T> clazz, boolean recursive)
          Gets all child boxes of the given type.
 IsoFile getIsoFile()
           
 long getNumOfBytesToFirstChild()
          Returns the number of bytes from the start of the box to start of the first child.
 ContainerBox getParent()
          Gets the parent box.
 void setBoxes(List<Box> boxes)
          Sets all boxes and removes all previous child boxes.
 
Methods inherited from interface com.coremedia.iso.boxes.Box
getBox, getSize, getType, parse, setParent
 

Method Detail

getBoxes

List<Box> getBoxes()
Gets all child boxes. May not return null.

Returns:
an array of boxes, empty array in case of no children.

setBoxes

void setBoxes(List<Box> boxes)
Sets all boxes and removes all previous child boxes.

Parameters:
boxes - the new list of children

getBoxes

<T extends Box> List<T> getBoxes(Class<T> clazz)
Gets all child boxes of the given type. May not return null.

Parameters:
clazz - child box's type
Returns:
an array of boxes, empty array in case of no children.

getBoxes

<T extends Box> List<T> getBoxes(Class<T> clazz,
                                 boolean recursive)
Gets all child boxes of the given type. May not return null.

Parameters:
clazz - child box's type
recursive - step down the tree
Returns:
an array of boxes, empty array in case of no children.

getParent

ContainerBox getParent()
Gets the parent box. May be null in case of the IsoFile itself.

Specified by:
getParent in interface Box
Returns:
a ContainerBox that contains this

getNumOfBytesToFirstChild

long getNumOfBytesToFirstChild()
Returns the number of bytes from the start of the box to start of the first child.

Returns:
offset of first child from box start

getIsoFile

IsoFile getIsoFile()


Copyright © 2012. All Rights Reserved.