2019-05-12 08:45:56 -07:00
|
|
|
#pragma once
|
|
|
|
|
|
|
|
|
|
#include "stream.h"
|
|
|
|
|
|
|
|
|
|
namespace firesse {
|
|
|
|
|
|
|
|
|
|
// Track live streams
|
|
|
|
|
class Index {
|
|
|
|
|
public:
|
|
|
|
|
void Add(Stream* stream);
|
|
|
|
|
void Remove(Stream* stream);
|
2019-05-12 08:56:57 -07:00
|
|
|
void Freshen(Stream* stream);
|
2019-05-12 08:45:56 -07:00
|
|
|
|
|
|
|
|
private:
|
2019-05-12 08:56:57 -07:00
|
|
|
std::recursive_mutex mu_;
|
2019-05-12 08:45:56 -07:00
|
|
|
Stream* freshest_ = nullptr;
|
|
|
|
|
Stream* stalest_ = nullptr;
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
} // namespace firesse
|