summaryrefslogtreecommitdiffstats
path: root/ds9/parsers/cubesendparser.tac
diff options
context:
space:
mode:
Diffstat (limited to 'ds9/parsers/cubesendparser.tac')
-rw-r--r--ds9/parsers/cubesendparser.tac36
1 files changed, 36 insertions, 0 deletions
diff --git a/ds9/parsers/cubesendparser.tac b/ds9/parsers/cubesendparser.tac
new file mode 100644
index 0000000..70cfb3e
--- /dev/null
+++ b/ds9/parsers/cubesendparser.tac
@@ -0,0 +1,36 @@
+%{
+%}
+
+#include string.tin
+
+%start cubesend
+
+%token AXIS_
+%token AXES_
+%token INTERVAL_
+%token LOCK_
+%token ORDER_
+
+%%
+
+cubesend : {global cube; ProcessSendCmdCurrent frame "get fits slice $cube(axis)"}
+ | LOCK_ {ProcessSendCmdGet cube lock}
+ | INTERVAL_ {CubeSendCmdInterval}
+ | AXIS_ {ProcessSendCmdGet cube axis}
+ | AXES_ order
+ | ORDER_ order
+ ;
+
+order : {ProcessSendCmdGet cube axes}
+ | LOCK_ {ProcessSendCmdYesNo cube lock,axes}
+ ;
+
+%%
+
+proc cubesend::yyerror {msg} {
+ variable yycnt
+ variable yy_current_buffer
+ variable index_
+
+ ParserError $msg $yycnt $yy_current_buffer $index_
+}