39 uint32_t timeout_usec = 1000000);
42 uint32_t timeout_usec = 1000000);
47 uint32_t timeout_usec = 0);
50 const std::string &mountpoint,
51 const std::string &user,
52 const std::string &passwd,
53 uint32_t timeout_s = 30);
75 login_data_.assign(login_data.begin(), login_data.end());
79 for (
size_t i = 0; i < login_data_.size(); ++i) {
80 write(login_data_[i]);
81 AINFO <<
"Login: " << login_data_[i];
88 virtual size_t read(uint8_t *buffer,
size_t max_length) = 0;
91 virtual size_t write(
const uint8_t *buffer,
size_t length) = 0;
93 size_t write(
const std::string &buffer) {
94 return write(reinterpret_cast<const uint8_t *>(buffer.data()),
104 std::vector<std::string> login_data_;
PlanningContext is the runtime context in planning. It is persistent across multiple frames...
Definition: atomic_hash_map.h:25
virtual size_t write(const uint8_t *buffer, size_t length)=0
Status status_
Definition: stream.h:101
virtual bool Disconnect()=0
static Stream * create_udp(const char *address, uint16_t port, uint32_t timeout_usec=1000000)
void Login()
Definition: stream.h:78
static Stream * create_serial(const char *device_name, uint32_t baud_rate, uint32_t timeout_usec=0)
static constexpr size_t NUM_STATUS
Definition: stream.h:64
static Stream * create_ntrip(const std::string &address, uint16_t port, const std::string &mountpoint, const std::string &user, const std::string &passwd, uint32_t timeout_s=30)
virtual size_t read(uint8_t *buffer, size_t max_length)=0
std::chrono::microseconds Duration
Definition: croutine.h:36
void RegisterLoginData(const std::vector< std::string > login_data)
Definition: stream.h:74
#define DISABLE_COPY_AND_ASSIGN(TypeName)
Definition: macros.h:32
Status
Definition: stream.h:58
Stream()
Definition: stream.h:99
size_t write(const std::string &buffer)
Definition: stream.h:93
virtual ~Stream()
Definition: stream.h:55
static Stream * create_tcp(const char *address, uint16_t port, uint32_t timeout_usec=1000000)
#define AINFO
Definition: log.h:42
Status get_status() const
Definition: stream.h:66