RDMnet  0.3.0
Implementation of ANSI E1.33 (RDMnet)
View other versions:
rdmnet::Scope Class Reference

Overview

An RDMnet scope configuration.

Includes the scope string, which can be from 1 to 62 characters of UTF-8. Also includes an optional hardcoded ("static") IP address and port for a broker to connect to for this scope. If this is absent, DNS-SD will be used to dynamically discover a broker.

#include <rdmnet/cpp/client.h>

Public Member Functions

 Scope (const std::string &scope_str, const etcpal::SockAddr &static_broker_addr=etcpal::SockAddr{})
 Construct a scope config from its id string and an optional static broker IP address and port.
 
 Scope (const RdmnetScopeConfig &scope_config)
 Construct a scope config from an instance of the C RdmnetScopeConfig type.
 
bool IsStatic () const noexcept
 Whether this scope has been configured with a static IP address and port for a broker.
 
bool IsDefault () const noexcept
 Whether this scope represents the default RDMnet scope.
 
const std::stringid_string () const noexcept
 The ID string of this scope.
 
const etcpal::SockAddrstatic_broker_addr () const noexcept
 The static broker address associated with this scope. More...
 
void SetIdString (const std::string &id)
 Set a new ID string for this scope.
 
void SetIdString (const char *id)
 Set a new ID string for this scope. More...
 
void SetStaticBrokerAddr (const etcpal::SockAddr &static_broker_addr)
 Set a new static broker IP address and port for this scope.
 

Member Function Documentation

◆ SetIdString()

void rdmnet::Scope::SetIdString ( const char *  id)
inline

Set a new ID string for this scope.

Parameters
idThe ID string. Will be truncated to a maximum of 62 UTF-8 bytes.

◆ static_broker_addr()

const etcpal::SockAddr & rdmnet::Scope::static_broker_addr ( ) const
inlinenoexcept

The static broker address associated with this scope.

If no static broker address is configured, returns an invalid address (SockAddr::IsValid() returns false).


The documentation for this class was generated from the following file: