GraphicsSurface.cpp [plain text]
#include "config.h"
#include "GraphicsSurface.h"
#include "NotImplemented.h"
#if USE(GRAPHICS_SURFACE)
namespace WebCore {
PassRefPtr<GraphicsSurface> GraphicsSurface::create(const IntSize& size, Flags flags, const GraphicsSurfaceToken& token)
{
return platformImport(size, flags, token);
}
PassRefPtr<GraphicsSurface> GraphicsSurface::create(const IntSize& size, GraphicsSurface::Flags flags, const PlatformGraphicsContext3D shareContext)
{
return platformCreate(size, flags, shareContext);
}
GraphicsSurfaceToken GraphicsSurface::exportToken()
{
return platformExport();
}
uint32_t GraphicsSurface::getTextureID()
{
return platformGetTextureID();
}
std::unique_ptr<GraphicsContext> GraphicsSurface::beginPaint(const IntRect& rect, LockOptions lockOptions)
{
int stride = 0;
char* bits = platformLock(rect, &stride, lockOptions);
auto graphicsContext = platformBeginPaint(rect.size(), bits, stride);
return graphicsContext;
}
void GraphicsSurface::copyToGLTexture(uint32_t target, uint32_t texture, const IntRect& targetRect, const IntPoint& offset)
{
platformCopyToGLTexture(target, texture, targetRect, offset);
}
void GraphicsSurface::copyFromTexture(uint32_t texture, const IntRect& sourceRect)
{
platformCopyFromTexture(texture, sourceRect);
}
void GraphicsSurface::paintToTextureMapper(TextureMapper& textureMapper, const FloatRect& targetRect, const TransformationMatrix& transform, float opacity)
{
platformPaintToTextureMapper(textureMapper, targetRect, transform, opacity);
}
uint32_t GraphicsSurface::frontBuffer()
{
return platformFrontBuffer();
}
uint32_t GraphicsSurface::swapBuffers()
{
return platformSwapBuffers();
}
IntSize GraphicsSurface::size() const
{
return platformSize();
}
GraphicsSurface::GraphicsSurface(const IntSize&, Flags flags)
: m_flags(flags)
, m_fbo(0)
, m_private(0)
{
}
GraphicsSurface::~GraphicsSurface()
{
platformDestroy();
}
}
#endif