You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
79 lines
2.5 KiB
79 lines
2.5 KiB
9 years ago
|
/* Copyright 2014 The Chromium Authors. All rights reserved.
|
||
|
* Use of this source code is governed by a BSD-style license that can be
|
||
|
* found in the LICENSE file.
|
||
|
*/
|
||
|
|
||
|
/* From private/ppb_input_event_private.idl,
|
||
|
* modified Tue May 20 18:31:39 2014.
|
||
|
*/
|
||
|
|
||
|
#ifndef PPAPI_C_PRIVATE_PPB_INPUT_EVENT_PRIVATE_H_
|
||
|
#define PPAPI_C_PRIVATE_PPB_INPUT_EVENT_PRIVATE_H_
|
||
|
|
||
|
#include "ppapi/c/pp_bool.h"
|
||
|
#include "ppapi/c/pp_instance.h"
|
||
|
#include "ppapi/c/pp_macros.h"
|
||
|
#include "ppapi/c/pp_resource.h"
|
||
|
#include "ppapi/c/pp_stdint.h"
|
||
|
|
||
|
#define PPB_INPUTEVENT_PRIVATE_INTERFACE_0_1 "PPB_InputEvent_Private;0.1"
|
||
|
#define PPB_INPUTEVENT_PRIVATE_INTERFACE PPB_INPUTEVENT_PRIVATE_INTERFACE_0_1
|
||
|
|
||
|
/**
|
||
|
* @file
|
||
|
* This file defines the PPB_InputEvent_Private interfaces.
|
||
|
*/
|
||
|
|
||
|
|
||
|
/**
|
||
|
* @addtogroup Interfaces
|
||
|
* @{
|
||
|
*/
|
||
|
/**
|
||
|
* The <code>PPB_InputEvent_Private</code> interface contains pointers to
|
||
|
several
|
||
|
* functions related to generic input events on the browser.
|
||
|
*/
|
||
|
struct PPB_InputEvent_Private_0_1 {
|
||
|
/**
|
||
|
* TraceInputLatency() traces the latency of the input event. The input
|
||
|
* latency is shown in the trace viewer. The starting point of the input
|
||
|
* latency is when the input event is sent from renderer to plugin. If the
|
||
|
* input event does not cause any rendering damage, the end point of input
|
||
|
* latency is when TraceInputLatency() is called on the event. If the input
|
||
|
* event does cause rendering damage, the end point of input latency is when
|
||
|
* the resulted plugin frame eventually reaches screen.
|
||
|
*
|
||
|
* Notes: In the current version, only Graphics2D damage is considered as
|
||
|
* rendering damage. And it works only when the Graphics2Ds are bound to
|
||
|
* the plugin instance.
|
||
|
*
|
||
|
* @param[in] event A <code>PP_Resource</code> corresponding to an input
|
||
|
* event.
|
||
|
*
|
||
|
* @param[in] has_damage A bool indicating whether the event has caused any
|
||
|
* rendering damage.
|
||
|
*
|
||
|
* @return <code>PP_TRUE</code> if the latency for the given event is tracked.
|
||
|
*/
|
||
|
PP_Bool (*TraceInputLatency)(PP_Resource event, PP_Bool has_damage);
|
||
|
/**
|
||
|
* StartTrackingLatency() requests input latency to be tracked.
|
||
|
*
|
||
|
* Without calling StartTrackingLatency() first, TraceInputLatency() won't
|
||
|
* take effect.
|
||
|
*
|
||
|
* @param[in] instance The <code>PP_Instance</code> of the instance requesting
|
||
|
* to start tracking input latency.
|
||
|
*/
|
||
|
void (*StartTrackingLatency)(PP_Instance instance);
|
||
|
};
|
||
|
|
||
|
typedef struct PPB_InputEvent_Private_0_1 PPB_InputEvent_Private;
|
||
|
/**
|
||
|
* @}
|
||
|
*/
|
||
|
|
||
|
#endif /* PPAPI_C_PRIVATE_PPB_INPUT_EVENT_PRIVATE_H_ */
|
||
|
|