1 Star 0 Fork 0

houmingzhang/CovAnalysisTool

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
CoAnalysisServer.h 4.16 KB
一键复制 编辑 原始数据 按行查看 历史
Administrator 提交于 2021-10-05 19:06 +08:00 . 协相关分析工具
/**
@brief 数据接收服务器
*/
#ifndef COANALYSISSERVER_H
#define COANALYSISSERVER_H
#include "event.h"
#include "SockMs.h"
#include "TimeMs.h"
#include "MemeryMs.h"
#include "DebugMs.h"
#include "UintMap.h"
#include "protocol_splitter.h"
#include "ground_event_ms.h"
#include "asyn_connect_ms.h"
#include "GlobalHeader.h"
class CMainWindow;
class AnalysisTask;
class DataChannel;
class CoAnalysisServer
{
friend class DataChannel;
friend class AnalysisTask;
public:
CoAnalysisServer(CMainWindow *pown);
~CoAnalysisServer();
CMainWindow* GetMainWindow();
private:
static void ServerBegin(struct GroundMs *pGround, union MsUserData uParam);
static void NewDataChannel(struct ServerMs *pServer, struct ClientMs *pClient,
struct sockaddr *pAddrPeer, int32_t socklen, void *pUserData);
static void AcceptError(struct ServerMs *pServer, void *pUserData);
static int BuildDataChannel(void *pData, size_t nLen, void *pUserData, void *pLocalData);
static int UpBitRateReport(void *pData, size_t nLen, void *pUserData, void *pLocalData);
static int UpSliceIndexReport(void *pData, size_t nLen, void *pUserData, void *pLocalData);
static void DataChannelErrorClose(int32_t sockFd, short nFlags, void *pParam);
static void DataChannelRelease(void *pParam);
static void DataChannelEvent(struct ClientMs *pConnect, short nFlags, void *pUserData);
static void ClientSessionErrorSend(DataChannel *pChannel, uint32_t nErrorCode) ;
static void AnalyseTasklRelease(void *pParam);
static void ServerEnd(struct GroundEventParam *pInputParam, struct GroundEventParam *pOutputParam);
/**
@brief 根据名字查找分析任务
**/
static void *FindAnalysisByTaskName(void *pParam1, void *pParam2);
private:
struct ServerMs * m_pServer;
struct GroundMs * m_coreThread;
int32_t m_sockFd;
CMainWindow * m_pown;
struct PtcSplitter * m_pSvrSplitter;
std::list<uint32_t > m_datachannelIdPool;
std::list<uint32_t > m_analysistaskIdPool;
UintMapHandle m_mapDataChannel;
UintMapHandle m_mapAnalysisTask;
};
#endif // COANALYSISSERVER_H
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/dtrylzhm/cov-analysis-tool.git
git@gitee.com:dtrylzhm/cov-analysis-tool.git
dtrylzhm
cov-analysis-tool
CovAnalysisTool
master

搜索帮助