2016-12-24 17:36:27 +00:00
|
|
|
#pragma once
|
2017-01-01 14:59:54 +00:00
|
|
|
#include "ObjectHandle.h"
|
2016-12-25 15:19:03 +00:00
|
|
|
#include "Parameter.h"
|
2016-12-24 17:36:27 +00:00
|
|
|
|
2016-12-29 10:51:38 +00:00
|
|
|
#include "Context.h"
|
|
|
|
|
2016-12-24 17:36:27 +00:00
|
|
|
namespace graphics {
|
|
|
|
|
|
|
|
class ContextImpl
|
|
|
|
{
|
|
|
|
public:
|
|
|
|
virtual ~ContextImpl() {}
|
|
|
|
virtual void init() = 0;
|
|
|
|
virtual void destroy() = 0;
|
2017-01-01 14:59:54 +00:00
|
|
|
virtual ObjectHandle createTexture(Parameter _target) = 0;
|
|
|
|
virtual void deleteTexture(ObjectHandle _name) = 0;
|
2016-12-29 10:51:38 +00:00
|
|
|
virtual void init2DTexture(const Context::InitTextureParams & _params) = 0;
|
2017-01-01 14:59:54 +00:00
|
|
|
virtual void setTextureParameters(const Context::TexParameters & _parameters) = 0;
|
2017-01-02 14:00:49 +00:00
|
|
|
virtual ObjectHandle createFramebuffer() = 0;
|
|
|
|
virtual void deleteFramebuffer(ObjectHandle _name) = 0;
|
|
|
|
virtual void addFrameBufferRenderTarget(const Context::FrameBufferRenderTarget & _params) = 0;
|
2017-01-02 15:40:41 +00:00
|
|
|
virtual ObjectHandle createRenderbuffer() = 0;
|
|
|
|
virtual void initRenderbuffer(const Context::InitRenderbufferParams & _params) = 0;
|
2016-12-24 17:36:27 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
}
|