18 #ifndef INCLUDED_UHD_TYPES_SID_HPP    19 #define INCLUDED_UHD_TYPES_SID_HPP    22 #include <boost/cstdint.hpp>    23 #include <boost/shared_ptr.hpp>    85         sid_t(boost::uint32_t sid);
    87         sid_t(boost::uint8_t src_addr, boost::uint8_t src_ep, boost::uint8_t dst_addr, boost::uint8_t dst_ep);
    89         sid_t(
const std::string &);
    92         std::string to_pp_string() 
const;
    94         std::string to_pp_string_hex() 
const;
    97         bool is_set()
 const { 
return _set; };
   102         UHD_INLINE boost::uint32_t 
get() 
const { 
return get_sid(); };
   107             return (_sid >> 16) & 0xFFFF;
   111             return _sid & 0xFFFF;
   115             return (get_src() >> 8) & 0xFF;
   119             return get_src() & 0xFF;
   123             return (get_src_endpoint() >> 4) & 0xF;
   127             return (get_src_endpoint()) & 0xF;
   131             return (get_dst() >> 8) & 0xFF;
   135             return get_dst() & 0xFF;
   139             return (get_dst_endpoint() >> 4) & 0xF;
   143             return (get_dst_endpoint()) & 0xF;
   149         void set(boost::uint32_t new_sid) { set_sid(new_sid); };
   153         void set_from_str(
const std::string &);
   154         void set_sid(boost::uint32_t new_sid);
   157         void set_src(boost::uint32_t new_addr);
   160         void set_dst(boost::uint32_t new_addr);
   161         void set_src_addr(boost::uint32_t new_addr);
   162         void set_src_endpoint(boost::uint32_t new_addr);
   163         void set_dst_addr(boost::uint32_t new_addr);
   164         void set_dst_endpoint(boost::uint32_t new_addr);
   165         void set_dst_xbarport(boost::uint32_t new_xbarport);
   166         void set_dst_blockport(boost::uint32_t new_blockport);
   178         sid_t operator = (boost::uint32_t new_sid) {
   188         sid_t operator = (
const std::string &sid_str) {
   189             set_from_str(sid_str);
   194             return (not _set and not sid.
is_set()) or (_sid == sid.
get_sid());
   198             return _set and _sid == sid;
   211         operator boost::uint32_t()
 const {
   215         operator bool()
 const {
   220         boost::uint32_t _sid;
   226         std::ios_base::fmtflags ff = out.flags();
   227         if (ff & std::ios::hex) {
 UHD_INLINE boost::uint32_t get_dst_blockport() const
Return block port of the source. 
Definition: sid.hpp:142
 
UHD_INLINE boost::uint32_t get_src() const
Return the 16-bit source address of this SID. 
Definition: sid.hpp:106
 
UHD_INLINE boost::uint32_t get_src_addr() const
Return 8-bit address of the source. 
Definition: sid.hpp:114
 
UHD_INLINE boost::uint32_t get_dst() const
Return the 16-bit destination address of this SID. 
Definition: sid.hpp:110
 
UHD_INLINE boost::uint32_t get_src_endpoint() const
Return endpoint of the source. 
Definition: sid.hpp:118
 
Range reversed(const Range &range)
Definition: algorithm.hpp:56
 
UHD_INLINE boost::uint32_t get_dst_addr() const
Return 8-bit address of the destination. 
Definition: sid.hpp:130
 
Definition: convert.hpp:28
 
std::string to_pp_string() const
Return a decimal string representation of the SID. 
 
Represents a stream ID (SID). 
Definition: sid.hpp:79
 
UHD_INLINE boost::uint32_t get_src_blockport() const
Return block port of the source. 
Definition: sid.hpp:126
 
UHD_INLINE boost::uint32_t get_dst_endpoint() const
Return endpoint of the destination. 
Definition: sid.hpp:134
 
#define UHD_INLINE
Definition: config.h:56
 
UHD_INLINE boost::uint32_t get_src_xbarport() const
Return crossbar port of the source. 
Definition: sid.hpp:122
 
#define UHD_API
Definition: config.h:66
 
UHD_INLINE boost::uint32_t get_sid() const
Returns a 32-Bit representation of the SID if set, or zero otherwise. 
Definition: sid.hpp:104
 
UHD_API std::ostream & operator<<(std::ostream &os, filter_info_base &f)
 
bool is_set() const
Returns true if this actually holds a valid SID. 
Definition: sid.hpp:97
 
UHD_INLINE boost::uint32_t get_dst_xbarport() const
Return crossbar port of the source. 
Definition: sid.hpp:138
 
UHD_API bool operator==(const time_spec_t &, const time_spec_t &)
Implement equality_comparable interface. 
 
std::string to_pp_string_hex() const
Return a hexadecimal string representation of the SID.