Imported Upstream version 3.2.2
[debian/gnuradio] / usrp / host / lib / legacy / usrp_subdev_spec.h
1 /* -*- c++ -*- */
2 /*
3  * Copyright 2008 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 3, 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 #ifndef INCLUDED_USRP_SUBDEV_SPEC_H
23 #define INCLUDED_USRP_SUBDEV_SPEC_H
24
25 /*!
26  * \brief specify a daughterboard and subdevice on a daughterboard.
27  *
28  * In the USRP1, there are two sides, A and B.
29  *
30  * A daughterboard generally implements a single subdevice, but may in
31  * general implement any number of subdevices.  At this time, all daughterboards
32  * with the exception of the Basic Rx and LF Rx implement a single subdevice.
33  *
34  * The Basic Rx and LF Rx implement 2 subdevices (soon 3).  Subdevice
35  * 0 routes input RX-A to the DDC I input and routes a constant zero
36  * to the DDC Q input.  Similarly, subdevice 1 routes input RX-B to
37  * the DDC I input and routes a constant zero to the DDC Q
38  * input.  Subdevice 2 (when implemented) will route RX-A to the DDC I
39  * input and RX-B to the DDC Q input.
40  */
41
42 struct usrp_subdev_spec {
43   unsigned int  side;           // 0 -> A; 1 -> B
44   unsigned int  subdev;         // which subdevice (usually zero)
45
46   usrp_subdev_spec(unsigned int _side = 0, unsigned int _subdev = 0)
47     : side(_side), subdev(_subdev) {}
48 };
49
50 #endif /* INCLUDED_USRP_SUBDEV_SPEC_H */