19 #ifndef MIR_TEST_DOUBLES_MOCK_HWC_COMPOSER_DEVICE_1_H_
20 #define MIR_TEST_DOUBLES_MOCK_HWC_COMPOSER_DEVICE_1_H_
22 #include <hardware/hwcomposer.h>
23 #include <gmock/gmock.h>
37 using namespace testing;
39 common.version = HWC_DEVICE_API_VERSION_1_1;
49 ON_CALL(*
this, set_interface(_,_,_))
51 ON_CALL(*
this, prepare_interface(_,_,_))
55 int save_args(hwc_display_contents_1_t* out, hwc_display_contents_1_t** in)
57 if ((
nullptr == in) || (
nullptr == *in))
60 hwc_display_contents_1_t* primary_display = *in;
61 memcpy(out, primary_display,
sizeof(hwc_display_contents_1_t));
79 return mocker->registerProcs_interface(mock_hwc, procs);
81 static int hook_eventControl(
struct hwc_composer_device_1* mock_hwc,
int disp,
int event,
int enabled)
84 return mocker->eventControl_interface(mock_hwc, disp, event, enabled);
86 static int hook_set(
struct hwc_composer_device_1 *mock_hwc,
size_t numDisplays, hwc_display_contents_1_t** displays)
89 return mocker->set_interface(mock_hwc, numDisplays, displays);
91 static int hook_prepare(
struct hwc_composer_device_1 *mock_hwc,
size_t numDisplays, hwc_display_contents_1_t** displays)
94 return mocker->prepare_interface(mock_hwc, numDisplays, displays);
96 static int hook_blank(
struct hwc_composer_device_1 *mock_hwc,
int disp,
int blank)
99 return mocker->blank_interface(mock_hwc, disp, blank);
102 static int hook_getDisplayConfigs(
struct hwc_composer_device_1* mock_hwc,
int disp, uint32_t* configs,
size_t* numConfigs)
105 return mocker->getDisplayConfigs_interface(mock_hwc, disp, configs, numConfigs);
108 static int hook_getDisplayAttributes(
struct hwc_composer_device_1* mock_hwc,
int disp, uint32_t config,
const uint32_t* attributes, int32_t* values)
111 return mocker->getDisplayAttributes_interface(mock_hwc, disp, config, attributes, values);
114 MOCK_METHOD2(registerProcs_interface,
void(
struct hwc_composer_device_1*, hwc_procs_t
const*));
115 MOCK_METHOD4(eventControl_interface,
int(
struct hwc_composer_device_1* dev,
int disp,
int event,
int enabled));
116 MOCK_METHOD3(set_interface,
int(
struct hwc_composer_device_1 *,
size_t, hwc_display_contents_1_t**));
117 MOCK_METHOD3(prepare_interface,
int(
struct hwc_composer_device_1 *,
size_t, hwc_display_contents_1_t**));
118 MOCK_METHOD3(blank_interface,
int(
struct hwc_composer_device_1 *,
int,
int));
119 MOCK_METHOD4(getDisplayConfigs_interface,
int(
struct hwc_composer_device_1*,
int, uint32_t*,
size_t*));
120 MOCK_METHOD5(getDisplayAttributes_interface,
int(
struct hwc_composer_device_1*,
int, uint32_t,
const uint32_t*, int32_t*));