Files
Sun1602/SolarSlot/ISlotUpdater.h
T
2022-10-26 12:25:11 +08:00

36 lines
968 B
C++

#ifndef _SOLAR_SLOT_ISLOTUPDATER_H
#define _SOLAR_SLOT_ISLOTUPDATER_H
#pragma once
class SCItemSlot;
//==================================================================================================
// <ISlotUpdater>
// Code Hooking Handler
class ISlotUpdater
{
public:
virtual BOOL SlotUpdate(SCItemSlot* IN pItemSlot, BOOL bAddinInfo) = 0;
};
//==================================================================================================
//
class ISlotUpdaterD
{
public:
ISlotUpdaterD(ISlotUpdater* pISlotUpdater = NULL) : m_pISlotUpdater(pISlotUpdater) {}
ISlotUpdaterD(const ISlotUpdaterD& rTHIS) : m_pISlotUpdater(rTHIS.m_pISlotUpdater) {}
inline BOOL SlotUpdate(SCItemSlot* IN pItemSlot, BOOL bAddinInfo) {
return m_pISlotUpdater
? m_pISlotUpdater->SlotUpdate(pItemSlot, bAddinInfo)
: TRUE;
}
private:
ISlotUpdater* m_pISlotUpdater;
};
#endif //_SOLAR_SLOT_ISLOTUPDATER_H