2
0

mpp_event_trigger.h 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. /*
  2. * Copyright 2017 Rockchip Electronics Co. LTD
  3. *
  4. * Licensed under the Apache License, Version 2.0 (the "License");
  5. * you may not use this file except in compliance with the License.
  6. * You may obtain a copy of the License at
  7. *
  8. * http://www.apache.org/licenses/LICENSE-2.0
  9. *
  10. * Unless required by applicable law or agreed to in writing, software
  11. * distributed under the License is distributed on an "AS IS" BASIS,
  12. * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  13. * See the License for the specific language governing permissions and
  14. * limitations under the License.
  15. */
  16. #ifndef __MPP_EVENT_TRIGGER_H__
  17. #define __MPP_EVENT_TRIGGER_H__
  18. typedef void (*event_trigger)(void *parent, void *event);
  19. struct ievent {
  20. int idx;
  21. void *event;
  22. };
  23. struct event_packet {
  24. int cnt;
  25. int loop;
  26. struct ievent e[128];
  27. };
  28. struct event_ctx {
  29. int (*notify)(void *param);
  30. };
  31. struct event_ctx* event_ctx_create(struct event_packet *e,
  32. event_trigger trigger, void *parent);
  33. void event_ctx_release(struct event_ctx *ictx);
  34. #endif