16 ViamChannel(std::shared_ptr<GrpcChannel> channel,
const char* path,
void* runtime);
19 explicit ViamChannel(std::shared_ptr<GrpcChannel> channel);
33 static ViamChannel dial(
const char* uri,
const boost::optional<DialOptions>& options);
44 const std::shared_ptr<GrpcChannel>& channel()
const;
51 std::shared_ptr<GrpcChannel> channel_;
53 std::unique_ptr<impl> pimpl_;
73 const boost::optional<Credentials>& credentials()
const;
74 const boost::optional<std::string>& entity()
const;
75 bool allows_insecure_downgrade()
const;
76 const std::chrono::duration<float>& timeout()
const;
77 int initial_connection_attempts()
const;
78 std::chrono::duration<float> initial_connection_attempt_timeout()
const;
80 DialOptions& set_entity(boost::optional<std::string> entity);
81 DialOptions& set_credentials(boost::optional<Credentials> creds);
82 DialOptions& set_allow_insecure_downgrade(
bool allow);
83 DialOptions& set_timeout(std::chrono::duration<float> timeout);
84 DialOptions& set_initial_connection_attempts(
int attempts);
85 DialOptions& set_initial_connection_attempt_timeout(std::chrono::duration<float> timeout);
92 boost::optional<std::string> auth_entity_;
95 boost::optional<Credentials> credentials_;
99 bool allow_insecure_downgrade_ =
false;
103 std::chrono::duration<float> timeout_{20};
107 int initial_connection_attempts_ = 3;
111 std::chrono::duration<float> initial_connection_attempt_timeout_{20};
116 Options(
unsigned int refresh_interval, boost::optional<DialOptions> dial_options)
117 : refresh_interval_(std::move(refresh_interval)), dial_options_(std::move(dial_options)) {}
119 unsigned int refresh_interval()
const;
120 const boost::optional<DialOptions>& dial_options()
const;
125 unsigned int refresh_interval_;
126 boost::optional<DialOptions> dial_options_;
static ViamChannel dial(const char *uri, const boost::optional< DialOptions > &options)
Connects to a robot at the given URI address, using the provided dial options (or default options is ...