channelmanager.h

来自「奇迹世界 部分源代码奇迹世界 部分源代码奇迹世界 部分源代码」· C头文件 代码 · 共 55 行

H
55
字号
#pragma once

#include <Singleton.h>
#include <map>
#include <MemoryPoolFactory.h>

// 烹拌 埃拜
#include <Timer.h>

using namespace util;

class Channel;
class User;

typedef std::map<DWORD, Channel*>		CHANNEL_MAP;
typedef CHANNEL_MAP::iterator			CHANNEL_MAP_ITER;
typedef std::pair<DWORD, Channel*>		CHANNEL_MAP_PAIR;

class ChannelManager : public util::Singleton<ChannelManager>
{
public:
	ChannelManager(void);
	~ChannelManager(void);

	VOID							Init();
	VOID							Release();
	VOID							Update();

	Channel*						AllocChannel();
	VOID							FreeChannel( Channel *pChannel );
	VOID							AddChannel( DWORD dwChannelID );
	VOID							RemoveChannel( DWORD dwChannelID );
	Channel*						GetChannel( DWORD dwChannelID );

//	VOID							SendToAllChannel( BYTE *pMsg, WORD wSize );
	VOID							SendToVillages( BYTE *pMsg, WORD wSize );
//	VOID							SendToBattleZones( BYTE *pMsg, WORD wSize );
	VOID							SendToLobby( BYTE *pMsg, WORD wSize );
	VOID							SendToMissionZones( BYTE *pMsg, WORD wSize );
	VOID							SendToHuntingZones( BYTE *pMsg, WORD wSize );
	VOID							SendToQuestZones( BYTE *pMsg, WORD wSize );
	VOID							SendToPVPZones( BYTE *pMsg, WORD wSize );
	VOID							SendToEventZones( BYTE *pMsg, WORD wSize );
	VOID							SendToGuildZones( BYTE *pMsg, WORD wSize );
	VOID							SendToSiegeZones( BYTE *pMsg, WORD wSize );

	VOID							DisplayChannelInfo();
	CHANNEL_MAP&					GetChannelMap() { return m_mapChannels; }

private:
	CHANNEL_MAP						m_mapChannels;
	CMemoryPoolFactory<Channel>		*m_pChannelPool;
	util::Timer						m_StatisticsTimer;	// 烹拌侩 鸥捞赣
};

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?