  | 
  
    USRP Hardware Driver and USRP Manual
    Version: 4.4.0.HEAD-0-g5fac246b
    
   UHD and USRP Manual 
   | 
           
 | 
 
 
 
 
Go to the documentation of this file.
   73 #include <boost/exception/diagnostic_information.hpp> 
   80 UHD_API std::string get_c_global_error_string();
 
   82 UHD_API void set_c_global_error_string(
const std::string &msg);
 
   89 #define UHD_SAFE_C(...) \ 
   91     catch (const uhd::exception &e) { \ 
   92         set_c_global_error_string(e.what()); \ 
   93         return error_from_uhd_exception(&e); \ 
   95     catch (const boost::exception &e) { \ 
   96         set_c_global_error_string(boost::diagnostic_information(e)); \ 
   97         return UHD_ERROR_BOOSTEXCEPT; \ 
   99     catch (const std::exception &e) { \ 
  100         set_c_global_error_string(e.what()); \ 
  101         return UHD_ERROR_STDEXCEPT; \ 
  104         set_c_global_error_string("Unrecognized exception caught."); \ 
  105         return UHD_ERROR_UNKNOWN; \ 
  107     set_c_global_error_string("None"); \ 
  108     return UHD_ERROR_NONE; 
  115 #define UHD_SAFE_C_SAVE_ERROR(h, ...) \ 
  116     h->last_error.clear(); \ 
  118     catch (const uhd::exception &e) { \ 
  119         set_c_global_error_string(e.what()); \ 
  120         h->last_error = e.what(); \ 
  121         return error_from_uhd_exception(&e); \ 
  123     catch (const boost::exception &e) { \ 
  124         set_c_global_error_string(boost::diagnostic_information(e)); \ 
  125         h->last_error = boost::diagnostic_information(e); \ 
  126         return UHD_ERROR_BOOSTEXCEPT; \ 
  128     catch (const std::exception &e) { \ 
  129         set_c_global_error_string(e.what()); \ 
  130         h->last_error = e.what(); \ 
  131         return UHD_ERROR_STDEXCEPT; \ 
  134         set_c_global_error_string("Unrecognized exception caught."); \ 
  135         h->last_error = "Unrecognized exception caught."; \ 
  136         return UHD_ERROR_UNKNOWN; \ 
  138     h->last_error = "None"; \ 
  139     set_c_global_error_string("None"); \ 
  140     return UHD_ERROR_NONE; 
  
 
@ UHD_ERROR_SYSTEM
See uhd::system_error.
Definition: error.h:55
 
@ UHD_ERROR_ASSERTION
See uhd::assertion_error.
Definition: error.h:43
 
@ UHD_ERROR_EXCEPT
See uhd::exception.
Definition: error.h:57
 
@ UHD_ERROR_UNKNOWN
An unknown error was thrown.
Definition: error.h:66
 
Definition: exception.hpp:35
 
@ UHD_ERROR_RUNTIME
See uhd::runtime_error.
Definition: error.h:51
 
uhd_error
UHD error codes.
Definition: error.h:20
 
UHD_API uhd_error uhd_get_last_error(char *error_out, size_t strbuffer_len)
Return the last error string reported by UHD.
 
@ UHD_ERROR_OS
See uhd::os_error.
Definition: error.h:40
 
@ UHD_ERROR_LOOKUP
See uhd::lookup_error.
Definition: error.h:45
 
@ UHD_ERROR_ENVIRONMENT
See uhd::environment_error.
Definition: error.h:53
 
@ UHD_ERROR_IO
See uhd::io_error.
Definition: error.h:38
 
@ UHD_ERROR_BOOSTEXCEPT
A boost::exception was thrown.
Definition: error.h:60
 
#define UHD_API
Definition: config.h:87
 
@ UHD_ERROR_NONE
No error thrown.
Definition: error.h:23
 
@ UHD_ERROR_VALUE
See uhd::value_error.
Definition: error.h:49
 
@ UHD_ERROR_KEY
See uhd::key_error.
Definition: error.h:30
 
@ UHD_ERROR_USB
See uhd::usb_error.
Definition: error.h:35
 
@ UHD_ERROR_INDEX
See uhd::index_error.
Definition: error.h:28
 
@ UHD_ERROR_NOT_IMPLEMENTED
See uhd::not_implemented_error.
Definition: error.h:33
 
@ UHD_ERROR_TYPE
See uhd::type_error.
Definition: error.h:47
 
@ UHD_ERROR_STDEXCEPT
A std::exception was thrown.
Definition: error.h:63
 
@ UHD_ERROR_INVALID_DEVICE
Invalid device arguments.
Definition: error.h:25