/// \file buffer_stream.h /// Contains definitions for buffer streams. #pragma once #include #include #include #include #include "../../tinythread.h" namespace Buffer { /// Converts a stats line to up, down, host, connector and conntime values. class Stats{ public: unsigned int up;/// & allowedTracks); private: void deletionCallback(DTSC::livePos deleting); tthread::mutex rw_mutex; ///< Mutex for read/write locking. tthread::condition_variable rw_change; ///< Triggered when reader/writer count changes. static Stream * ref; Stream(); JSON::Value Storage; ///< Global storage of data. std::string waiting_ip; ///< IP address for media push. Socket::Connection ip_input; ///< Connection used for media push. tthread::recursive_mutex stats_mutex; ///< Mutex for stats/users modifications. std::set users; ///< All connected users. std::set::iterator usersIt; ///< Iterator for all connected users. std::string name; ///< Name for this buffer. tthread::condition_variable moreData; ///< Triggered when more data becomes available. }; } ;