X-Git-Url: https://git.sesse.net/?p=cubemap;a=blobdiff_plain;f=udpinput.h;h=b3f504aa20255943302a77e5673489fd89ba4831;hp=0ee5dc9b986f0cfa63026aac5c75c163dc3f87ab;hb=70c47a998c5aa2eb536c3c8f71f3178cd217a14d;hpb=845934ca50eee40884e8cc85ea81eb310efa5ca3 diff --git a/udpinput.h b/udpinput.h index 0ee5dc9..b3f504a 100644 --- a/udpinput.h +++ b/udpinput.h @@ -1,6 +1,7 @@ #ifndef _UDPINPUT_H #define _UDPINPUT_H 1 +#include #include #include @@ -21,6 +22,8 @@ public: virtual void add_destination(int stream_index); + virtual InputStats get_stats() const; + private: // Actually gets the packets. virtual void do_work(); @@ -32,7 +35,7 @@ private: // The URL and its parsed components. std::string url; - std::string host, port, path; + std::string user, host, port, path; // The HTTP header we're sending to clients. std::string http_header; @@ -42,6 +45,12 @@ private: // Temporary buffer, sized for the maximum size of an UDP packet. char packet_buf[65536]; + + // Mutex protecting . + mutable pthread_mutex_t stats_mutex; + + // The current statistics for this connection. Protected by . + InputStats stats; }; #endif // !defined(_UDPINPUT_H)