Convert gr-audio-portaudio to Boost via gruel
[debian/gnuradio] / usrp / limbo / inband / usrp_interface.mbh
1 ;; -*- scheme -*- ; not really, but tells emacs how to format this
2 ;;
3 ;; Copyright 2007 Free Software Foundation, Inc.
4 ;; 
5 ;; This file is part of GNU Radio
6 ;; 
7 ;; GNU Radio is free software; you can redistribute it and/or modify
8 ;; it under the terms of the GNU General Public License as published by
9 ;; the Free Software Foundation; either version 2, or (at your option)
10 ;; any later version.
11 ;; 
12 ;; GNU Radio is distributed in the hope that it will be useful,
13 ;; but WITHOUT ANY WARRANTY; without even the implied warranty of
14 ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15 ;; GNU General Public License for more details.
16 ;; 
17 ;; You should have received a copy of the GNU General Public License along
18 ;; with this program; if not, write to the Free Software Foundation, Inc.,
19 ;; 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
20 ;;
21
22 ;; ----------------------------------------------------------------
23 ;;              This is an mblock header file
24 ;;
25 ;; The format is very much a work-in-progress.
26 ;; It'll be compiled to C++.
27 ;; ----------------------------------------------------------------
28
29 ;; ----------------------------------------------------------------
30 ;; usrp-interface-cs
31 ;;
32 ;; Handles interaction between the usrp_sever and the USB interface
33
34 (define-protocol-class usrp-interface-cs
35
36   (:outgoing
37    (cmd-usrp-open invocation-handle which-usrp)
38    (cmd-usrp-close invocation-handle)
39    (cmd-usrp-ntx-chan invocation-handle)
40    (cmd-usrp-nrx-chan invocation-handle)
41    (cmd-usrp-write invocation-handle channel data)
42    (cmd-usrp-start-reading invocation-handle channel)
43    )
44
45   (:incoming
46    (response-usrp-open invocation-handle status)
47    (response-usrp-close invocation-handle status)
48    (response-usrp-ntx-chan invocation-handle ntx-chan)
49    (response-usrp-nrx-chan invocation-handle nrx-chan)
50    (response-usrp-write invocation-handle status channel)
51    (response-usrp-read invocation-handle status data)
52    )
53   )
54
55 ;; ----------------------------------------------------------------
56 ;; usrp-tx-cs
57 ;;
58 ;; Handles interaction between the USB interface and TX interface
59
60 (define-protocol-class usrp-tx-cs
61
62   (:outgoing
63    (cmd-usrp-tx-write invocation-handle channel data tx-handle)
64    )
65
66   (:incoming
67    (response-usrp-tx-write invocation-handle status channel)
68    )
69   )
70
71 ;; ----------------------------------------------------------------
72 ;; usrp-rx-cs
73 ;;
74 ;; Handles interaction between the USB interface and RX interface
75
76 (define-protocol-class usrp-rx-cs
77
78   (:outgoing
79    (cmd-usrp-rx-start-reading invocation-handle rx-handle)
80    (cmd-usrp-rx-stop-reading invocation-handle)
81    )
82
83   (:incoming
84    (response-usrp-rx-read invocation-handle status data)
85
86    ;; There is currently no response to a stop reading
87    )
88   )