mirror of
https://github.com/ossrs/srs.git
synced 2025-03-09 15:49:59 +00:00
move buffer to kernel. extract ISrsReader for buffer
This commit is contained in:
parent
8fea433450
commit
c0dbee0854
6 changed files with 29 additions and 14 deletions
4
trunk/configure
vendored
4
trunk/configure
vendored
|
@ -134,7 +134,7 @@ MODULE_ID="KERNEL"
|
|||
MODULE_DEPENDS=("CORE")
|
||||
ModuleLibIncs=(${SRS_OBJS})
|
||||
MODULE_FILES=("srs_kernel_error" "srs_kernel_log" "srs_kernel_reload" "srs_kernel_config"
|
||||
"srs_kernel_stream")
|
||||
"srs_kernel_stream" "srs_kernel_buffer")
|
||||
MODULE_DIR="src/kernel" . auto/modules.sh
|
||||
KERNEL_OBJS="${MODULE_OBJS[@]}"
|
||||
#
|
||||
|
@ -144,7 +144,7 @@ MODULE_DEPENDS=("CORE" "KERNEL")
|
|||
ModuleLibIncs=(${LibSTRoot} ${LibHttpParserRoot} ${LibSSLRoot} ${SRS_OBJS})
|
||||
MODULE_FILES=("srs_core_server"
|
||||
"srs_core_conn" "srs_core_client"
|
||||
"srs_core_rtmp" "srs_core_socket" "srs_core_buffer"
|
||||
"srs_core_rtmp" "srs_core_socket"
|
||||
"srs_core_protocol" "srs_core_amf0"
|
||||
"srs_core_source" "srs_core_codec"
|
||||
"srs_core_handshake" "srs_core_pithy_print"
|
||||
|
|
|
@ -27,7 +27,7 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|||
#include <srs_core_amf0.hpp>
|
||||
#include <srs_kernel_error.hpp>
|
||||
#include <srs_core_socket.hpp>
|
||||
#include <srs_core_buffer.hpp>
|
||||
#include <srs_kernel_buffer.hpp>
|
||||
#include <srs_kernel_stream.hpp>
|
||||
#include <srs_core_autofree.hpp>
|
||||
|
||||
|
|
|
@ -31,12 +31,13 @@ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|||
#include <srs_core.hpp>
|
||||
|
||||
#include <srs_core_st.hpp>
|
||||
#include <srs_kernel_buffer.hpp>
|
||||
|
||||
/**
|
||||
* the socket provides TCP socket over st,
|
||||
* that is, the sync socket mechanism.
|
||||
*/
|
||||
class SrsSocket
|
||||
class SrsSocket : public ISrsReader
|
||||
{
|
||||
private:
|
||||
int64_t recv_timeout;
|
||||
|
|
|
@ -21,14 +21,21 @@ IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
|||
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
*/
|
||||
|
||||
#include <srs_core_buffer.hpp>
|
||||
#include <srs_kernel_buffer.hpp>
|
||||
|
||||
#include <srs_kernel_error.hpp>
|
||||
#include <srs_core_socket.hpp>
|
||||
#include <srs_kernel_log.hpp>
|
||||
|
||||
#define SOCKET_READ_SIZE 4096
|
||||
|
||||
ISrsReader::ISrsReader()
|
||||
{
|
||||
}
|
||||
|
||||
ISrsReader::~ISrsReader()
|
||||
{
|
||||
}
|
||||
|
||||
SrsBuffer::SrsBuffer()
|
||||
{
|
||||
}
|
||||
|
@ -57,7 +64,7 @@ void SrsBuffer::append(char* bytes, int size)
|
|||
data.insert(data.end(), bytes, bytes + size);
|
||||
}
|
||||
|
||||
int SrsBuffer::ensure_buffer_bytes(SrsSocket* skt, int required_size)
|
||||
int SrsBuffer::ensure_buffer_bytes(ISrsReader* skt, int required_size)
|
||||
{
|
||||
int ret = ERROR_SUCCESS;
|
||||
|
|
@ -21,18 +21,25 @@ IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
|||
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
*/
|
||||
|
||||
#ifndef SRS_CORE_BUFFER_HPP
|
||||
#define SRS_CORE_BUFFER_HPP
|
||||
#ifndef SRS_KERNEL_BUFFER_HPP
|
||||
#define SRS_KERNEL_BUFFER_HPP
|
||||
|
||||
/*
|
||||
#include <srs_core_buffer.hpp>
|
||||
#include <srs_kernel_buffer.hpp>
|
||||
*/
|
||||
|
||||
#include <srs_core.hpp>
|
||||
|
||||
#include <vector>
|
||||
|
||||
class SrsSocket;
|
||||
class ISrsReader
|
||||
{
|
||||
public:
|
||||
ISrsReader();
|
||||
virtual ~ISrsReader();
|
||||
public:
|
||||
virtual int read(const void* buf, size_t size, ssize_t* nread) = 0;
|
||||
};
|
||||
|
||||
/**
|
||||
* the buffer provices bytes cache for protocol. generally,
|
||||
|
@ -53,7 +60,7 @@ public:
|
|||
private:
|
||||
virtual void append(char* bytes, int size);
|
||||
public:
|
||||
virtual int ensure_buffer_bytes(SrsSocket* skt, int required_size);
|
||||
virtual int ensure_buffer_bytes(ISrsReader* skt, int required_size);
|
||||
};
|
||||
|
||||
#endif
|
|
@ -10,6 +10,8 @@ file
|
|||
..\core\srs_core_autofree.hpp,
|
||||
..\core\srs_core_autofree.cpp,
|
||||
kernel readonly separator,
|
||||
..\kernel\srs_kernel_buffer.hpp,
|
||||
..\kernel\srs_kernel_buffer.cpp,
|
||||
..\kernel\srs_kernel_config.hpp,
|
||||
..\kernel\srs_kernel_config.cpp,
|
||||
..\kernel\srs_kernel_error.hpp,
|
||||
|
@ -25,8 +27,6 @@ file
|
|||
..\app\srs_core_amf0.cpp,
|
||||
..\app\srs_core_bandwidth.hpp,
|
||||
..\app\srs_core_bandwidth.cpp,
|
||||
..\app\srs_core_buffer.hpp,
|
||||
..\app\srs_core_buffer.cpp,
|
||||
..\app\srs_core_client.hpp,
|
||||
..\app\srs_core_client.cpp,
|
||||
..\app\srs_core_codec.hpp,
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue