gecko-dev/gfx/layers/GLImages.h
Wes Kocher 36939bc3c8 Backed out 9 changesets (bug 1014614) for Android mochitest bustage on a CLOSED TREE
Backed out changeset 40f99ba7f616 (bug 1014614)
Backed out changeset 8fbc3c85adfc (bug 1014614)
Backed out changeset 40dbd7c6ce65 (bug 1014614)
Backed out changeset f2b504bdd7c5 (bug 1014614)
Backed out changeset c878e29fbef9 (bug 1014614)
Backed out changeset 511dcc817f5d (bug 1014614)
Backed out changeset 2b72e71f1fdf (bug 1014614)
Backed out changeset 8b530a9a2f99 (bug 1014614)
Backed out changeset 7fa1b78de684 (bug 1014614)
2014-10-17 16:34:01 -07:00

76 lines
1.7 KiB
C++

/* -*- Mode: C++; tab-width: 20; indent-tabs-mode: nil; c-basic-offset: 2 -*-
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
#ifndef GFX_GLIMAGES_H
#define GFX_GLIMAGES_H
#include "GLTypes.h"
#include "ImageContainer.h" // for Image
#include "ImageTypes.h" // for ImageFormat::SHARED_GLTEXTURE
#include "nsCOMPtr.h" // for already_AddRefed
#include "mozilla/gfx/Point.h" // for IntSize
class nsSurfaceTexture;
namespace mozilla {
namespace layers {
class EGLImageImage : public Image {
public:
struct Data {
EGLImage mImage;
gfx::IntSize mSize;
bool mInverted;
};
void SetData(const Data& aData) { mData = aData; }
const Data* GetData() { return &mData; }
gfx::IntSize GetSize() { return mData.mSize; }
virtual TemporaryRef<gfx::SourceSurface> GetAsSourceSurface() MOZ_OVERRIDE
{
return nullptr;
}
EGLImageImage() : Image(nullptr, ImageFormat::EGLIMAGE) {}
private:
Data mData;
};
#ifdef MOZ_WIDGET_ANDROID
class SurfaceTextureImage : public Image {
public:
struct Data {
nsSurfaceTexture* mSurfTex;
gfx::IntSize mSize;
bool mInverted;
};
void SetData(const Data& aData) { mData = aData; }
const Data* GetData() { return &mData; }
gfx::IntSize GetSize() { return mData.mSize; }
virtual TemporaryRef<gfx::SourceSurface> GetAsSourceSurface() MOZ_OVERRIDE
{
return nullptr;
}
SurfaceTextureImage() : Image(nullptr, ImageFormat::SURFACE_TEXTURE) {}
private:
Data mData;
};
#endif // MOZ_WIDGET_ANDROID
} // layers
} // mozilla
#endif // GFX_GLIMAGES_H