1
0
Fork 0
mirror of https://github.com/ossrs/srs.git synced 2025-03-09 15:49:59 +00:00

Change virtual public to public. 4.0.109

This commit is contained in:
winlin 2021-05-14 09:10:41 +08:00
parent 53e20d4a37
commit 717e811002
25 changed files with 50 additions and 51 deletions

View file

@ -176,6 +176,7 @@ The ports used by SRS:
## V4 changes ## V4 changes
* v4.0, 2021-05-14, Change virtual public to public. 4.0.109
* v4.0, 2021-05-14, Refine id and vid for statistic. 4.0.108 * v4.0, 2021-05-14, Refine id and vid for statistic. 4.0.108
* v4.0, 2021-05-09, Refine tid for sdk and demos. 4.0.106 * v4.0, 2021-05-09, Refine tid for sdk and demos. 4.0.106
* v4.0, 2021-05-08, Refine shared fast timer. 4.0.105 * v4.0, 2021-05-08, Refine shared fast timer. 4.0.105

View file

@ -47,8 +47,7 @@ class SrsSimpleRtmpClient;
#include <srs_kernel_file.hpp> #include <srs_kernel_file.hpp>
// The stream caster for flv stream over HTTP POST. // The stream caster for flv stream over HTTP POST.
class SrsAppCasterFlv : virtual public ISrsTcpHandler class SrsAppCasterFlv : public ISrsTcpHandler, public ISrsResourceManager, public ISrsHttpHandler
, virtual public ISrsResourceManager, virtual public ISrsHttpHandler
{ {
private: private:
std::string output; std::string output;
@ -72,8 +71,7 @@ public:
}; };
// The dynamic http connection, never drop the body. // The dynamic http connection, never drop the body.
class SrsDynamicHttpConn : virtual public ISrsStartableConneciton, virtual public ISrsHttpConnOwner class SrsDynamicHttpConn : public ISrsStartableConneciton, public ISrsHttpConnOwner, public ISrsReloadHandler
, virtual public ISrsReloadHandler
{ {
private: private:
// The manager object to manage the connection. // The manager object to manage the connection.

View file

@ -77,7 +77,7 @@ public:
}; };
// The resource manager remove resource and delete it asynchronously. // The resource manager remove resource and delete it asynchronously.
class SrsResourceManager : virtual public ISrsCoroutineHandler, virtual public ISrsResourceManager class SrsResourceManager : public ISrsCoroutineHandler, public ISrsResourceManager
{ {
private: private:
std::string label_; std::string label_;
@ -153,8 +153,8 @@ public:
}; };
// Interface for connection that is startable. // Interface for connection that is startable.
class ISrsStartableConneciton : virtual public ISrsConnection class ISrsStartableConneciton : public ISrsConnection
, virtual public ISrsStartable, virtual public ISrsKbpsDelta , public ISrsStartable, public ISrsKbpsDelta
{ {
public: public:
ISrsStartableConneciton(); ISrsStartableConneciton();
@ -164,7 +164,7 @@ public:
// The basic connection of SRS, for TCP based protocols, // The basic connection of SRS, for TCP based protocols,
// all connections accept from listener must extends from this base class, // all connections accept from listener must extends from this base class,
// server will add the connection to manager, and delete it when remove. // server will add the connection to manager, and delete it when remove.
class SrsTcpConnection : virtual public ISrsProtocolReadWriter class SrsTcpConnection : public ISrsProtocolReadWriter
{ {
private: private:
// The underlayer st fd handler. // The underlayer st fd handler.
@ -196,7 +196,7 @@ public:
}; };
// The SSL connection over TCP transport, in server mode. // The SSL connection over TCP transport, in server mode.
class SrsSslConnection : virtual public ISrsProtocolReadWriter class SrsSslConnection : public ISrsProtocolReadWriter
{ {
private: private:
// The under-layer plaintext transport. // The under-layer plaintext transport.

View file

@ -185,7 +185,7 @@ public:
virtual srs_error_t serve_http(ISrsHttpResponseWriter* w, ISrsHttpMessage* r); virtual srs_error_t serve_http(ISrsHttpResponseWriter* w, ISrsHttpMessage* r);
}; };
class SrsGoApiRaw : virtual public ISrsHttpHandler, virtual public ISrsReloadHandler class SrsGoApiRaw : public ISrsHttpHandler, public ISrsReloadHandler
{ {
private: private:
SrsServer* server; SrsServer* server;
@ -247,8 +247,8 @@ public:
#endif #endif
// Handle the HTTP API request. // Handle the HTTP API request.
class SrsHttpApi : virtual public ISrsStartableConneciton, virtual public ISrsHttpConnOwner class SrsHttpApi : public ISrsStartableConneciton, public ISrsHttpConnOwner
, virtual public ISrsReloadHandler , public ISrsReloadHandler
{ {
private: private:
// The manager object to manage the connection. // The manager object to manage the connection.

View file

@ -75,8 +75,8 @@ public:
}; };
// The http connection which request the static or stream content. // The http connection which request the static or stream content.
class SrsHttpConn : virtual public ISrsStartableConneciton, virtual public ISrsCoroutineHandler class SrsHttpConn : public ISrsStartableConneciton, public ISrsCoroutineHandler
, virtual public ISrsExpire , public ISrsExpire
{ {
protected: protected:
SrsHttpParser* parser; SrsHttpParser* parser;
@ -143,8 +143,8 @@ public:
}; };
// Drop body of request, only process the response. // Drop body of request, only process the response.
class SrsResponseOnlyHttpConn : virtual public ISrsStartableConneciton, virtual public ISrsHttpConnOwner class SrsResponseOnlyHttpConn : public ISrsStartableConneciton, public ISrsHttpConnOwner
, virtual public ISrsReloadHandler , public ISrsReloadHandler
{ {
private: private:
// The manager object to manage the connection. // The manager object to manage the connection.

View file

@ -44,7 +44,7 @@ protected:
// The http static server instance, // The http static server instance,
// serve http static file and flv/mp4 vod stream. // serve http static file and flv/mp4 vod stream.
class SrsHttpStaticServer : virtual public ISrsReloadHandler class SrsHttpStaticServer : public ISrsReloadHandler
{ {
private: private:
SrsServer* server; SrsServer* server;

View file

@ -231,8 +231,8 @@ public:
// The HTTP Live Streaming Server, to serve FLV/TS/MP3/AAC stream. // The HTTP Live Streaming Server, to serve FLV/TS/MP3/AAC stream.
// TODO: Support multiple stream. // TODO: Support multiple stream.
class SrsHttpStreamServer : virtual public ISrsReloadHandler class SrsHttpStreamServer : public ISrsReloadHandler
, virtual public ISrsHttpMatchHijacker , public ISrsHttpMatchHijacker
{ {
private: private:
SrsServer* server; SrsServer* server;

View file

@ -67,7 +67,7 @@ public:
}; };
// The mpegts over udp stream caster. // The mpegts over udp stream caster.
class SrsMpegtsOverUdp : virtual public ISrsTsHandler, virtual public ISrsUdpHandler class SrsMpegtsOverUdp : public ISrsTsHandler, public ISrsUdpHandler
{ {
private: private:
SrsTsContext* context; SrsTsContext* context;

View file

@ -138,9 +138,9 @@ public:
// The publish recv thread got message and callback the source method to process message. // The publish recv thread got message and callback the source method to process message.
// @see: https://github.com/ossrs/srs/issues/237 // @see: https://github.com/ossrs/srs/issues/237
class SrsPublishRecvThread : virtual public ISrsMessagePumper, virtual public ISrsReloadHandler class SrsPublishRecvThread : public ISrsMessagePumper, public ISrsReloadHandler
#ifdef SRS_PERF_MERGED_READ #ifdef SRS_PERF_MERGED_READ
, virtual public IMergeReadHandler , public IMergeReadHandler
#endif #endif
{ {
private: private:

View file

@ -192,7 +192,7 @@ public:
}; };
// A worker coroutine to request the PLI. // A worker coroutine to request the PLI.
class SrsRtcPLIWorker : virtual public ISrsCoroutineHandler class SrsRtcPLIWorker : public ISrsCoroutineHandler
{ {
private: private:
SrsCoroutine* trd_; SrsCoroutine* trd_;
@ -419,7 +419,7 @@ private:
// A RTC Peer Connection, SDP level object. // A RTC Peer Connection, SDP level object.
// //
// For performance, we use non-virtual public from resource, // For performance, we use non-public from resource,
// see https://stackoverflow.com/questions/3747066/c-cannot-convert-from-base-a-to-derived-type-b-via-virtual-base-a // see https://stackoverflow.com/questions/3747066/c-cannot-convert-from-base-a-to-derived-type-b-via-virtual-base-a
class SrsRtcConnection : public ISrsResource, public ISrsDisposingHandler class SrsRtcConnection : public ISrsResource, public ISrsDisposingHandler
{ {

View file

@ -144,7 +144,7 @@ protected:
virtual bool is_dtls_client() = 0; virtual bool is_dtls_client() = 0;
}; };
class SrsDtlsClientImpl : virtual public SrsDtlsImpl, virtual public ISrsCoroutineHandler class SrsDtlsClientImpl : public SrsDtlsImpl, public ISrsCoroutineHandler
{ {
private: private:
// ARQ thread, for role active(DTLS client). // ARQ thread, for role active(DTLS client).

View file

@ -573,7 +573,7 @@ protected:
virtual srs_error_t do_check_send_nacks(uint32_t& timeout_nacks); virtual srs_error_t do_check_send_nacks(uint32_t& timeout_nacks);
}; };
class SrsRtcAudioRecvTrack : virtual public SrsRtcRecvTrack, virtual public ISrsRtpPacketDecodeHandler class SrsRtcAudioRecvTrack : public SrsRtcRecvTrack, public ISrsRtpPacketDecodeHandler
{ {
public: public:
SrsRtcAudioRecvTrack(SrsRtcConnection* session, SrsRtcTrackDescription* track_desc); SrsRtcAudioRecvTrack(SrsRtcConnection* session, SrsRtcTrackDescription* track_desc);
@ -585,7 +585,7 @@ public:
virtual srs_error_t check_send_nacks(); virtual srs_error_t check_send_nacks();
}; };
class SrsRtcVideoRecvTrack : virtual public SrsRtcRecvTrack, virtual public ISrsRtpPacketDecodeHandler class SrsRtcVideoRecvTrack : public SrsRtcRecvTrack, public ISrsRtpPacketDecodeHandler
{ {
public: public:
SrsRtcVideoRecvTrack(SrsRtcConnection* session, SrsRtcTrackDescription* stream_descs); SrsRtcVideoRecvTrack(SrsRtcConnection* session, SrsRtcTrackDescription* stream_descs);

View file

@ -83,8 +83,8 @@ public:
}; };
// The client provides the main logic control for RTMP clients. // The client provides the main logic control for RTMP clients.
class SrsRtmpConn : virtual public ISrsStartableConneciton, virtual public ISrsReloadHandler class SrsRtmpConn : public ISrsStartableConneciton, public ISrsReloadHandler
, virtual public ISrsCoroutineHandler, virtual public ISrsExpire , public ISrsCoroutineHandler, public ISrsExpire
{ {
// For the thread to directly access any field of connection. // For the thread to directly access any field of connection.
friend class SrsPublishRecvThread; friend class SrsPublishRecvThread;

View file

@ -101,7 +101,7 @@ public:
}; };
// A buffered TCP listener. // A buffered TCP listener.
class SrsBufferListener : virtual public SrsListener, virtual public ISrsTcpHandler class SrsBufferListener : public SrsListener, public ISrsTcpHandler
{ {
private: private:
SrsTcpListener* listener; SrsTcpListener* listener;
@ -116,7 +116,7 @@ public:
}; };
// A TCP listener, for rtsp server. // A TCP listener, for rtsp server.
class SrsRtspListener : virtual public SrsListener, virtual public ISrsTcpHandler class SrsRtspListener : public SrsListener, public ISrsTcpHandler
{ {
private: private:
SrsTcpListener* listener; SrsTcpListener* listener;
@ -132,7 +132,7 @@ public:
}; };
// A TCP listener, for flv stream server. // A TCP listener, for flv stream server.
class SrsHttpFlvListener : virtual public SrsListener, virtual public ISrsTcpHandler class SrsHttpFlvListener : public SrsListener, public ISrsTcpHandler
{ {
private: private:
SrsTcpListener* listener; SrsTcpListener* listener;
@ -178,7 +178,7 @@ public:
virtual ~SrsGb28181Listener(); virtual ~SrsGb28181Listener();
}; };
class SrsGb28181TcpListener : virtual public SrsListener, virtual public ISrsTcpHandler class SrsGb28181TcpListener : public SrsListener, public ISrsTcpHandler
{ {
private: private:
SrsTcpListener* listener; SrsTcpListener* listener;
@ -261,9 +261,9 @@ public:
// TODO: FIXME: Rename to SrsLiveServer. // TODO: FIXME: Rename to SrsLiveServer.
// SRS RTMP server, initialize and listen, start connection service thread, destroy client. // SRS RTMP server, initialize and listen, start connection service thread, destroy client.
class SrsServer : virtual public ISrsReloadHandler, virtual public ISrsSourceHandler class SrsServer : public ISrsReloadHandler, public ISrsSourceHandler
, virtual public ISrsResourceManager, virtual public ISrsCoroutineHandler , public ISrsResourceManager, public ISrsCoroutineHandler
, virtual public ISrsHourGlass , public ISrsHourGlass
{ {
private: private:
// TODO: FIXME: Extract an HttpApiServer. // TODO: FIXME: Extract an HttpApiServer.

View file

@ -183,7 +183,7 @@ public:
}; };
// The consumer for SrsSource, that is a play client. // The consumer for SrsSource, that is a play client.
class SrsConsumer : virtual public ISrsWakable class SrsConsumer : public ISrsWakable
{ {
private: private:
SrsRtmpJitter* jitter; SrsRtmpJitter* jitter;

View file

@ -26,6 +26,6 @@
#define VERSION_MAJOR 4 #define VERSION_MAJOR 4
#define VERSION_MINOR 0 #define VERSION_MINOR 0
#define VERSION_REVISION 108 #define VERSION_REVISION 109
#endif #endif

View file

@ -71,7 +71,7 @@ public:
/** /**
* The reader and seeker. * The reader and seeker.
*/ */
class ISrsReadSeeker : virtual public ISrsReader, virtual public ISrsSeeker class ISrsReadSeeker : public ISrsReader, public ISrsSeeker
{ {
public: public:
ISrsReadSeeker(); ISrsReadSeeker();
@ -115,7 +115,7 @@ public:
/** /**
* The generally writer, stream and vector writer. * The generally writer, stream and vector writer.
*/ */
class ISrsWriter : virtual public ISrsStreamWriter, virtual public ISrsVectorWriter class ISrsWriter : public ISrsStreamWriter, public ISrsVectorWriter
{ {
public: public:
ISrsWriter(); ISrsWriter();
@ -125,7 +125,7 @@ public:
/** /**
* The writer and seeker. * The writer and seeker.
*/ */
class ISrsWriteSeeker : virtual public ISrsWriter, virtual public ISrsSeeker class ISrsWriteSeeker : public ISrsWriter, public ISrsSeeker
{ {
public: public:
ISrsWriteSeeker(); ISrsWriteSeeker();

View file

@ -639,7 +639,7 @@ int SrsIngestHlsInput::SrsTsPiece::fetch(string m3u8)
} }
// the context to output to rtmp server // the context to output to rtmp server
class SrsIngestHlsOutput : virtual public ISrsTsHandler, virtual public ISrsAacHandler class SrsIngestHlsOutput : public ISrsTsHandler, public ISrsAacHandler
{ {
private: private:
SrsHttpUri* out_rtmp; SrsHttpUri* out_rtmp;

View file

@ -75,7 +75,7 @@ public:
/** /**
* the reader for the protocol to read from whatever channel. * the reader for the protocol to read from whatever channel.
*/ */
class ISrsProtocolReader : virtual public ISrsReader, virtual public ISrsProtocolStatistic class ISrsProtocolReader : public ISrsReader, virtual public ISrsProtocolStatistic
{ {
public: public:
ISrsProtocolReader(); ISrsProtocolReader();
@ -97,7 +97,7 @@ public:
/** /**
* the writer for the protocol to write to whatever channel. * the writer for the protocol to write to whatever channel.
*/ */
class ISrsProtocolWriter : virtual public ISrsWriter, virtual public ISrsProtocolStatistic class ISrsProtocolWriter : public ISrsWriter, virtual public ISrsProtocolStatistic
{ {
public: public:
ISrsProtocolWriter(); ISrsProtocolWriter();
@ -114,7 +114,7 @@ public:
/** /**
* The reader and writer. * The reader and writer.
*/ */
class ISrsProtocolReadWriter : virtual public ISrsProtocolReader, virtual public ISrsProtocolWriter class ISrsProtocolReadWriter : public ISrsProtocolReader, public ISrsProtocolWriter
{ {
public: public:
ISrsProtocolReadWriter(); ISrsProtocolReadWriter();

View file

@ -137,7 +137,7 @@ public:
* user->set_io(kbps, kbps); * user->set_io(kbps, kbps);
* the server never know how many bytes already send/recv, for the connection maybe closed. * the server never know how many bytes already send/recv, for the connection maybe closed.
*/ */
class SrsKbps : virtual public ISrsProtocolStatistic, virtual public ISrsKbpsDelta class SrsKbps : public ISrsProtocolStatistic, public ISrsKbpsDelta
{ {
private: private:
SrsKbpsSlice is; SrsKbpsSlice is;

View file

@ -46,7 +46,7 @@ class SrsTcpClient;
#define SRS_HTTP_CLIENT_TIMEOUT (30 * SRS_UTIME_SECONDS) #define SRS_HTTP_CLIENT_TIMEOUT (30 * SRS_UTIME_SECONDS)
// The SSL client over TCP transport. // The SSL client over TCP transport.
class SrsSslClient : virtual public ISrsReader, virtual public ISrsStreamWriter class SrsSslClient : public ISrsReader, public ISrsStreamWriter
{ {
private: private:
SrsTcpClient* transport; SrsTcpClient* transport;

View file

@ -257,7 +257,7 @@ public:
}; };
// Response reader use st socket. // Response reader use st socket.
class SrsHttpResponseReader : virtual public ISrsHttpResponseReader class SrsHttpResponseReader : public ISrsHttpResponseReader
{ {
private: private:
ISrsReader* skt; ISrsReader* skt;

View file

@ -174,7 +174,7 @@ public:
} }
}; };
class MockHttpHandler : virtual public ISrsHttpHandler, virtual public ISrsHttpMatchHijacker class MockHttpHandler : public ISrsHttpHandler, public ISrsHttpMatchHijacker
{ {
public: public:
string bytes; string bytes;

View file

@ -36,7 +36,7 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
#include <string> #include <string>
using namespace std; using namespace std;
class MockResponseWriter : virtual public ISrsHttpResponseWriter, virtual public ISrsHttpHeaderFilter class MockResponseWriter : public ISrsHttpResponseWriter, public ISrsHttpHeaderFilter
{ {
public: public:
SrsHttpResponseWriter* w; SrsHttpResponseWriter* w;

View file

@ -708,7 +708,7 @@ srs_error_t MockDtls::do_handshake()
return err; return err;
} }
class MockDtlsCallback : virtual public ISrsDtlsCallback, virtual public ISrsCoroutineHandler class MockDtlsCallback : public ISrsDtlsCallback, public ISrsCoroutineHandler
{ {
public: public:
SrsDtls* peer; SrsDtls* peer;