- // If <pending_data> starts with a Metacube header,
- // this is true.
- bool has_metacube_header;
+ // TODO: Number of loss events might both be useful,
+ // similar to for clients. Also, per-connection byte counters.
+};
+
+class Input : public Thread {
+public:
+ virtual ~Input();
+ virtual InputProto serialize() const = 0;
+ virtual std::string get_url() const = 0;
+ virtual void close_socket() = 0;
+ virtual void add_destination(int stream_index) = 0;
+
+ // Note: May be called from a different thread, so must be thread-safe.
+ virtual InputStats get_stats() const = 0;