| 2 | #include "Bridge.h" |
| 3 | |
| 4 | class CCallbackBase |
| 5 | { |
| 6 | public: |
| 7 | CCallbackBase() { m_nCallbackFlags = 0; m_iCallback = 0; } |
| 8 | // don't add a virtual destructor because we export this binary interface across dll's |
| 9 | virtual void Run(void* pvParam) = 0; |
| 10 | virtual void Run(void* pvParam, bool bIOFailure, unsigned long long hSteamAPICall) = 0; |
| 11 | int GetICallback() { return m_iCallback; } |
| 12 | // Change current callback ID. |
| 13 | void SetICallback(int b) { m_iCallback = b; } |
| 14 | virtual int GetCallbackSizeBytes() = 0; |
| 15 | |
| 16 | protected: |
| 17 | enum { k_ECallbackFlagsRegistered = 0x01, k_ECallbackFlagsGameServer = 0x02 }; |
| 18 | unsigned char m_nCallbackFlags; |
| 19 | int m_iCallback; |
| 20 | friend class CCallbackMgr; |
| 21 | |
| 22 | private: |
| 23 | CCallbackBase(const CCallbackBase&); |
| 24 | CCallbackBase& operator=(const CCallbackBase&); |
| 25 | }; |
| 26 | |
| 27 | typedef struct |
| 28 | { |
nothing calls this directly
no outgoing calls
no test coverage detected