Detailed Javadoc for Timeline, Period and Window

-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=131715194
This commit is contained in:
olly 2016-08-30 08:59:11 -07:00 committed by Oliver Woodman
parent b88a5e1b12
commit 797cd46e89
10 changed files with 114 additions and 6 deletions

View File

@ -16,7 +16,78 @@
package com.google.android.exoplayer2;
/**
* A media timeline. Instances are immutable.
* A representation of media currently available for playback.
* <p>
* Timeline instances are immutable. For cases where the available media is changing dynamically
* (e.g. live streams) a timeline provides a snapshot of the media currently available.
* <p>
* A timeline consists of related {@link Period}s and {@link Window}s. A period defines a single
* logical piece of media, for example a media file. A window spans one or more periods, defining
* the region within those periods that's currently available for playback along with additional
* information such as whether seeking is supported within the window. Each window defines a default
* start position, which is the position from which playback will start when the player starts
* playing the window. The following examples illustrate timelines for various use cases.
*
* <h3 id="single-file">Single media file or on-demand stream</h3>
* <p align="center">
* <img src="doc-files/timeline-single-file.svg" alt="Example timeline for a single file">
* </p>
* A timeline for a single media file or on-demand stream consists of a single period and window.
* The window spans the whole period, indicating that all parts of the media are available for
* playback. The window's default start position is typically at the start of the period (indicated
* by the black dot in the figure above).
* <h3>Playlist of media files or on-demand streams</h3>
* <p align="center">
* <img src="doc-files/timeline-playlist.svg" alt="Example timeline for a playlist of files">
* </p>
* A timeline for a playlist of media files or on-demand streams consists of multiple periods, each
* with its own window. Each window spans the whole of the corresponding period, and typically has a
* default start position at the start of the period. The properties of the periods and windows
* (e.g. their durations and whether the window is seekable) will often only become known when the
* player starts buffering the corresponding file or stream.
*
* <h3 id="live-limited">Live stream with limited availability</h3>
* <p align="center">
* <img src="doc-files/timeline-live-limited.svg" alt="Example timeline for a live stream with
* limited availability">
* </p>
* A timeline for a live stream consists of a period whose duration is unknown, since its
* continually extending as more content is broadcast. If content only remains available for a
* limited period of time then the window may start at a non-zero position, defining the region of
* content that can still be played. The window will have {@link Window#isDynamic} set to true if
* the stream is still live. Its default start position is typically near to the live edge
* (indicated by the black dot in the figure above).
*
* <h3>Live stream with indefinite availability</h3>
* <p align="center">
* <img src="doc-files/timeline-live-indefinite.svg" alt="Example timeline for a live stream with
* indefinite availability">
* </p>
* A timeline for a live stream with indefinite availability is similar to the
* <a href="#live-limited">Live stream with limited availability</a> case, except that the window
* starts at the beginning of the period to indicate that all of the previously broadcast content
* can still be played.
*
* <h3 id="live-multi-period">Live stream with multiple periods</h3>
* <p align="center">
* <img src="doc-files/timeline-live-multi-period.svg" alt="Example timeline for a live stream
* with multiple periods">
* </p>
* This case arises when a live stream is explicitly divided into separate periods, for example at
* content and advert boundaries. This case is similar to the <a href="#live-limited">Live stream
* with limited availability</a> case, except that the window may span more than one period.
* Multiple periods are also possible in the indefinite availability case.
*
* <h3>On-demand pre-roll followed by live stream</h3>
* <p align="center">
* <img src="doc-files/timeline-advanced.svg" alt="Example timeline for an on-demand pre-roll
* followed by a live stream">
* </p>
* This case is the concatenation of the <a href="#single-file">Single media file or on-demand
* stream</a> and <a href="#multi-period">Live stream with multiple periods</a> cases. When playback
* of the pre-roll ends, playback of the live stream will start from its default start position near
* the live edge.
*/
public abstract class Timeline {
@ -87,7 +158,14 @@ public abstract class Timeline {
public abstract int getIndexOfPeriod(Object uid);
/**
* Holds information about a window of available media.
* Holds information about a window in a {@link Timeline}. A window defines a region of media
* currently available for playback along with additional information such as whether seeking is
* supported within the window. See {@link Timeline} for more details. The figure below shows some
* of the information defined by a window, as well as how this information relates to
* corresponding {@link Period}s in the timeline.
* <p align="center">
* <img src="doc-files/timeline-window.svg" alt="Information defined by a timeline window">
* </p>
*/
public static final class Window {
@ -200,7 +278,13 @@ public abstract class Timeline {
}
/**
* Holds information about a media period.
* Holds information about a period in a {@link Timeline}. A period defines a single logical piece
* of media, for example a a media file. See {@link Timeline} for more details. The figure below
* shows some of the information defined by a period, as well as how this information relates to a
* corresponding {@link Window} in the timeline.
* <p align="center">
* <img src="doc-files/timeline-period.svg" alt="Information defined by a period">
* </p>
*/
public static final class Period {

View File

@ -100,17 +100,17 @@ public interface ExoMediaDrm<T extends ExoMediaCrypto> {
void provideProvisionResponse(byte[] response) throws DeniedByServerException;
/**
* @see MediaDrm#queryKeyStatus(byte[]).
* @see MediaDrm#queryKeyStatus(byte[])
*/
Map<String, String> queryKeyStatus(byte[] sessionId);
/**
* @see MediaDrm#release().
* @see MediaDrm#release()
*/
void release();
/**
* @see MediaDrm#restoreKeys(byte[], byte[]).
* @see MediaDrm#restoreKeys(byte[], byte[])
*/
void restoreKeys(byte[] sessionId, byte[] keySetId);

View File

@ -0,0 +1,3 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xl="http://www.w3.org/1999/xlink" version="1.1" viewBox="34 687 478 108" width="478pt" height="9pc" xmlns:dc="http://purl.org/dc/elements/1.1/"><metadata> Produced by OmniGraffle 6.6.1 <dc:date>2016-08-29 18:21:43 +0000</dc:date></metadata><defs><font-face font-family="Helvetica" font-size="10" units-per-em="1000" underline-position="-75.683594" underline-thickness="49.316406" slope="0" x-height="522.94922" cap-height="717.28516" ascent="770.01953" descent="-229.98047" font-weight="500"><font-face-src><font-face-name name="Helvetica"/></font-face-src></font-face><marker orient="auto" overflow="visible" markerUnits="strokeWidth" id="FilledArrow_Marker" viewBox="-1 -4 10 8" markerWidth="10" markerHeight="8" color="black"><g><path d="M 8 0 L 0 -3 L 0 3 Z" fill="currentColor" stroke="currentColor" stroke-width="1"/></g></marker><linearGradient x1="0" x2="1" id="Gradient" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="white"/><stop offset="1" stop-color="white" stop-opacity="0"/></linearGradient><linearGradient id="Obj_Gradient" xl:href="#Gradient" gradientTransform="translate(502.75467 712.5) rotate(180) scale(57.75467)"/><linearGradient id="Obj_Gradient_2" xl:href="#Gradient" gradientTransform="translate(502.75467 712.5) rotate(180) scale(57.75467)"/><linearGradient id="Obj_Gradient_3" xl:href="#Gradient" gradientTransform="translate(502.75467 712.5) rotate(180) scale(57.75467)"/><linearGradient id="Obj_Gradient_4" xl:href="#Gradient" gradientTransform="translate(502.75467 712.5) rotate(180) scale(57.75467)"/></defs><g stroke="none" stroke-opacity="1" stroke-dasharray="none" fill="none" fill-opacity="1"><title>Canvas 1</title><rect fill="white" width="836" height="2e3"/><g><title>Layer 1</title><rect x="198.47753" y="700" width="148.4428" height="25" fill="#dee1f8"/><rect x="198.47753" y="700" width="148.4428" height="25" stroke="black" stroke-linecap="round" stroke-linejoin="miter" stroke-width="1"/><text transform="translate(203.47753 706.5)" fill="black"><tspan font-family="Helvetica" font-size="10" font-weight="500" x="52.541713" y="10" textLength="33.359375">period2</tspan></text><rect x="347.1864" y="700" width="147.8136" height="25" fill="#dee1f8"/><rect x="347.1864" y="700" width="147.8136" height="25" stroke="black" stroke-linecap="round" stroke-linejoin="miter" stroke-width="1"/><text transform="translate(352.1864 706.5)" fill="black"><tspan font-family="Helvetica" font-size="10" font-weight="500" x="52.227112" y="10" textLength="33.359375">period3</tspan></text><rect x="254" y="730" width="195" height="25" fill="#c3f9bc"/><rect x="254" y="730" width="195" height="25" stroke="black" stroke-linecap="round" stroke-linejoin="miter" stroke-width="1"/><text transform="translate(259 736.5)" fill="black"><tspan font-family="Helvetica" font-size="10" font-weight="500" x="73.044434" y="10" textLength="38.911133">window2</tspan></text><circle cx="405" cy="742.5" r="5.000008" fill="black"/><circle cx="405" cy="742.5" r="5.000008" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><line x1="50" y1="765" x2="485.1" y2="765" marker-end="url(#FilledArrow_Marker)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="453.41325" y="763.4195" width="29" height="22" fill="white" fill-opacity="0"/><text transform="translate(458.41325 768.4195)" fill="black"><tspan font-family="Helvetica" font-size="10" font-weight="500" x=".05419922" y="10" textLength="18.891602">time</tspan></text><rect x="445" y="696.1257" width="57.75467" height="32.748597" fill="url(#Obj_Gradient)"/><rect x="445" y="696.1257" width="57.75467" height="32.748597" fill="url(#Obj_Gradient_2)"/><rect x="445" y="696.1257" width="57.75467" height="32.748597" fill="url(#Obj_Gradient_3)"/><rect x="445" y="696.1257" width="57.75467" height="32.748597" fill="url(#Obj_Gradient_4)"/><rect x="50" y="700" width="148.4428" height="25" fill="#dee1f8"/><rect x="50" y="700" width="148.4428" height="25" stroke="black" stroke-linecap="round" stroke-linejoin="miter" stroke-width="1"/><text transform="translate(55 706.5)" fill="black"><tspan font-family="Helvetica" font-size="10" font-weight="500" x="52.541713" y="10" textLength="33.359375">period1</tspan></text><rect x="50" y="730" width="148.4428" height="25" fill="#c3f9bc"/><rect x="50" y="730" width="148.4428" height="25" stroke="black" stroke-linecap="round" stroke-linejoin="miter" stroke-width="1"/><text transform="translate(55 736.5)" fill="black"><tspan font-family="Helvetica" font-size="10" font-weight="500" x="49.765834" y="10" textLength="38.911133">window1</tspan></text><circle cx="50" cy="742.5" r="5.000008" fill="black"/><circle cx="50" cy="742.5" r="5.000008" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/></g></g></svg>

After

Width:  |  Height:  |  Size: 4.9 KiB

View File

@ -0,0 +1,3 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xl="http://www.w3.org/1999/xlink" version="1.1" viewBox="38 487 474 108" width="474pt" height="9pc" xmlns:dc="http://purl.org/dc/elements/1.1/"><metadata> Produced by OmniGraffle 6.6.1 <dc:date>2016-08-29 18:21:43 +0000</dc:date></metadata><defs><font-face font-family="Helvetica" font-size="10" units-per-em="1000" underline-position="-75.683594" underline-thickness="49.316406" slope="0" x-height="522.94922" cap-height="717.28516" ascent="770.01953" descent="-229.98047" font-weight="500"><font-face-src><font-face-name name="Helvetica"/></font-face-src></font-face><linearGradient x1="0" x2="1" id="Gradient" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="white"/><stop offset="1" stop-color="white" stop-opacity="0"/></linearGradient><linearGradient id="Obj_Gradient" xl:href="#Gradient" gradientTransform="translate(502.75467 512.5) rotate(180) scale(57.75467)"/><linearGradient id="Obj_Gradient_2" xl:href="#Gradient" gradientTransform="translate(502.75467 512.5) rotate(180) scale(57.75467)"/><linearGradient id="Obj_Gradient_3" xl:href="#Gradient" gradientTransform="translate(502.75467 512.5) rotate(180) scale(57.75467)"/><linearGradient id="Obj_Gradient_4" xl:href="#Gradient" gradientTransform="translate(502.75467 512.5) rotate(180) scale(57.75467)"/><marker orient="auto" overflow="visible" markerUnits="strokeWidth" id="FilledArrow_Marker" viewBox="-1 -4 10 8" markerWidth="10" markerHeight="8" color="black"><g><path d="M 8 0 L 0 -3 L 0 3 Z" fill="currentColor" stroke="currentColor" stroke-width="1"/></g></marker></defs><g stroke="none" stroke-opacity="1" stroke-dasharray="none" fill="none" fill-opacity="1"><title>Canvas 1</title><rect fill="white" width="836" height="2e3"/><g><title>Layer 1</title><rect x="50" y="500" width="445" height="25" fill="#dee1f8"/><rect x="50" y="500" width="445" height="25" stroke="black" stroke-linecap="round" stroke-linejoin="miter" stroke-width="1"/><text transform="translate(55 506.5)" fill="black"><tspan font-family="Helvetica" font-size="10" font-weight="500" x="200.82031" y="10" textLength="33.359375">period1</tspan></text><rect x="445" y="496.1257" width="57.75467" height="32.748597" fill="url(#Obj_Gradient)"/><rect x="445" y="496.1257" width="57.75467" height="32.748597" fill="url(#Obj_Gradient_2)"/><rect x="445" y="496.1257" width="57.75467" height="32.748597" fill="url(#Obj_Gradient_3)"/><rect x="445" y="496.1257" width="57.75467" height="32.748597" fill="url(#Obj_Gradient_4)"/><rect x="50" y="530" width="399" height="25" fill="#c3f9bc"/><rect x="50" y="530" width="399" height="25" stroke="black" stroke-linecap="round" stroke-linejoin="miter" stroke-width="1"/><text transform="translate(55 536.5)" fill="black"><tspan font-family="Helvetica" font-size="10" font-weight="500" x="175.04443" y="10" textLength="38.911133">window1</tspan></text><circle cx="405" cy="542.5" r="5.000008" fill="black"/><circle cx="405" cy="542.5" r="5.000008" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><line x1="50" y1="565" x2="485.1" y2="565" marker-end="url(#FilledArrow_Marker)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="453.41325" y="563.4195" width="29" height="22" fill="white" fill-opacity="0"/><text transform="translate(458.41325 568.4195)" fill="black"><tspan font-family="Helvetica" font-size="10" font-weight="500" x=".05419922" y="10" textLength="18.891602">time</tspan></text></g></g></svg>

After

Width:  |  Height:  |  Size: 3.6 KiB

View File

@ -0,0 +1,3 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xl="http://www.w3.org/1999/xlink" version="1.1" viewBox="38 387 474 108" width="474pt" height="9pc" xmlns:dc="http://purl.org/dc/elements/1.1/"><metadata> Produced by OmniGraffle 6.6.1 <dc:date>2016-08-29 18:21:43 +0000</dc:date></metadata><defs><font-face font-family="Helvetica" font-size="10" units-per-em="1000" underline-position="-75.683594" underline-thickness="49.316406" slope="0" x-height="522.94922" cap-height="717.28516" ascent="770.01953" descent="-229.98047" font-weight="500"><font-face-src><font-face-name name="Helvetica"/></font-face-src></font-face><marker orient="auto" overflow="visible" markerUnits="strokeWidth" id="FilledArrow_Marker" viewBox="-1 -4 10 8" markerWidth="10" markerHeight="8" color="black"><g><path d="M 8 0 L 0 -3 L 0 3 Z" fill="currentColor" stroke="currentColor" stroke-width="1"/></g></marker><linearGradient x1="0" x2="1" id="Gradient" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="white"/><stop offset="1" stop-color="white" stop-opacity="0"/></linearGradient><linearGradient id="Obj_Gradient" xl:href="#Gradient" gradientTransform="translate(502.75467 412.5) rotate(180) scale(57.75467)"/><linearGradient id="Obj_Gradient_2" xl:href="#Gradient" gradientTransform="translate(502.75467 412.5) rotate(180) scale(57.75467)"/><linearGradient id="Obj_Gradient_3" xl:href="#Gradient" gradientTransform="translate(502.75467 412.5) rotate(180) scale(57.75467)"/><linearGradient id="Obj_Gradient_4" xl:href="#Gradient" gradientTransform="translate(502.75467 412.5) rotate(180) scale(57.75467)"/></defs><g stroke="none" stroke-opacity="1" stroke-dasharray="none" fill="none" fill-opacity="1"><title>Canvas 1</title><rect fill="white" width="836" height="2e3"/><g><title>Layer 1</title><rect x="50" y="400" width="445" height="25" fill="#dee1f8"/><rect x="50" y="400" width="445" height="25" stroke="black" stroke-linecap="round" stroke-linejoin="miter" stroke-width="1"/><text transform="translate(55 406.5)" fill="black"><tspan font-family="Helvetica" font-size="10" font-weight="500" x="200.82031" y="10" textLength="33.359375">period1</tspan></text><rect x="214.6568" y="430" width="234.3432" height="25" fill="#c3f9bc"/><rect x="214.6568" y="430" width="234.3432" height="25" stroke="black" stroke-linecap="round" stroke-linejoin="miter" stroke-width="1"/><text transform="translate(219.6568 436.5)" fill="black"><tspan font-family="Helvetica" font-size="10" font-weight="500" x="92.716034" y="10" textLength="38.911133">window1</tspan></text><circle cx="405" cy="442.5" r="5.000008" fill="black"/><circle cx="405" cy="442.5" r="5.000008" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><line x1="50" y1="465" x2="485.1" y2="465" marker-end="url(#FilledArrow_Marker)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="453.41325" y="463.4195" width="29" height="22" fill="white" fill-opacity="0"/><text transform="translate(458.41325 468.4195)" fill="black"><tspan font-family="Helvetica" font-size="10" font-weight="500" x=".05419922" y="10" textLength="18.891602">time</tspan></text><rect x="445" y="396.1257" width="57.75467" height="32.748597" fill="url(#Obj_Gradient)"/><rect x="445" y="396.1257" width="57.75467" height="32.748597" fill="url(#Obj_Gradient_2)"/><rect x="445" y="396.1257" width="57.75467" height="32.748597" fill="url(#Obj_Gradient_3)"/><rect x="445" y="396.1257" width="57.75467" height="32.748597" fill="url(#Obj_Gradient_4)"/></g></g></svg>

After

Width:  |  Height:  |  Size: 3.6 KiB

View File

@ -0,0 +1,3 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xl="http://www.w3.org/1999/xlink" version="1.1" viewBox="38 587 474 108" width="474pt" height="9pc" xmlns:dc="http://purl.org/dc/elements/1.1/"><metadata> Produced by OmniGraffle 6.6.1 <dc:date>2016-08-29 18:21:43 +0000</dc:date></metadata><defs><font-face font-family="Helvetica" font-size="10" units-per-em="1000" underline-position="-75.683594" underline-thickness="49.316406" slope="0" x-height="522.94922" cap-height="717.28516" ascent="770.01953" descent="-229.98047" font-weight="500"><font-face-src><font-face-name name="Helvetica"/></font-face-src></font-face><marker orient="auto" overflow="visible" markerUnits="strokeWidth" id="FilledArrow_Marker" viewBox="-1 -4 10 8" markerWidth="10" markerHeight="8" color="black"><g><path d="M 8 0 L 0 -3 L 0 3 Z" fill="currentColor" stroke="currentColor" stroke-width="1"/></g></marker><linearGradient x1="0" x2="1" id="Gradient" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="white"/><stop offset="1" stop-color="white" stop-opacity="0"/></linearGradient><linearGradient id="Obj_Gradient" xl:href="#Gradient" gradientTransform="translate(502.75467 612.5) rotate(180) scale(57.75467)"/><linearGradient id="Obj_Gradient_2" xl:href="#Gradient" gradientTransform="translate(502.75467 612.5) rotate(180) scale(57.75467)"/><linearGradient id="Obj_Gradient_3" xl:href="#Gradient" gradientTransform="translate(502.75467 612.5) rotate(180) scale(57.75467)"/><linearGradient id="Obj_Gradient_4" xl:href="#Gradient" gradientTransform="translate(502.75467 612.5) rotate(180) scale(57.75467)"/></defs><g stroke="none" stroke-opacity="1" stroke-dasharray="none" fill="none" fill-opacity="1"><title>Canvas 1</title><rect fill="white" width="836" height="2e3"/><g><title>Layer 1</title><rect x="50" y="600" width="296.92033" height="25" fill="#dee1f8"/><rect x="50" y="600" width="296.92033" height="25" stroke="black" stroke-linecap="round" stroke-linejoin="miter" stroke-width="1"/><text transform="translate(55 606.5)" fill="black"><tspan font-family="Helvetica" font-size="10" font-weight="500" x="126.78048" y="10" textLength="33.359375">period1</tspan></text><rect x="347.1864" y="600" width="147.8136" height="25" fill="#dee1f8"/><rect x="347.1864" y="600" width="147.8136" height="25" stroke="black" stroke-linecap="round" stroke-linejoin="miter" stroke-width="1"/><text transform="translate(352.1864 606.5)" fill="black"><tspan font-family="Helvetica" font-size="10" font-weight="500" x="52.227112" y="10" textLength="33.359375">period2</tspan></text><rect x="214.33803" y="630" width="234.66197" height="25" fill="#c3f9bc"/><rect x="214.33803" y="630" width="234.66197" height="25" stroke="black" stroke-linecap="round" stroke-linejoin="miter" stroke-width="1"/><text transform="translate(219.33803 636.5)" fill="black"><tspan font-family="Helvetica" font-size="10" font-weight="500" x="92.87542" y="10" textLength="38.911133">window1</tspan></text><circle cx="405" cy="642.5" r="5.000008" fill="black"/><circle cx="405" cy="642.5" r="5.000008" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><line x1="50" y1="665" x2="485.1" y2="665" marker-end="url(#FilledArrow_Marker)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="453.41325" y="663.4195" width="29" height="22" fill="white" fill-opacity="0"/><text transform="translate(458.41325 668.4195)" fill="black"><tspan font-family="Helvetica" font-size="10" font-weight="500" x=".05419922" y="10" textLength="18.891602">time</tspan></text><rect x="445" y="596.1257" width="57.75467" height="32.748597" fill="url(#Obj_Gradient)"/><rect x="445" y="596.1257" width="57.75467" height="32.748597" fill="url(#Obj_Gradient_2)"/><rect x="445" y="596.1257" width="57.75467" height="32.748597" fill="url(#Obj_Gradient_3)"/><rect x="445" y="596.1257" width="57.75467" height="32.748597" fill="url(#Obj_Gradient_4)"/></g></g></svg>

After

Width:  |  Height:  |  Size: 4.0 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 7.2 KiB

View File

@ -0,0 +1,3 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xl="http://www.w3.org/1999/xlink" version="1.1" viewBox="34 289 473 106" width="473pt" height="106pt" xmlns:dc="http://purl.org/dc/elements/1.1/"><metadata> Produced by OmniGraffle 6.6.1 <dc:date>2016-08-29 18:21:43 +0000</dc:date></metadata><defs><font-face font-family="Helvetica" font-size="10" units-per-em="1000" underline-position="-75.683594" underline-thickness="49.316406" slope="0" x-height="522.94922" cap-height="717.28516" ascent="770.01953" descent="-229.98047" font-weight="500"><font-face-src><font-face-name name="Helvetica"/></font-face-src></font-face><marker orient="auto" overflow="visible" markerUnits="strokeWidth" id="FilledArrow_Marker" viewBox="-1 -4 10 8" markerWidth="10" markerHeight="8" color="black"><g><path d="M 8 0 L 0 -3 L 0 3 Z" fill="currentColor" stroke="currentColor" stroke-width="1"/></g></marker></defs><g stroke="none" stroke-opacity="1" stroke-dasharray="none" fill="none" fill-opacity="1"><title>Canvas 1</title><rect fill="white" width="836" height="2e3"/><g><title>Layer 1</title><rect x="50" y="300" width="148.4428" height="25" fill="#dee1f8"/><rect x="50" y="300" width="148.4428" height="25" stroke="black" stroke-linecap="round" stroke-linejoin="miter" stroke-width="1"/><text transform="translate(55 306.5)" fill="black"><tspan font-family="Helvetica" font-size="10" font-weight="500" x="52.541713" y="10" textLength="33.359375">period1</tspan></text><rect x="50" y="330" width="148.4428" height="25" fill="#c3f9bc"/><rect x="50" y="330" width="148.4428" height="25" stroke="black" stroke-linecap="round" stroke-linejoin="miter" stroke-width="1"/><text transform="translate(55 336.5)" fill="black"><tspan font-family="Helvetica" font-size="10" font-weight="500" x="49.765834" y="10" textLength="38.911133">window1</tspan></text><rect x="198.4428" y="300" width="148.4428" height="25" fill="#dee1f8"/><rect x="198.4428" y="300" width="148.4428" height="25" stroke="black" stroke-linecap="round" stroke-linejoin="miter" stroke-width="1"/><text transform="translate(203.4428 306.5)" fill="black"><tspan font-family="Helvetica" font-size="10" font-weight="500" x="52.541713" y="10" textLength="33.359375">period2</tspan></text><rect x="346.8856" y="300" width="148.4428" height="25" fill="#dde1f7"/><rect x="346.8856" y="300" width="148.4428" height="25" stroke="black" stroke-linecap="round" stroke-linejoin="miter" stroke-width="1"/><text transform="translate(351.8856 306.5)" fill="black"><tspan font-family="Helvetica" font-size="10" font-weight="500" x="52.541713" y="10" textLength="33.359375">period3</tspan></text><rect x="198.4428" y="330" width="148.4428" height="25" fill="#c3f9bc"/><rect x="198.4428" y="330" width="148.4428" height="25" stroke="black" stroke-linecap="round" stroke-linejoin="miter" stroke-width="1"/><text transform="translate(203.4428 336.5)" fill="black"><tspan font-family="Helvetica" font-size="10" font-weight="500" x="49.765834" y="10" textLength="38.911133">window2</tspan></text><rect x="346.8856" y="330" width="148.4428" height="25" fill="#c3f9bc"/><rect x="346.8856" y="330" width="148.4428" height="25" stroke="black" stroke-linecap="round" stroke-linejoin="miter" stroke-width="1"/><text transform="translate(351.8856 336.5)" fill="black"><tspan font-family="Helvetica" font-size="10" font-weight="500" x="49.765834" y="10" textLength="38.911133">window3</tspan></text><line x1="50" y1="365" x2="485.1" y2="365" marker-end="url(#FilledArrow_Marker)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="453.41325" y="363.4195" width="29" height="22" fill="white" fill-opacity="0"/><text transform="translate(458.41325 368.4195)" fill="black"><tspan font-family="Helvetica" font-size="10" font-weight="500" fill="black" x=".05419922" y="10" textLength="18.891602">time</tspan></text><circle cx="50" cy="342.5" r="5.000008" fill="black"/><circle cx="50" cy="342.5" r="5.000008" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><circle cx="198.4428" cy="342.5" r="5.000008" fill="black"/><circle cx="198.4428" cy="342.5" r="5.000008" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><circle cx="346.88559" cy="342.5" r="5.000008" fill="black"/><circle cx="346.88559" cy="342.5" r="5.000008" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/></g></g></svg>

After

Width:  |  Height:  |  Size: 4.5 KiB

View File

@ -0,0 +1,3 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xl="http://www.w3.org/1999/xlink" version="1.1" viewBox="34 189 484 107" width="484pt" height="107pt" xmlns:dc="http://purl.org/dc/elements/1.1/"><metadata> Produced by OmniGraffle 6.6.1 <dc:date>2016-08-29 18:21:43 +0000</dc:date></metadata><defs><font-face font-family="Helvetica" font-size="10" units-per-em="1000" underline-position="-75.683594" underline-thickness="49.316406" slope="0" x-height="522.94922" cap-height="717.28516" ascent="770.01953" descent="-229.98047" font-weight="500"><font-face-src><font-face-name name="Helvetica"/></font-face-src></font-face><marker orient="auto" overflow="visible" markerUnits="strokeWidth" id="FilledArrow_Marker" viewBox="-1 -4 10 8" markerWidth="10" markerHeight="8" color="black"><g><path d="M 8 0 L 0 -3 L 0 3 Z" fill="currentColor" stroke="currentColor" stroke-width="1"/></g></marker></defs><g stroke="none" stroke-opacity="1" stroke-dasharray="none" fill="none" fill-opacity="1"><title>Canvas 1</title><rect fill="white" width="836" height="2e3"/><g><title>Layer 1</title><rect x="50" y="200" width="445" height="25" fill="#dee1f8"/><rect x="50" y="200" width="445" height="25" stroke="black" stroke-linecap="round" stroke-linejoin="miter" stroke-width="1"/><text transform="translate(55 206.5)" fill="black"><tspan font-family="Helvetica" font-size="10" font-weight="500" x="200.82031" y="10" textLength="33.359375">period1</tspan></text><rect x="50" y="230" width="445" height="25" fill="#c3f9bc"/><rect x="50" y="230" width="445" height="25" stroke="black" stroke-linecap="round" stroke-linejoin="miter" stroke-width="1"/><text transform="translate(55 236.5)" fill="black"><tspan font-family="Helvetica" font-size="10" font-weight="500" x="198.04443" y="10" textLength="38.911133">window1</tspan></text><circle cx="50" cy="242.5" r="5.000008" fill="black"/><circle cx="50" cy="242.5" r="5.000008" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><line x1="51" y1="266" x2="486.1" y2="266" marker-end="url(#FilledArrow_Marker)" stroke="black" stroke-linecap="round" stroke-linejoin="round" stroke-width="1"/><rect x="454.41325" y="264.4195" width="29" height="22" fill="white" fill-opacity="0"/><text transform="translate(459.41325 269.4195)" fill="black"><tspan font-family="Helvetica" font-size="10" font-weight="500" x=".05419922" y="10" textLength="18.891602">time</tspan></text></g></g></svg>

After

Width:  |  Height:  |  Size: 2.5 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 6.7 KiB