diff options
| author | Josh Blum <josh@joshknows.com> | 2010-04-01 16:37:25 -0700 | 
|---|---|---|
| committer | Josh Blum <josh@joshknows.com> | 2010-04-01 16:37:25 -0700 | 
| commit | f1f4865119605c66ffece113a621308d82512d23 (patch) | |
| tree | 19b707c5146931ac0799e4d8f136bb414ac04dd9 /host | |
| parent | 54e8b566f6d1efecfd5fdc2c14bb287fd551089e (diff) | |
| download | uhd-f1f4865119605c66ffece113a621308d82512d23.tar.gz uhd-f1f4865119605c66ffece113a621308d82512d23.tar.bz2 uhd-f1f4865119605c66ffece113a621308d82512d23.zip | |
hardcoded values for enum props, added clock get/set for simple usrp
Diffstat (limited to 'host')
| -rw-r--r-- | host/include/uhd/usrp/dboard_props.hpp | 8 | ||||
| -rw-r--r-- | host/include/uhd/usrp/device_props.hpp | 10 | ||||
| -rw-r--r-- | host/include/uhd/usrp/dsp_props.hpp | 4 | ||||
| -rw-r--r-- | host/include/uhd/usrp/mboard_props.hpp | 28 | ||||
| -rw-r--r-- | host/include/uhd/usrp/simple_usrp.hpp | 9 | ||||
| -rw-r--r-- | host/include/uhd/usrp/subdev_props.hpp | 28 | ||||
| -rw-r--r-- | host/lib/usrp/simple_usrp.cpp | 17 | 
7 files changed, 54 insertions, 50 deletions
| diff --git a/host/include/uhd/usrp/dboard_props.hpp b/host/include/uhd/usrp/dboard_props.hpp index 08c4eef6a..3b290319f 100644 --- a/host/include/uhd/usrp/dboard_props.hpp +++ b/host/include/uhd/usrp/dboard_props.hpp @@ -26,10 +26,10 @@ namespace uhd{ namespace usrp{       * Possible device dboard properties       */      enum dboard_prop_t{ -        DBOARD_PROP_NAME,              //ro, std::string -        DBOARD_PROP_SUBDEV,            //ro, wax::obj -        DBOARD_PROP_SUBDEV_NAMES,      //ro, prop_names_t -        DBOARD_PROP_USED_SUBDEVS       //ro, prop_names_t +        DBOARD_PROP_NAME         = 'n', //ro, std::string +        DBOARD_PROP_SUBDEV       = 's', //ro, wax::obj +        DBOARD_PROP_SUBDEV_NAMES = 'S', //ro, prop_names_t +        DBOARD_PROP_USED_SUBDEVS = 'u'  //ro, prop_names_t          //DBOARD_PROP_CODEC              //ro, wax::obj //----> not sure, dont have to deal with yet      };  diff --git a/host/include/uhd/usrp/device_props.hpp b/host/include/uhd/usrp/device_props.hpp index dcfa26240..b8f6f5cd4 100644 --- a/host/include/uhd/usrp/device_props.hpp +++ b/host/include/uhd/usrp/device_props.hpp @@ -29,11 +29,11 @@ namespace uhd{ namespace usrp{       *   will be present in the interface for configuration.       */      enum device_prop_t{ -        DEVICE_PROP_NAME,              //ro, std::string -        DEVICE_PROP_MBOARD,            //ro, wax::obj -        DEVICE_PROP_MBOARD_NAMES,      //ro, prop_names_t -        DEVICE_PROP_MAX_RX_SAMPLES,    //ro, size_t -        DEVICE_PROP_MAX_TX_SAMPLES     //ro, size_t +        DEVICE_PROP_NAME           = 'n', //ro, std::string +        DEVICE_PROP_MBOARD         = 'm', //ro, wax::obj +        DEVICE_PROP_MBOARD_NAMES   = 'M', //ro, prop_names_t +        DEVICE_PROP_MAX_RX_SAMPLES = 'r', //ro, size_t +        DEVICE_PROP_MAX_TX_SAMPLES = 't'  //ro, size_t      };      //////////////////////////////////////////////////////////////////////// diff --git a/host/include/uhd/usrp/dsp_props.hpp b/host/include/uhd/usrp/dsp_props.hpp index ef3f771df..60c0df942 100644 --- a/host/include/uhd/usrp/dsp_props.hpp +++ b/host/include/uhd/usrp/dsp_props.hpp @@ -31,8 +31,8 @@ namespace uhd{ namespace usrp{       *   and a property to get list of other possible properties.       */      enum dsp_prop_t{ -        DSP_PROP_NAME,                 //ro, std::string -        DSP_PROP_OTHERS                //ro, prop_names_t +        DSP_PROP_NAME   = 'n', //ro, std::string +        DSP_PROP_OTHERS = 'o'  //ro, prop_names_t      };  }} //namespace diff --git a/host/include/uhd/usrp/mboard_props.hpp b/host/include/uhd/usrp/mboard_props.hpp index ddb95ef0d..cfc1f412e 100644 --- a/host/include/uhd/usrp/mboard_props.hpp +++ b/host/include/uhd/usrp/mboard_props.hpp @@ -29,20 +29,20 @@ namespace uhd{ namespace usrp{       *   and discovered though the others property.       */      enum mboard_prop_t{ -        MBOARD_PROP_NAME,              //ro, std::string -        MBOARD_PROP_OTHERS,            //ro, prop_names_t -        MBOARD_PROP_CLOCK_RATE,        //ro, double -        MBOARD_PROP_RX_DSP,            //ro, wax::obj -        MBOARD_PROP_RX_DSP_NAMES,      //ro, prop_names_t -        MBOARD_PROP_TX_DSP,            //ro, wax::obj -        MBOARD_PROP_TX_DSP_NAMES,      //ro, prop_names_t -        MBOARD_PROP_RX_DBOARD,         //ro, wax::obj -        MBOARD_PROP_RX_DBOARD_NAMES,   //ro, prop_names_t -        MBOARD_PROP_TX_DBOARD,         //ro, wax::obj -        MBOARD_PROP_TX_DBOARD_NAMES,   //ro, prop_names_t -        MBOARD_PROP_CLOCK_CONFIG,      //rw, clock_config_t -        MBOARD_PROP_TIME_NOW,          //wo, time_spec_t -        MBOARD_PROP_TIME_NEXT_PPS      //wo, time_spec_t +        MBOARD_PROP_NAME            = 'n', //ro, std::string +        MBOARD_PROP_OTHERS          = 'o', //ro, prop_names_t +        MBOARD_PROP_CLOCK_RATE      = 'c', //ro, double +        MBOARD_PROP_RX_DSP          = 'd', //ro, wax::obj +        MBOARD_PROP_RX_DSP_NAMES    = 'D', //ro, prop_names_t +        MBOARD_PROP_TX_DSP          = 'u', //ro, wax::obj +        MBOARD_PROP_TX_DSP_NAMES    = 'U', //ro, prop_names_t +        MBOARD_PROP_RX_DBOARD       = 'e', //ro, wax::obj +        MBOARD_PROP_RX_DBOARD_NAMES = 'E', //ro, prop_names_t +        MBOARD_PROP_TX_DBOARD       = 'v', //ro, wax::obj +        MBOARD_PROP_TX_DBOARD_NAMES = 'V', //ro, prop_names_t +        MBOARD_PROP_CLOCK_CONFIG    = 'C', //rw, clock_config_t +        MBOARD_PROP_TIME_NOW        = 't', //wo, time_spec_t +        MBOARD_PROP_TIME_NEXT_PPS   = 'T'  //wo, time_spec_t      };  }} //namespace diff --git a/host/include/uhd/usrp/simple_usrp.hpp b/host/include/uhd/usrp/simple_usrp.hpp index dea1cabda..2d6ad2a0f 100644 --- a/host/include/uhd/usrp/simple_usrp.hpp +++ b/host/include/uhd/usrp/simple_usrp.hpp @@ -22,6 +22,7 @@  #include <uhd/device.hpp>  #include <uhd/types/ranges.hpp>  #include <uhd/types/stream_cmd.hpp> +#include <uhd/types/clock_config.hpp>  #include <uhd/types/tune_result.hpp>  #include <boost/shared_ptr.hpp>  #include <boost/utility.hpp> @@ -45,15 +46,13 @@ public:      virtual std::string get_name(void) = 0;      /******************************************************************* -     * Timing +     * Misc       ******************************************************************/      virtual void set_time_now(const time_spec_t &time_spec) = 0;      virtual void set_time_next_pps(const time_spec_t &time_spec) = 0; - -    /******************************************************************* -     * Streaming -     ******************************************************************/      virtual void issue_stream_cmd(const stream_cmd_t &stream_cmd) = 0; +    virtual void set_clock_config(const clock_config_t &clock_config) = 0; +    virtual double get_clock_rate(void) = 0;      /*******************************************************************       * RX methods diff --git a/host/include/uhd/usrp/subdev_props.hpp b/host/include/uhd/usrp/subdev_props.hpp index 667f34f9c..92d18340b 100644 --- a/host/include/uhd/usrp/subdev_props.hpp +++ b/host/include/uhd/usrp/subdev_props.hpp @@ -26,20 +26,20 @@ namespace uhd{ namespace usrp{       * Possible device subdev properties       */      enum subdev_prop_t{ -        SUBDEV_PROP_NAME,              //ro, std::string -        SUBDEV_PROP_OTHERS,            //ro, prop_names_t -        SUBDEV_PROP_GAIN,              //rw, float -        SUBDEV_PROP_GAIN_RANGE,        //ro, gain_range_t -        SUBDEV_PROP_GAIN_NAMES,        //ro, prop_names_t -        SUBDEV_PROP_FREQ,              //rw, double -        SUBDEV_PROP_FREQ_RANGE,        //ro, freq_range_t -        SUBDEV_PROP_ANTENNA,           //rw, std::string -        SUBDEV_PROP_ANTENNA_NAMES,     //ro, prop_names_t -        SUBDEV_PROP_ENABLED,           //rw, bool -        SUBDEV_PROP_QUADRATURE,        //ro, bool -        SUBDEV_PROP_IQ_SWAPPED,        //ro, bool -        SUBDEV_PROP_SPECTRUM_INVERTED, //ro, bool -        SUBDEV_PROP_LO_INTERFERES      //ro, bool +        SUBDEV_PROP_NAME              = 'n', //ro, std::string +        SUBDEV_PROP_OTHERS            = 'o', //ro, prop_names_t +        SUBDEV_PROP_GAIN              = 'g', //rw, float +        SUBDEV_PROP_GAIN_RANGE        = 'r', //ro, gain_range_t +        SUBDEV_PROP_GAIN_NAMES        = 'G', //ro, prop_names_t +        SUBDEV_PROP_FREQ              = 'f', //rw, double +        SUBDEV_PROP_FREQ_RANGE        = 'F', //ro, freq_range_t +        SUBDEV_PROP_ANTENNA           = 'a', //rw, std::string +        SUBDEV_PROP_ANTENNA_NAMES     = 'A', //ro, prop_names_t +        SUBDEV_PROP_ENABLED           = 'e', //rw, bool +        SUBDEV_PROP_QUADRATURE        = 'q', //ro, bool +        SUBDEV_PROP_IQ_SWAPPED        = 'i', //ro, bool +        SUBDEV_PROP_SPECTRUM_INVERTED = 's', //ro, bool +        SUBDEV_PROP_LO_INTERFERES     = 'l'  //ro, bool          //SUBDEV_PROP_RSSI,              //ro, float //----> not on all boards, use named prop          //SUBDEV_PROP_BANDWIDTH          //rw, double //----> not on all boards, use named prop      }; diff --git a/host/lib/usrp/simple_usrp.cpp b/host/lib/usrp/simple_usrp.cpp index 4bd47dc3f..a0551a630 100644 --- a/host/lib/usrp/simple_usrp.cpp +++ b/host/lib/usrp/simple_usrp.cpp @@ -75,7 +75,7 @@ public:      }      /******************************************************************* -     * Timing +     * Misc       ******************************************************************/      void set_time_now(const time_spec_t &time_spec){          _mboard[MBOARD_PROP_TIME_NOW] = time_spec; @@ -85,13 +85,18 @@ public:          _mboard[MBOARD_PROP_TIME_NEXT_PPS] = time_spec;      } -    /******************************************************************* -     * Streaming -     ******************************************************************/      void issue_stream_cmd(const stream_cmd_t &stream_cmd){          _rx_ddc[std::string("stream_cmd")] = stream_cmd;      } +    void set_clock_config(const clock_config_t &clock_config){ +        _mboard[MBOARD_PROP_CLOCK_CONFIG] = clock_config; +    } + +    double get_clock_rate(void){ +        return _mboard[MBOARD_PROP_CLOCK_RATE].as<double>(); +    } +      /*******************************************************************       * RX methods       ******************************************************************/ @@ -138,7 +143,7 @@ public:      }      std::vector<std::string> get_rx_antennas(void){ -        return _rx_subdev[SUBDEV_PROP_ANTENNA_NAMES].as<std::vector<std::string> >(); +        return _rx_subdev[SUBDEV_PROP_ANTENNA_NAMES].as<prop_names_t>();      }      /******************************************************************* @@ -187,7 +192,7 @@ public:      }      std::vector<std::string> get_tx_antennas(void){ -        return _tx_subdev[SUBDEV_PROP_ANTENNA_NAMES].as<std::vector<std::string> >(); +        return _tx_subdev[SUBDEV_PROP_ANTENNA_NAMES].as<prop_names_t>();      }  private: | 
