source: trunk/src_apollo/org/apollo/audio/structure/LinkedTracksGraphNode.java@ 315

Last change on this file since 315 was 315, checked in by bjn8, 16 years ago

Apollo spin-off added

File size: 1.2 KB
Line 
1package org.apollo.audio.structure;
2
3/**
4 * Immutable.
5 *
6 * @see {@link AudioStructureModel} for thread safe convention.
7 *
8 * @author Brook Novak
9 *
10 */
11public class LinkedTracksGraphNode extends AbstractTrackGraphNode {
12
13 private OverdubbedFrame linkedFrame;
14
15 private String virtualFilename; // immutable - assigned on construction
16
17 /**
18 *
19 * @param linkedFrame
20 *
21 * @param virtualFilename
22 *
23 * @param initiationTime
24 * In milliseconds. Can be negative - relative.
25 *
26 * @param name
27 * The name to set this to. Can be null
28 *
29 * @throws NullPointerException
30 * if linkedFrame is null.
31 */
32 LinkedTracksGraphNode(long initiationTime, OverdubbedFrame linkedFrame, String virtualFilename, String name) {
33 super(initiationTime, name);
34 if (linkedFrame == null) throw new NullPointerException("linkedFrame");
35 this.linkedFrame = linkedFrame;
36 this.virtualFilename = virtualFilename;
37 }
38
39 public OverdubbedFrame getLinkedFrame() {
40 return linkedFrame;
41 }
42
43 public String getVirtualFilename() {
44 return virtualFilename;
45 }
46
47 /**
48 * @see OverdubbedFrame#calculateRunningTime()
49 *
50 * @return
51 * The linked frames running time
52 */
53 @Override
54 public long getRunningTime() {
55 return linkedFrame.calculateRunningTime();
56 }
57
58
59}
Note: See TracBrowser for help on using the repository browser.