xref: /rockchip-linux_mpp/test/mpp_event_trigger.h (revision 437bfbeb9567cca9cd9080e3f6954aa9d6a94f18)
1 /* SPDX-License-Identifier: Apache-2.0 OR MIT */
2 /*
3  * Copyright (c) 2017 Rockchip Electronics Co., Ltd.
4  */
5 
6 #ifndef __MPP_EVENT_TRIGGER_H__
7 #define __MPP_EVENT_TRIGGER_H__
8 
9 typedef void (*event_trigger)(void *parent, void *event);
10 
11 struct ievent {
12     int idx;
13     void *event;
14 };
15 
16 struct event_packet {
17     int cnt;
18     int loop;
19     struct ievent e[128];
20 };
21 
22 struct event_ctx {
23     int (*notify)(void *param);
24 };
25 
26 struct event_ctx* event_ctx_create(struct event_packet *e,
27                                    event_trigger trigger, void *parent);
28 void event_ctx_release(struct event_ctx *ictx);
29 
30 #endif
31