2022-10-31 Fred Gleason <fredg@paravelsystems.com>

* Refactored rdcatch(1) to use the notification mechanism instead of
	the 'StopDeck' catch command.

Signed-off-by: Fred Gleason <fredg@paravelsystems.com>
This commit is contained in:
Fred Gleason
2022-10-31 11:49:29 -04:00
parent 47cf0d34e4
commit eb060e37c9
12 changed files with 191 additions and 181 deletions

View File

@@ -371,7 +371,7 @@
RDCatch messages use the following format:
</para>
<para>
CATCH <replaceable choice='req'>hostname</replaceable>
CATCH <replaceable choice='req'>orig-hostname</replaceable>
<replaceable choice='req'>operation</replaceable>
<replaceable choice='req'>arg1</replaceable>
<replaceable choice='opt'>[...]</replaceable>
@@ -379,7 +379,7 @@
<variablelist>
<varlistentry>
<term>
<replaceable>hostname</replaceable>
<replaceable>orig-hostname</replaceable>
</term>
<listitem>
<para>
@@ -407,24 +407,34 @@
</para>
<table xml:id="table.rdcatch_event_processed" frame="all" pgwide="0">
<title>RDCatch Event Fields</title>
<tgroup cols="2" align="left" colsep="1" rowsep="1">
<colspec colname="Field" colwidth="2.0*"/>
<colspec colname="Value" colwidth="2.0*"/>
<tgroup cols="3" align="left" colsep="1" rowsep="1">
<colspec colname="Field" colwidth="10.0*"/>
<colspec colname="Offset" colwidth="2.0*"/>
<colspec colname="Value" colwidth="10.0*"/>
<tbody>
<row>
<entry>Field</entry>
<entry>Offset</entry>
<entry>Value</entry>
</row>
<row>
<entry>Hostname</entry>
<entry>Keyword</entry>
<entry>0</entry>
<entry>CATCH</entry>
</row>
<row>
<entry>Originating Hostname</entry>
<entry>1</entry>
<entry>String, from STATIONS.NAME</entry>
</row>
<row>
<entry>Operation</entry>
<entry>2</entry>
<entry>Integer. 1 [RDCatchEvent::DeckEventProcessedOp]</entry>
</row>
<row>
<entry>Deck Channel</entry>
<entry>3</entry>
<entry>
Integer. Record decks have values in the range 1-127,
while play decks have values in the range 128-254.
@@ -432,8 +442,9 @@
</row>
<row>
<entry>Event Number</entry>
<entry>4</entry>
<entry>
Integer. The value of CUT_EVENTS.NUMBER.
Integer. The value of CUT_EVENTS.NUMBER.
</entry>
</row>
</tbody>
@@ -449,20 +460,29 @@
</para>
<table xml:id="table.rdcatch_deck_status.request" frame="all" pgwide="0">
<title>RDCatch Event Request Fields</title>
<tgroup cols="2" align="left" colsep="1" rowsep="1">
<colspec colname="Field" colwidth="2.0*"/>
<colspec colname="Value" colwidth="2.0*"/>
<tgroup cols="3" align="left" colsep="1" rowsep="1">
<colspec colname="Field" colwidth="10.0*"/>
<colspec colname="Offset" colwidth="2.0*"/>
<colspec colname="Value" colwidth="10.0*"/>
<tbody>
<row>
<entry>Field</entry>
<entry>Offset</entry>
<entry>Value</entry>
</row>
<row>
<entry>Hostname</entry>
<entry>Keyword</entry>
<entry>0</entry>
<entry>CATCH</entry>
</row>
<row>
<entry>Originating Hostname</entry>
<entry>1</entry>
<entry>String, from STATIONS.NAME</entry>
</row>
<row>
<entry>Operation</entry>
<entry>2</entry>
<entry>Integer. 2 [RDCatchEvent::DeckStatusQueryOp]</entry>
</row>
</tbody>
@@ -476,24 +496,34 @@
</para>
<table xml:id="table.rdcatch_deck_status.response" frame="all" pgwide="0">
<title>RDCatch Event Response Fields</title>
<tgroup cols="2" align="left" colsep="1" rowsep="1">
<colspec colname="Field" colwidth="2.0*"/>
<colspec colname="Value" colwidth="2.0*"/>
<tgroup cols="3" align="left" colsep="1" rowsep="1">
<colspec colname="Field" colwidth="10.0*"/>
<colspec colname="Offset" colwidth="2.0*"/>
<colspec colname="Value" colwidth="10.0*"/>
<tbody>
<row>
<entry>Field</entry>
<entry>Offset</entry>
<entry>Value</entry>
</row>
<row>
<entry>Hostname</entry>
<entry>Keyword</entry>
<entry>0</entry>
<entry>CATCH</entry>
</row>
<row>
<entry>Originating Hostname</entry>
<entry>1</entry>
<entry>String, from STATIONS.NAME</entry>
</row>
<row>
<entry>Operation</entry>
<entry>2</entry>
<entry>Integer. 3 [RDCatchEvent::DeckStatusResponseOp]</entry>
</row>
<row>
<entry>Deck Channel</entry>
<entry>3</entry>
<entry>
Integer. Record decks have values in the range 1-127,
while play decks have values in the range 128-254.
@@ -501,27 +531,31 @@
</row>
<row>
<entry>Status</entry>
<entry>4</entry>
<entry>
Integer. Current status of the specified deck. See
<xref linkend="sect.rdcatch_deck_status.deck_status_codes" />
for code point values.
Integer. Current status of the specified deck. See
<xref linkend="sect.rdcatch_deck_status.deck_status_codes" />
for code point values.
</entry>
</row>
<row>
<entry>Event ID</entry>
<entry>5</entry>
<entry>
Unsigned Integer, from RECORDINGS.ID or 0 if deck is inactive.
Unsigned Integer, from RECORDINGS.ID or 0 if deck is inactive.
</entry>
</row>
<row>
<entry>Cart Number</entry>
<entry>6</entry>
<entry>
Unsigned Integer, from CART.NUMBER or 0 if deck status is not
3 [Active].
Unsigned Integer, from CART.NUMBER or 0 if deck status is not
3 [Active].
</entry>
</row>
<row>
<entry>Cut Number</entry>
<entry>7</entry>
<entry>
Integer, from cut part of CUTS.CUTNAME or 0 if deck status is
not 3 [Active].
@@ -578,6 +612,57 @@
</sect3>
</sect2>
<sect2 xml:id="sect.rdcatch_stop_deck">
<title>Stop Deck Operation</title>
<para>
Emitted by <command>rdcatch</command><manvolnum>1</manvolnum> to
abort a Record or Play-out event.
</para>
<table xml:id="table.rdcatch_stop_deck" frame="all" pgwide="0">
<title>RDCatch Stop Deck Fields</title>
<tgroup cols="3" align="left" colsep="1" rowsep="1">
<colspec colname="Field" colwidth="10.0*"/>
<colspec colname="Offset" colwidth="2.0*"/>
<colspec colname="Value" colwidth="10.0*"/>
<tbody>
<row>
<entry>Field</entry>
<entry>Offset</entry>
<entry>Value</entry>
</row>
<row>
<entry>Keyword</entry>
<entry>0</entry>
<entry>CATCH</entry>
</row>
<row>
<entry>Originating Hostname</entry>
<entry>1</entry>
<entry>String, from STATIONS.NAME</entry>
</row>
<row>
<entry>Operation</entry>
<entry>2</entry>
<entry>Integer. 1 [RDCatchEvent::StopDeckOp]</entry>
</row>
<row>
<entry>Target Hostname</entry>
<entry>3</entry>
<entry>String, from STATIONS.NAME</entry>
</row>
<row>
<entry>Deck Channel</entry>
<entry>4</entry>
<entry>
Integer. Record decks have values in the range 1-127,
while play decks have values in the range 128-254.
</entry>
</row>
</tbody>
</tgroup>
</table>
</sect2>
</sect1>
</article>