7 #include "ppapi/c/pp_errors.h"
16 template <>
const char* interface_name<PPB_CompositorLayer_0_1>() {
17 return PPB_COMPOSITORLAYER_INTERFACE_0_1;
20 template <>
const char* interface_name<PPB_CompositorLayer_0_2>() {
21 return PPB_COMPOSITORLAYER_INTERFACE_0_2;
50 if (has_interface<PPB_CompositorLayer_0_2>()) {
51 return get_interface<PPB_CompositorLayer_0_2>()->
SetColor(
54 if (has_interface<PPB_CompositorLayer_0_1>()) {
55 return get_interface<PPB_CompositorLayer_0_1>()->
SetColor(
58 return PP_ERROR_NOINTERFACE;
66 if (has_interface<PPB_CompositorLayer_0_2>()) {
67 return get_interface<PPB_CompositorLayer_0_2>()->
SetTexture(
71 if (has_interface<PPB_CompositorLayer_0_1>()) {
73 return cc.
MayForce(PP_ERROR_NOTSUPPORTED);
74 return get_interface<PPB_CompositorLayer_0_1>()->
SetTexture(
78 return cc.
MayForce(PP_ERROR_NOINTERFACE);
83 if (has_interface<PPB_CompositorLayer_0_2>()) {
84 return get_interface<PPB_CompositorLayer_0_2>()->
SetImage(
88 if (has_interface<PPB_CompositorLayer_0_1>()) {
89 return get_interface<PPB_CompositorLayer_0_1>()->
SetImage(
93 return cc.
MayForce(PP_ERROR_NOINTERFACE);
99 if (has_interface<PPB_CompositorLayer_0_2>()) {
100 return get_interface<PPB_CompositorLayer_0_2>()->
SetImage(
104 if (has_interface<PPB_CompositorLayer_0_1>()) {
105 return get_interface<PPB_CompositorLayer_0_1>()->
SetImage(
109 return cc.
MayForce(PP_ERROR_NOINTERFACE);
113 if (has_interface<PPB_CompositorLayer_0_2>()) {
114 return get_interface<PPB_CompositorLayer_0_2>()->
SetClipRect(
117 if (has_interface<PPB_CompositorLayer_0_1>()) {
118 return get_interface<PPB_CompositorLayer_0_1>()->
SetClipRect(
121 return PP_ERROR_NOINTERFACE;
125 if (has_interface<PPB_CompositorLayer_0_2>()) {
126 return get_interface<PPB_CompositorLayer_0_2>()->
SetTransform(
129 if (has_interface<PPB_CompositorLayer_0_1>()) {
130 return get_interface<PPB_CompositorLayer_0_1>()->
SetTransform(
133 return PP_ERROR_NOINTERFACE;
137 if (has_interface<PPB_CompositorLayer_0_2>()) {
138 return get_interface<PPB_CompositorLayer_0_2>()->
SetOpacity(
141 if (has_interface<PPB_CompositorLayer_0_1>()) {
142 return get_interface<PPB_CompositorLayer_0_1>()->
SetOpacity(
145 return PP_ERROR_NOINTERFACE;
149 if (has_interface<PPB_CompositorLayer_0_2>()) {
150 return get_interface<PPB_CompositorLayer_0_2>()->
SetBlendMode(
153 if (has_interface<PPB_CompositorLayer_0_1>()) {
154 return get_interface<PPB_CompositorLayer_0_1>()->
SetBlendMode(
157 return PP_ERROR_NOINTERFACE;
161 if (has_interface<PPB_CompositorLayer_0_2>()) {
162 return get_interface<PPB_CompositorLayer_0_2>()->
SetSourceRect(
165 if (has_interface<PPB_CompositorLayer_0_1>()) {
166 return get_interface<PPB_CompositorLayer_0_1>()->
SetSourceRect(
169 return PP_ERROR_NOINTERFACE;
173 if (has_interface<PPB_CompositorLayer_0_2>()) {
177 if (has_interface<PPB_CompositorLayer_0_1>()) {
181 return PP_ERROR_NOINTERFACE;
185 if (has_interface<PPB_CompositorLayer_0_2>()) {
186 return PP_ToBool(get_interface<PPB_CompositorLayer_0_2>()->
189 if (has_interface<PPB_CompositorLayer_0_1>()) {
190 return PP_ToBool(get_interface<PPB_CompositorLayer_0_1>()->
int32_t SetImage(const ImageData &image, const CompletionCallback &callback)
int32_t SetSourceRect(const FloatRect &rect)
int32_t SetColor(float red, float green, float blue, float alpha, const Size &size)
int32_t SetTexture(const Graphics3D &context, uint32_t target, uint32_t texture, const Size &size, const CompletionCallback &cc)
int32_t SetOpacity(float opacity)
const PP_Size & pp_size() const
int32_t MayForce(int32_t result) const
const PP_CompletionCallback & pp_completion_callback() const
int32_t SetPremultipliedAlpha(bool premult)
This class represents a 3D rendering context in the browser.
int32_t SetTransform(const float matrix[16])
A size of an object based on width and height.
int32_t SetClipRect(const Rect &rect)
~CompositorLayer()
Destructor.
int32_t SetBlendMode(PP_BlendMode mode)
static bool IsCompositorLayer(const Resource &resource)
PP_Resource pp_resource() const
A reference counted module resource.
const PP_Rect & pp_rect() const
const PP_FloatRect & pp_float_rect() const