mirror of
https://github.com/ossrs/srs.git
synced 2025-03-09 15:49:59 +00:00
Refactor SRT, using reverse dependency, SRT depends on APP.
This commit is contained in:
parent
87ba204a42
commit
33c6bf1f8f
8 changed files with 194 additions and 59 deletions
|
@ -26,26 +26,46 @@
|
|||
|
||||
#include <srs_core.hpp>
|
||||
|
||||
#ifdef SRS_AUTO_SRT
|
||||
#include <srt_server.hpp>
|
||||
#include <srt_to_rtmp.hpp>
|
||||
#endif
|
||||
#include <vector>
|
||||
|
||||
class SrsServer;
|
||||
|
||||
class SrsHybridServer
|
||||
class ISrsHybridServer
|
||||
{
|
||||
public:
|
||||
ISrsHybridServer();
|
||||
virtual ~ISrsHybridServer();
|
||||
public:
|
||||
virtual srs_error_t initialize() = 0;
|
||||
virtual srs_error_t run() = 0;
|
||||
};
|
||||
|
||||
class SrsServerAdapter : public ISrsHybridServer
|
||||
{
|
||||
private:
|
||||
SrsServer* srs;
|
||||
#ifdef SRS_AUTO_SRT
|
||||
SRT_SERVER_PTR srt_ptr;
|
||||
#endif
|
||||
public:
|
||||
SrsHybridServer();
|
||||
virtual ~SrsHybridServer();
|
||||
SrsServerAdapter();
|
||||
virtual ~SrsServerAdapter();
|
||||
public:
|
||||
virtual srs_error_t initialize();
|
||||
virtual srs_error_t run();
|
||||
};
|
||||
|
||||
class SrsHybridServer
|
||||
{
|
||||
private:
|
||||
std::vector<ISrsHybridServer*> servers;
|
||||
public:
|
||||
SrsHybridServer();
|
||||
virtual ~SrsHybridServer();
|
||||
public:
|
||||
virtual void register_server(ISrsHybridServer* svr);
|
||||
public:
|
||||
virtual srs_error_t initialize();
|
||||
virtual srs_error_t run();
|
||||
};
|
||||
|
||||
extern SrsHybridServer* _srs_hybrid;
|
||||
|
||||
#endif
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue