#pragma once #ifdef __cplusplus #include #include #include #include namespace softbus::hardware::interfaces { // 面向字节流设备的统一驱动接口:串口 / TCP / UDP 等 class IStreamDriver { public: using ReadCallback = std::function&)>; using ErrorCallback = std::function; virtual ~IStreamDriver() = default; virtual bool Open(const std::string& endpoint) = 0; virtual void Close() = 0; virtual bool Write(const std::vector& data) = 0; virtual void SetReadCallback(ReadCallback cb) = 0; virtual void SetErrorCallback(ErrorCallback cb) = 0; }; } // namespace softbus::hardware::interfaces #endif // __cplusplus