X-Git-Url: https://git.sesse.net/?p=cubemap;a=blobdiff_plain;f=server.h;h=4f964873b22503c54c1fa782c0785d453d5ba345;hp=2d227b6e1797ec331c7a6e966ec412d5f6c7a79b;hb=3fd8650ccf3da3960a946d8ac9abc305aec399ce;hpb=40ed7df894c8645c132a5bea2bfb12a9be2b82ef diff --git a/server.h b/server.h index 2d227b6..4f96487 100644 --- a/server.h +++ b/server.h @@ -12,13 +12,13 @@ #include #include "client.h" +#include "stream.h" #include "thread.h" class ClientProto; struct Stream; #define EPOLL_MAX_EVENTS 8192 -#define EPOLL_TIMEOUT_MS 20 #define MAX_CLIENT_REQUEST 16384 class CubemapStateProto; @@ -34,7 +34,9 @@ public: std::vector get_client_stats() const; // Set header (both HTTP header and any stream headers) for the given stream. - void set_header(const std::string &stream_id, const std::string &header); + void set_header(const std::string &stream_id, + const std::string &http_header, + const std::string &stream_header); // Set that the given stream should use the given mark pool from now on. // NOTE: This should be set before any clients are connected! @@ -51,9 +53,10 @@ public: // at the same time). CubemapStateProto serialize(); void add_client_from_serialized(const ClientProto &client); - void add_stream(const std::string &stream_id, size_t bytes_received); - void add_stream_from_serialized(const StreamProto &stream); + void add_stream(const std::string &stream_id, size_t bytes_received, Stream::Encoding encoding); + void add_stream_from_serialized(const StreamProto &stream, int data_fd); void set_backlog_size(const std::string &stream_id, size_t new_size); + void set_encoding(const std::string &stream_id, Stream::Encoding encoding); private: // Mutex protecting queued_data only. Note that if you want to hold both this