iw4x-client/src/Components/Modules/QuickPatch.hpp
2017-02-12 20:36:38 +01:00

43 lines
1.0 KiB
C++

#pragma once
namespace Components
{
class QuickPatch : public Component
{
public:
typedef void(Callback)();
QuickPatch();
~QuickPatch();
#if defined(DEBUG) || defined(FORCE_UNIT_TESTS)
const char* getName() override { return "QuickPatch"; };
#endif
bool unitTest() override;
static void UnlockStats();
static void OnShutdown(Utils::Slot<Callback> callback);
static void OnFrame(Utils::Slot<Callback> callback);
static void OnReady(Utils::Slot<Callback> callback);
static void Once(Utils::Slot<Callback> callback);
private:
static bool ReadyPassed;
static Utils::Signal<Callback> ReadySignal;
static Utils::Signal<Callback> ShutdownSignal;
static int64_t* GetStatsID();
static void ShutdownStub(int num);
static void ReadyHandler();
static void SelectStringTableEntryInDvarStub();
static int MsgReadBitsCompressCheckSV(const char *from, char *to, int size);
static int MsgReadBitsCompressCheckCL(const char *from, char *to, int size);
static void CompareMaterialStateBits();
};
}