#pragma once class DevTree; class SCFPacket; class DriverDPC; namespace DiosCtrlBox { class ICommunicateEntity; class IPacketDispatcher; class IDPCHandler { public: IDPCHandler(){} virtual ~IDPCHandler(){} public: virtual void OnDriverEntry(DriverDPC *dpc, ResDataObject &inConfiguration, ICommunicateEntity *&outcommunicate, IPacketDispatcher *&outdispatcher, bool &outstatus) = 0; virtual void OnSetDriverWorkPath(const char *workPath) = 0; virtual void OnConnected(ICommunicateEntity *communicate) = 0; virtual void OnLoadLogicDevices(DriverDPC *dpc, DevTree *root) = 0; }; }