7 #include "ppapi/c/dev/ppp_video_capture_dev.h"
16 const char kPPPVideoCaptureInterface[] = PPP_VIDEO_CAPTURE_DEV_INTERFACE;
18 void OnDeviceInfo(PP_Instance instance,
20 const struct PP_VideoCaptureDeviceInfo_Dev* info,
21 uint32_t buffer_count,
23 VideoCaptureClient_Dev* client =
static_cast<VideoCaptureClient_Dev*
>(
28 std::vector<Buffer_Dev> buffer_list;
29 buffer_list.reserve(buffer_count);
30 for (uint32_t i = 0; i < buffer_count; ++i)
31 buffer_list.push_back(Buffer_Dev(buffers[i]));
33 client->OnDeviceInfo(resource, *info, buffer_list);
36 void OnStatus(PP_Instance instance,
PP_Resource resource, uint32_t status) {
37 VideoCaptureClient_Dev* client =
static_cast<VideoCaptureClient_Dev*
>(
40 client->OnStatus(resource, status);
43 void OnError(PP_Instance instance,
PP_Resource resource, uint32_t error_code) {
44 VideoCaptureClient_Dev* client =
static_cast<VideoCaptureClient_Dev*
>(
47 client->OnError(resource, error_code);
50 void OnBufferReady(PP_Instance instance,
53 VideoCaptureClient_Dev* client =
static_cast<VideoCaptureClient_Dev*
>(
56 client->OnBufferReady(resource, buffer);
59 PPP_VideoCapture_Dev ppp_video_capture = {
69 : instance_(instance) {
77 kPPPVideoCaptureInterface,
this);
void AddPluginInterface(const std::string &interface_name, const void *vtable)
void RemovePerInstanceObject(const std::string &interface_name, void *object)
static void * GetPerInstanceObject(PP_Instance instance, const std::string &interface_name)
void AddPerInstanceObject(const std::string &interface_name, void *object)
VideoCaptureClient_Dev(Instance *instance)
virtual ~VideoCaptureClient_Dev()