diff options
| author | Carl Hetherington <cth@carlh.net> | 2018-08-19 01:27:48 +0100 |
|---|---|---|
| committer | Carl Hetherington <cth@carlh.net> | 2018-08-19 01:29:04 +0100 |
| commit | 67c604d3fa2391b98ea436e2c6412f1c83a98f77 (patch) | |
| tree | f95b3c57422dc516e7e70071d12a94bf16de5514 /doc/design | |
| parent | 6c7489e5d778d3e71065d88a094a7383ba2c117d (diff) | |
Basic docs.
Diffstat (limited to 'doc/design')
| -rw-r--r-- | doc/design/change_during_play.tex | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/doc/design/change_during_play.tex b/doc/design/change_during_play.tex new file mode 100644 index 000000000..28451e961 --- /dev/null +++ b/doc/design/change_during_play.tex @@ -0,0 +1,23 @@ +\documentclass{article} +\begin{document} + +If the data which the player relies on changes, the player must \texttt{setup\_pieces()} before it \texttt{pass()}es otherwise it may crash. + +I think there are two approaches to this: + +\begin{enumerate} + +\item Playlist signals that it is going to change; player and +butler respond by suspending themselves (so they don't touch the `bad' +playlist), playlist signals when the change has been made and +\texttt{setup\_pieces()} has happened. Player and butler resume. + +\item There is some RCU system so that changes to the playlist happen in a copy +which is made into the `current' version at a convenient time to the +player/butler. This seems a bit tricky because the player's output also +depends on the state of \texttt{Film}, so it seems that the copy would need to +include the film's state (and possibly other bits). + +\end{enumerate} + +\end{document} |
