Files

230 lines
8.9 KiB
C
Raw Permalink Normal View History

2026-03-03 13:56:44 +08:00
#ifndef DATABASE_ENGINE_SINK_HEAD_FILE
#define DATABASE_ENGINE_SINK_HEAD_FILE
#pragma once
#include "Stdafx.h"
#include "InitParameter.h"
#include "DataBasePacket.h"
//////////////////////////////////////////////////////////////////////////////////
//<2F><><EFBFBD>ݿ<EFBFBD><DDBF><EFBFBD>
class CDataBaseEngineSink : public IDataBaseEngineSink, public IGameDataBaseEngine
{
//<2F><>Ԫ<EFBFBD><D4AA><EFBFBD><EFBFBD>
friend class CServiceUnits;
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
protected:
DBO_GR_LogonFailure m_LogonFailure; //<2F><>¼ʧ<C2BC><CAA7>
DBO_GR_LogonSuccess m_LogonSuccess; //<2F><>¼<EFBFBD>ɹ<EFBFBD>
//<2F><>Ϸ<EFBFBD><CFB7><EFBFBD>ݿ<EFBFBD>
protected:
CDataBaseAide m_GameDBAide; //<2F><>Ϸ<EFBFBD><CFB7><EFBFBD><EFBFBD>
CDataBaseHelper m_GameDBModule; //<2F><>Ϸ<EFBFBD><CFB7><EFBFBD><EFBFBD>
//<2F><>Ϸ<EFBFBD><CFB7><EFBFBD><EFBFBD><EFBFBD>ݿ<EFBFBD>
protected:
CDataBaseAide m_TreasureDBAide; //<2F><>Ϸ<EFBFBD><CFB7><EFBFBD><EFBFBD><EFBFBD>ݿ<EFBFBD>
CDataBaseHelper m_TreasureDBModule; //<2F><>Ϸ<EFBFBD><CFB7><EFBFBD><EFBFBD><EFBFBD>ݿ<EFBFBD>
//ƽ̨<C6BD><CCA8><EFBFBD>ݿ<EFBFBD>
protected:
CDataBaseAide m_PlatformDBAide; //ƽ̨<C6BD><CCA8><EFBFBD>ݿ<EFBFBD>
CDataBaseHelper m_PlatformDBModule; //ƽ̨<C6BD><CCA8><EFBFBD>ݿ<EFBFBD>
//<2F><><EFBFBD>ñ<EFBFBD><C3B1><EFBFBD>
protected:
CInitParameter * m_pInitParameter; //<2F><><EFBFBD>ò<EFBFBD><C3B2><EFBFBD>
tagGameParameter * m_pGameParameter; //<2F><><EFBFBD>ò<EFBFBD><C3B2><EFBFBD>
tagDataBaseParameter * m_pDataBaseParameter; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
tagGameServiceAttrib * m_pGameServiceAttrib; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
tagGameServiceOption * m_pGameServiceOption; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
protected:
IDataBaseEngine * m_pIDataBaseEngine; //<2F><><EFBFBD><EFBFBD><EFBFBD>ӿ<EFBFBD>
IGameServiceManager * m_pIGameServiceManager; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
IDataBaseEngineEvent * m_pIDataBaseEngineEvent; //<2F><><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD>
//<2F><>ѯ<EFBFBD>ӿ<EFBFBD>
protected:
IGameDataBaseEngineSink * m_pIGameDataBaseEngineSink; //<2F><><EFBFBD>ݽӿ<DDBD>
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public:
IDBCorrespondManager * m_pIDBCorrespondManager; //<2F><><EFBFBD><EFBFBD>Э<EFBFBD><D0AD>
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
public:
//<2F><><EFBFBD><EFBFBD><ECBAAF>
CDataBaseEngineSink();
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
virtual ~CDataBaseEngineSink();
//<2F><><EFBFBD><EFBFBD><EFBFBD>ӿ<EFBFBD>
public:
//<2F>ͷŶ<CDB7><C5B6><EFBFBD>
virtual VOID Release() { return; }
//<2F>ӿڲ<D3BF>ѯ
virtual VOID * QueryInterface(REFGUID Guid, DWORD dwQueryVer);
//<2F><><EFBFBD>ò<EFBFBD><C3B2><EFBFBD>
public:
//<2F>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD><EFBFBD>
virtual VOID * GetCustomRule() { return m_pGameServiceOption->cbCustomRule; };
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
virtual tagGameServiceAttrib * GetGameServiceAttrib() { return m_pGameServiceAttrib; }
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
virtual tagGameServiceOption * GetGameServiceOption() { return m_pGameServiceOption; }
//<2F><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD>
public:
//<2F><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD>
virtual VOID * GetDataBase(REFGUID Guid, DWORD dwQueryVer);
//<2F><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD>
virtual VOID * GetDataBaseEngine(REFGUID Guid, DWORD dwQueryVer);
//<2F><><EFBFBD>ܽӿ<DCBD>
public:
//Ͷ<>ݽ<EFBFBD><DDBD><EFBFBD>
virtual bool PostGameDataBaseResult(WORD wRequestID, VOID * pData, WORD wDataSize);
//ϵͳ<CFB5>¼<EFBFBD>
public:
//<2F><><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD>
virtual bool OnDataBaseEngineStart(IUnknownEx * pIUnknownEx);
//ֹͣ<CDA3>¼<EFBFBD>
virtual bool OnDataBaseEngineConclude(IUnknownEx * pIUnknownEx);
//<2F>ں<EFBFBD><DABA>¼<EFBFBD>
public:
//ʱ<><CAB1><EFBFBD>¼<EFBFBD>
virtual bool OnDataBaseEngineTimer(DWORD dwTimerID, WPARAM dwBindParameter);
//<2F><><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD>
virtual bool OnDataBaseEngineControl(WORD wControlID, VOID * pData, WORD wDataSize);
//<2F><><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD>
virtual bool OnDataBaseEngineRequest(WORD wRequestID, DWORD dwContextID, VOID * pData, WORD wDataSize);
//<2F><>¼<EFBFBD><C2BC><EFBFBD><EFBFBD>
protected:
//I D <20><>¼
bool OnRequestLogonUserID(DWORD dwContextID, VOID * pData, WORD wDataSize, DWORD &dwUserID);
//I D <20><>¼
bool OnRequestLogonMobile(DWORD dwContextID, VOID * pData, WORD wDataSize, DWORD &dwUserID);
//<2F>ʺŵ<CABA>¼
bool OnRequestLogonAccounts(DWORD dwContextID, VOID * pData, WORD wDataSize, DWORD &dwUserID);
//ϵͳ<CFB5><CDB3><EFBFBD><EFBFBD>
protected:
//<2F><>Ϸд<CFB7><D0B4>
bool OnRequestWriteGameScore(DWORD dwContextID, VOID * pData, WORD wDataSize, DWORD &dwUserID);
//<2F><><EFBFBD>ֻ
bool OnRequestBeginnerGameTime(DWORD dwContextID, VOID * pData, WORD wDataSize, DWORD &dwUserID);
//<2F><EFBFBD><EBBFAA><EFBFBD><EFBFBD>
bool OnRequestLeaveGameServer(DWORD dwContextID, VOID * pData, WORD wDataSize, DWORD &dwUserID);
//<2F><>Ϸ<EFBFBD><CFB7>¼
bool OnRequestGameScoreRecord(DWORD dwContextID, VOID * pData, WORD wDataSize, DWORD &dwUserID);
//˽<>˷<EFBFBD><CBB7><EFBFBD>Ϸ<EFBFBD><CFB7>¼
bool OnRequestPrivateGameRecord(DWORD dwContextID, VOID * pData, WORD wDataSize, DWORD &dwUserID);
//<2F><><EFBFBD>ز<EFBFBD><D8B2><EFBFBD>
bool OnRequestLoadParameter(DWORD dwContextID, VOID * pData, WORD wDataSize, DWORD &dwUserID);
//<2F><><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD>
bool OnRequestLoadGameColumn(DWORD dwContextID, VOID * pData, WORD wDataSize, DWORD &dwUserID);
//<2F><><EFBFBD>ػ<EFBFBD><D8BB><EFBFBD>
bool OnRequestLoadAndroidParameter(DWORD dwContextID, VOID * pData, WORD wDataSize, DWORD &dwUserID);
//<2F><><EFBFBD>ػ<EFBFBD><D8BB><EFBFBD>
bool OnRequestLoadAndroidUser(DWORD dwContextID, VOID * pData, WORD wDataSize, DWORD &dwUserID);
//<2F><><EFBFBD>ص<EFBFBD><D8B5><EFBFBD>
bool OnRequestLoadGameProperty(DWORD dwContextID, VOID * pData, WORD wDataSize, DWORD &dwUserID);
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
bool OnRequestPropertyRequest(DWORD dwContextID, VOID * pData, WORD wDataSize, DWORD &dwUserID);
//<2F>û<EFBFBD>Ȩ<EFBFBD><C8A8>
bool OnRequestManageUserRight(DWORD dwContextID, VOID * pData, WORD wDataSize, DWORD &dwUserID);
//ϵͳ<CFB5><CDB3>Ϣ
bool OnRequestLoadSystemMessage(DWORD dwContextID, VOID * pData, WORD wDataSize, DWORD &dwUserID);
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>д<EFBFBD>
bool OnRequestLoadSensitiveWords(DWORD dwContextID, VOID * pData, WORD wDataSize, DWORD &dwUserID);
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
bool OnRequestUnlockAndroidUser(DWORD dwContextID, VOID * pData, WORD wDataSize, DWORD &dwUserID);
//<2F><><EFBFBD><EFBFBD><EFBFBD>ƿ<EFBFBD>
bool OnRequestLoadCardLibrary(DWORD dwContextID, VOID * pData, WORD wDataSize, DWORD &dwUserID);
//˽<>˷<EFBFBD><CBB7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϸ<EFBFBD><CFB7>¼;
bool OnRequestSinglePrivateGameRecord(DWORD dwContextID, VOID * pData, WORD wDataSize, DWORD &dwUserID);
//˽<>˷<EFBFBD><CBB7><EFBFBD><EFBFBD><EFBFBD>;
bool OnRequestPrivateGameEnd(DWORD dwContextID, VOID * pData, WORD wDataSize, DWORD &dwUserID);
//<2F>ƿ<EFBFBD>ȫ<EFBFBD><C8AB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>;
bool OnRequestLoadCardLibCfg(DWORD dwContextID, VOID * pData, WORD wDataSize, DWORD &dwUserID);
//<2F><><EFBFBD>ձ<EFBFBD><D5B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>;
bool OnRequestUnlockAllUser(DWORD dwContextID, VOID * pData, WORD wDataSize, DWORD &dwUserID);
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ݿ<EFBFBD><DDBF><EFBFBD>Ϣ;
bool OnRequestResetDateBaseInfo(DWORD dwContextID, VOID * pData, WORD wDataSize, DWORD &dwUserID);
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
protected:
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
bool OnRequestMatchSignup(DWORD dwContextID, VOID * pData, WORD wDataSize, DWORD &dwUserID);
//<2F>˳<EFBFBD><CBB3><EFBFBD><EFBFBD><EFBFBD>
bool OnRequestMatchUnSignup(DWORD dwContextID, VOID * pData, WORD wDataSize, DWORD &dwUserID);
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʼ
bool OnRequestMatchStart(DWORD dwContextID, VOID * pData, WORD wDataSize, DWORD &dwUserID);
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
bool OnRequestMatchOver(DWORD dwContextID, VOID * pData, WORD wDataSize, DWORD &dwUserID);
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
bool OnRequestMatchReward(DWORD dwContextID, VOID * pData, WORD wDataSize, DWORD &dwUserID);
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̭
bool OnRequestMatchEliminate(DWORD dwContextID, VOID * pData, WORD wDataSize, DWORD &dwUserID);
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD>ɼ<EFBFBD>;
bool OnRequestMatchRecordGrades(DWORD dwContextID, VOID * pData, WORD wDataSize, DWORD &dwUserID);
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>;
bool OnRequestMatchLoadRankData(DWORD dwContextID, VOID * pData, WORD wDataSize, DWORD &dwUserID);
//˽<>˳<EFBFBD><CBB3><EFBFBD><EFBFBD><EFBFBD>
protected:
bool OnRequestPrivateInfo(DWORD dwContextID, VOID * pData, WORD wDataSize, DWORD &dwUserID);
bool OnRequestCreatePrivate(DWORD dwContextID, VOID * pData, WORD wDataSize, DWORD &dwUserID);
bool OnRequestCreatePrivateCost(DWORD dwContextID, VOID * pData, WORD wDataSize, DWORD &dwUserID);
bool OnRequestCreateUnionRoom(DWORD dwContextID, VOID * pData, WORD wDataSize, DWORD &dwUserID);
bool OnRequestUnionRoomUser(DWORD dwContextID, VOID * pData, WORD wDataSize, DWORD &dwUserID);
bool onRequestDismissUnionRoom(DWORD dwContextID, VOID * pData, WORD wDataSize, DWORD &dwUserID);
bool onRequestJoinUnionRoom(DWORD dwContextID, VOID * pData, WORD wDataSize, DWORD &dwUserID);
bool OnRequestUnionRoomEnd(DWORD dwContextID, VOID * pData, WORD wDataSize, DWORD &dwUserID);
bool OnRequestWriteUnionScore(DWORD dwContextID, VOID * pData, WORD wDataSize, DWORD &dwUserID);
bool OnRequestUnionRoomInfo(DWORD dwContextID, VOID * pData, WORD wDataSize, DWORD &dwUserID);
bool OnRequestAutoCreateUnionRoom(DWORD dwContextID, VOID * pData, WORD wDataSize, DWORD &dwUserID);
bool OnRequestAddAutoRoomInfo(DWORD dwContextID, VOID * pData, WORD wDataSize, DWORD &dwUserID);
bool OnRequestDelAutoRoomInfo(DWORD dwContextID, VOID * pData, WORD wDataSize, DWORD &dwUserID);
bool OnRequestWriteUnionChairID(DWORD dwContextID, VOID * pData, WORD wDataSize, DWORD &dwUserID);
//<2F><><EFBFBD>з<EFBFBD><D0B7><EFBFBD>
protected:
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϸ<EFBFBD><CFB7>
bool OnRequestUserSaveScore(DWORD dwContextID, VOID * pData, WORD wDataSize, DWORD &dwUserID);
//<2F><>ȡ<EFBFBD><C8A1>Ϸ<EFBFBD><CFB7>
bool OnRequestUserTakeScore(DWORD dwContextID, VOID * pData, WORD wDataSize, DWORD &dwUserID);
//ת<><D7AA><EFBFBD><EFBFBD>Ϸ<EFBFBD><CFB7>
bool OnRequestUserTransferScore(DWORD dwContextID, VOID * pData, WORD wDataSize, DWORD &dwUserID);
//<2F><>ѯ<EFBFBD><D1AF><EFBFBD><EFBFBD>
bool OnRequestQueryInsureInfo(DWORD dwContextID, VOID * pData, WORD wDataSize, DWORD &dwUserID);
//<2F><>ѯ<EFBFBD>û<EFBFBD>
bool OnRequestQueryTransferUserInfo(DWORD dwContextID, VOID * pData, WORD wDataSize, DWORD &dwUserID);
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
private:
//<2F><>¼<EFBFBD><C2BC><EFBFBD><EFBFBD>
VOID OnLogonDisposeResult(DWORD dwContextID, DWORD dwErrorCode, LPCTSTR pszErrorString, bool bMobileClient,BYTE cbDeviceType=DEVICE_TYPE_PC,WORD wBehaviorFlags=0,WORD wPageTableCount=0);
//<2F><><EFBFBD>н<EFBFBD><D0BD><EFBFBD>
VOID OnInsureDisposeResult(DWORD dwContextID, DWORD dwErrorCode, SCORE lFrozenedScore, LPCTSTR pszErrorString, bool bMobileClient,BYTE cbActivityGame=FALSE);
};
//////////////////////////////////////////////////////////////////////////////////
#endif