GPU classes: Replace "virtual" with "override" for free function type checking

This commit is contained in:
Henrik Rydgård 2015-07-25 14:22:43 +02:00
parent 0726912f09
commit 6fee2b456c
4 changed files with 97 additions and 100 deletions

View file

@ -33,41 +33,40 @@ namespace DX9 {
class ShaderManagerDX9;
class LinkedShaderDX9;
class DIRECTX9_GPU : public GPUCommon
{
class DIRECTX9_GPU : public GPUCommon {
public:
DIRECTX9_GPU();
~DIRECTX9_GPU();
virtual void InitClear();
virtual void PreExecuteOp(u32 op, u32 diff);
virtual void ExecuteOp(u32 op, u32 diff);
void InitClear() override;
void PreExecuteOp(u32 op, u32 diff) override;
void ExecuteOp(u32 op, u32 diff) override;
virtual void SetDisplayFramebuffer(u32 framebuf, u32 stride, GEBufferFormat format);
virtual void CopyDisplayToOutput();
virtual void BeginFrame();
virtual void UpdateStats();
virtual void InvalidateCache(u32 addr, int size, GPUInvalidationType type);
virtual bool PerformMemoryCopy(u32 dest, u32 src, int size);
virtual bool PerformMemorySet(u32 dest, u8 v, int size);
virtual bool PerformMemoryDownload(u32 dest, int size);
virtual bool PerformMemoryUpload(u32 dest, int size);
virtual bool PerformStencilUpload(u32 dest, int size);
virtual void ClearCacheNextFrame();
virtual void DeviceLost(); // Only happens on Android. Drop all textures and shaders.
void SetDisplayFramebuffer(u32 framebuf, u32 stride, GEBufferFormat format) override;
void CopyDisplayToOutput() override;
void BeginFrame() override;
void UpdateStats() override;
void InvalidateCache(u32 addr, int size, GPUInvalidationType type) override;
bool PerformMemoryCopy(u32 dest, u32 src, int size) override;
bool PerformMemorySet(u32 dest, u8 v, int size) override;
bool PerformMemoryDownload(u32 dest, int size) override;
bool PerformMemoryUpload(u32 dest, int size) override;
bool PerformStencilUpload(u32 dest, int size) override;
void ClearCacheNextFrame() override;
void DeviceLost() override; // Only happens on Android. Drop all textures and shaders.
void DumpNextFrame() override;
void DoState(PointerWrap &p) override;
virtual void DumpNextFrame();
virtual void DoState(PointerWrap &p);
// Called by the window system if the window size changed. This will be reflected in PSPCoreParam.pixel*.
virtual void Resized();
virtual void ClearShaderCache();
virtual bool DecodeTexture(u8 *dest, const GPUgstate &state) {
void Resized() override;
void ClearShaderCache() override;
bool DecodeTexture(u8 *dest, const GPUgstate &state) override {
return textureCache_.DecodeTexture(dest, state);
}
virtual bool FramebufferDirty();
virtual bool FramebufferReallyDirty();
bool FramebufferDirty() override;
bool FramebufferReallyDirty() override;
virtual void GetReportingInfo(std::string &primaryInfo, std::string &fullInfo) {
void GetReportingInfo(std::string &primaryInfo, std::string &fullInfo) override {
primaryInfo = reportingPrimaryInfo_;
fullInfo = reportingFullInfo_;
}

View file

@ -36,39 +36,39 @@ class GLES_GPU : public GPUCommon {
public:
GLES_GPU();
~GLES_GPU();
virtual void InitClear();
virtual void Reinitialize();
virtual void PreExecuteOp(u32 op, u32 diff);
void InitClear() override;
void Reinitialize() override;
void PreExecuteOp(u32 op, u32 diff) override;
void Execute_Generic(u32 op, u32 diff);
virtual void ExecuteOp(u32 op, u32 diff);
void ExecuteOp(u32 op, u32 diff) override;
virtual void SetDisplayFramebuffer(u32 framebuf, u32 stride, GEBufferFormat format);
virtual void CopyDisplayToOutput();
virtual void BeginFrame();
virtual void UpdateStats();
virtual void InvalidateCache(u32 addr, int size, GPUInvalidationType type);
virtual bool PerformMemoryCopy(u32 dest, u32 src, int size);
virtual bool PerformMemorySet(u32 dest, u8 v, int size);
virtual bool PerformMemoryDownload(u32 dest, int size);
virtual bool PerformMemoryUpload(u32 dest, int size);
virtual bool PerformStencilUpload(u32 dest, int size);
virtual void ClearCacheNextFrame();
virtual void DeviceLost(); // Only happens on Android. Drop all textures and shaders.
void SetDisplayFramebuffer(u32 framebuf, u32 stride, GEBufferFormat format) override;
void CopyDisplayToOutput() override;
void BeginFrame() override;
void UpdateStats() override;
void InvalidateCache(u32 addr, int size, GPUInvalidationType type) override;
bool PerformMemoryCopy(u32 dest, u32 src, int size) override;
bool PerformMemorySet(u32 dest, u8 v, int size) override;
bool PerformMemoryDownload(u32 dest, int size) override;
bool PerformMemoryUpload(u32 dest, int size) override;
bool PerformStencilUpload(u32 dest, int size) override;
void ClearCacheNextFrame() override;
void DeviceLost() override; // Only happens on Android. Drop all textures and shaders.
virtual void DumpNextFrame();
virtual void DoState(PointerWrap &p);
void DumpNextFrame() override;
void DoState(PointerWrap &p) override;
// Called by the window system if the window size changed. This will be reflected in PSPCoreParam.pixel*.
virtual void Resized();
virtual void ClearShaderCache();
virtual void CleanupBeforeUI();
virtual bool DecodeTexture(u8 *dest, const GPUgstate &state) {
void Resized() override;
void ClearShaderCache() override;
void CleanupBeforeUI() override;
bool DecodeTexture(u8 *dest, const GPUgstate &state) override {
return textureCache_.DecodeTexture(dest, state);
}
virtual bool FramebufferDirty();
virtual bool FramebufferReallyDirty();
bool FramebufferDirty() override;
bool FramebufferReallyDirty() override;
virtual void GetReportingInfo(std::string &primaryInfo, std::string &fullInfo) {
void GetReportingInfo(std::string &primaryInfo, std::string &fullInfo) override {
primaryInfo = reportingPrimaryInfo_;
fullInfo = reportingFullInfo_;
}
@ -81,7 +81,7 @@ public:
static bool GetDisplayFramebuffer(GPUDebugBuffer &buffer);
bool GetCurrentSimpleVertices(int count, std::vector<GPUDebugVertex> &vertices, std::vector<u16> &indices);
virtual bool DescribeCodePtr(const u8 *ptr, std::string &name);
bool DescribeCodePtr(const u8 *ptr, std::string &name) override;
typedef void (GLES_GPU::*CmdFunc)(u32 op, u32 diff);
struct CommandInfo {

View file

@ -21,39 +21,38 @@
class ShaderManager;
class NullGPU : public GPUCommon
{
class NullGPU : public GPUCommon {
public:
NullGPU();
~NullGPU();
virtual void InitClear() {}
virtual void ExecuteOp(u32 op, u32 diff);
void InitClear() override {}
void ExecuteOp(u32 op, u32 diff) override;
virtual void BeginFrame() {}
virtual void SetDisplayFramebuffer(u32 framebuf, u32 stride, GEBufferFormat format) {}
virtual void CopyDisplayToOutput() {}
virtual void UpdateStats();
virtual void InvalidateCache(u32 addr, int size, GPUInvalidationType type);
virtual bool PerformMemoryCopy(u32 dest, u32 src, int size);
virtual bool PerformMemorySet(u32 dest, u8 v, int size);
virtual bool PerformMemoryDownload(u32 dest, int size);
virtual bool PerformMemoryUpload(u32 dest, int size);
virtual bool PerformStencilUpload(u32 dest, int size);
virtual void ClearCacheNextFrame() {};
void BeginFrame() override {}
void SetDisplayFramebuffer(u32 framebuf, u32 stride, GEBufferFormat format) override {}
void CopyDisplayToOutput() override {}
void UpdateStats() override;
void InvalidateCache(u32 addr, int size, GPUInvalidationType type) override;
bool PerformMemoryCopy(u32 dest, u32 src, int size) override;
bool PerformMemorySet(u32 dest, u8 v, int size) override;
bool PerformMemoryDownload(u32 dest, int size) override;
bool PerformMemoryUpload(u32 dest, int size) override;
bool PerformStencilUpload(u32 dest, int size) override;
void ClearCacheNextFrame() override {}
virtual void DeviceLost() {}
virtual void DumpNextFrame() {}
void DeviceLost() override {}
void DumpNextFrame() override {}
virtual void Resized() {}
virtual void GetReportingInfo(std::string &primaryInfo, std::string &fullInfo) {
void Resized() override {}
void GetReportingInfo(std::string &primaryInfo, std::string &fullInfo) override {
primaryInfo = "NULL";
fullInfo = "NULL";
}
virtual bool FramebufferReallyDirty() {
bool FramebufferReallyDirty() override {
return !(gstate_c.skipDrawReason & SKIPDRAW_SKIPFRAME);
}
protected:
virtual void FastRunLoop(DisplayList &list);
void FastRunLoop(DisplayList &list) override;
};

View file

@ -46,50 +46,49 @@ typedef struct {
class ShaderManager;
class SoftGPU : public GPUCommon
{
class SoftGPU : public GPUCommon {
public:
SoftGPU();
~SoftGPU();
virtual void InitClear() {}
virtual void ExecuteOp(u32 op, u32 diff);
void InitClear() override {}
void ExecuteOp(u32 op, u32 diff) override;
virtual void BeginFrame() {}
virtual void SetDisplayFramebuffer(u32 framebuf, u32 stride, GEBufferFormat format);
virtual void CopyDisplayToOutput();
virtual void UpdateStats();
virtual void InvalidateCache(u32 addr, int size, GPUInvalidationType type);
virtual bool PerformMemoryCopy(u32 dest, u32 src, int size);
virtual bool PerformMemorySet(u32 dest, u8 v, int size);
virtual bool PerformMemoryDownload(u32 dest, int size);
virtual bool PerformMemoryUpload(u32 dest, int size);
virtual bool PerformStencilUpload(u32 dest, int size);
virtual void ClearCacheNextFrame() {};
void BeginFrame() override {}
void SetDisplayFramebuffer(u32 framebuf, u32 stride, GEBufferFormat format) override;
void CopyDisplayToOutput() override;
void UpdateStats() override;
void InvalidateCache(u32 addr, int size, GPUInvalidationType type) override;
bool PerformMemoryCopy(u32 dest, u32 src, int size) override;
bool PerformMemorySet(u32 dest, u8 v, int size) override;
bool PerformMemoryDownload(u32 dest, int size) override;
bool PerformMemoryUpload(u32 dest, int size) override;
bool PerformStencilUpload(u32 dest, int size) override;
void ClearCacheNextFrame() override {}
virtual void DeviceLost() {}
virtual void DumpNextFrame() {}
void DeviceLost() override {}
void DumpNextFrame() override {}
virtual void Resized() {}
virtual void GetReportingInfo(std::string &primaryInfo, std::string &fullInfo) {
void Resized() override {}
void GetReportingInfo(std::string &primaryInfo, std::string &fullInfo) override {
primaryInfo = "Software";
fullInfo = "Software";
}
virtual bool FramebufferDirty();
bool FramebufferDirty() override;
virtual bool FramebufferReallyDirty() {
bool FramebufferReallyDirty() override {
return !(gstate_c.skipDrawReason & SKIPDRAW_SKIPFRAME);
}
virtual bool GetCurrentFramebuffer(GPUDebugBuffer &buffer);
virtual bool GetCurrentDepthbuffer(GPUDebugBuffer &buffer);
virtual bool GetCurrentStencilbuffer(GPUDebugBuffer &buffer);
virtual bool GetCurrentTexture(GPUDebugBuffer &buffer, int level);
bool GetCurrentFramebuffer(GPUDebugBuffer &buffer) override;
bool GetCurrentDepthbuffer(GPUDebugBuffer &buffer) override;
bool GetCurrentStencilbuffer(GPUDebugBuffer &buffer) override;
bool GetCurrentTexture(GPUDebugBuffer &buffer, int level) override;
bool GetCurrentSimpleVertices(int count, std::vector<GPUDebugVertex> &vertices, std::vector<u16> &indices);
protected:
virtual void FastRunLoop(DisplayList &list);
virtual void ProcessEvent(GPUEvent ev);
void FastRunLoop(DisplayList &list) override;
void ProcessEvent(GPUEvent ev) override;
void CopyToCurrentFboFromDisplayRam(int srcwidth, int srcheight);
private: