package org.mp4parser.muxer;
import org.mp4parser.boxes.iso14496.part12.CompositionTimeToSample;
import org.mp4parser.boxes.iso14496.part12.SampleDependencyTypeBox;
import org.mp4parser.boxes.iso14496.part12.SampleDescriptionBox;
import org.mp4parser.boxes.iso14496.part12.SubSampleInformationBox;
import org.mp4parser.boxes.samplegrouping.GroupEntry;
import java.io.IOException;
import java.util.List;
import java.util.Map;
/**
* A simple track wrapper that delegates all calls to parent track. Override certain methods inline to change result.
*/
public class WrappingTrack implements Track {
Track parent;
public WrappingTrack(Track parent) {
this.parent = parent;
}
public SampleDescriptionBox getSampleDescriptionBox() {
return parent.getSampleDescriptionBox();
}
public long[] getSampleDurations() {
return parent.getSampleDurations();
}
public long getDuration() {
return parent.getDuration();
}
public List<CompositionTimeToSample.Entry> getCompositionTimeEntries() {
return parent.getCompositionTimeEntries();
}
public long[] getSyncSamples() {
return parent.getSyncSamples();
}
public List<SampleDependencyTypeBox.Entry> getSampleDependencies() {
return parent.getSampleDependencies();
}
public TrackMetaData getTrackMetaData() {
return parent.getTrackMetaData();
}
public String getHandler() {
return parent.getHandler();
}
public List<Sample> getSamples() {
return parent.getSamples();
}
public SubSampleInformationBox getSubsampleInformationBox() {
return parent.getSubsampleInformationBox();
}
public String getName() {
return parent.getName() + "'";
}
public List<Edit> getEdits() {
return parent.getEdits();
}
public void close() throws IOException {
parent.close();
}
public Map<GroupEntry, long[]> getSampleGroups() {
return parent.getSampleGroups();
}
}