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