]> git.sesse.net Git - cubemap/blobdiff - server.h
New run of include-what-you-use.
[cubemap] / server.h
index 343adf9bfd28f1513fcd6c9ccbec011919b9e147..a3e032d88f71a2f66b9613781d64053a6f32b143 100644 (file)
--- a/server.h
+++ b/server.h
@@ -1,17 +1,23 @@
 #ifndef _SERVER_H
 #define _SERVER_H 1
 
-#include <stdint.h>
 #include <pthread.h>
+#include <stddef.h>
+#include <stdint.h>
 #include <sys/epoll.h>
+#include <sys/types.h>
 #include <time.h>
-#include <string>
 #include <map>
+#include <string>
 #include <vector>
 
 #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
@@ -29,7 +35,9 @@ public:
        std::vector<ClientStats> 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!
@@ -46,8 +54,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
@@ -118,7 +128,6 @@ private:
        void process_queued_data();
 
        void add_client(int sock);
-       void add_data(const std::string &stream_id, const char *data, ssize_t bytes);
 };
 
 #endif  // !defined(_SERVER_H)