package org.herac.tuxguitar.song.helpers;
import java.util.ArrayList;
import java.util.List;
import org.herac.tuxguitar.song.models.TGMeasure;
import org.herac.tuxguitar.song.models.TGMeasureHeader;
public class TGSongSegment {
private final List<TGMeasureHeader> headers = new ArrayList<TGMeasureHeader>();
private final List<TGTrackSegment> tracks = new ArrayList<TGTrackSegment>();
public void addTrack(int track, List<TGMeasure> measures) {
this.tracks.add(new TGTrackSegment(track, measures));
}
@Override
public TGSongSegment clone() {
TGSongSegment segment = new TGSongSegment();
for (final TGMeasureHeader header : this.headers) {
segment.headers.add(header.clone());
}
for (final TGTrackSegment trackMeasure : this.tracks) {
segment.tracks.add(trackMeasure.clone(segment.headers));
}
return segment;
}
public List<TGMeasureHeader> getHeaders() {
return this.headers;
}
public List<TGTrackSegment> getTracks() {
return this.tracks;
}
public boolean isEmpty() {
return this.headers.isEmpty() || this.tracks.isEmpty();
}
}