ril_event.h
上传用户:rftzhifu
上传日期:2017-02-21
资源大小:229k
文件大小:1k
源码类别:

android开发

开发平台:

Unix_Linux

  1. /* //device/libs/telephony/ril_event.h
  2. **
  3. ** Copyright 2008, The Android Open Source Project
  4. **
  5. ** Licensed under the Apache License, Version 2.0 (the "License"); 
  6. ** you may not use this file except in compliance with the License. 
  7. ** You may obtain a copy of the License at 
  8. **
  9. **     http://www.apache.org/licenses/LICENSE-2.0 
  10. **
  11. ** Unless required by applicable law or agreed to in writing, software 
  12. ** distributed under the License is distributed on an "AS IS" BASIS, 
  13. ** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 
  14. ** See the License for the specific language governing permissions and 
  15. ** limitations under the License.
  16. */
  17. // Max number of fd's we watch at any one time.  Increase if necessary.
  18. #define MAX_FD_EVENTS 8
  19. typedef void (*ril_event_cb)(int fd, short events, void *userdata);
  20. struct ril_event {
  21.     struct ril_event *next;
  22.     struct ril_event *prev;
  23.     int fd;
  24.     int index;
  25.     bool persist;
  26.     struct timeval timeout;
  27.     ril_event_cb func;
  28.     void *param;
  29. };
  30. // Initialize internal data structs
  31. void ril_event_init();
  32. // Initialize an event
  33. void ril_event_set(struct ril_event * ev, int fd, bool persist, ril_event_cb func, void * param);
  34. // Add event to watch list
  35. void ril_event_add(struct ril_event * ev);
  36. // Add timer event
  37. void ril_timer_add(struct ril_event * ev, struct timeval * tv);
  38. // Remove event from watch list
  39. void ril_event_del(struct ril_event * ev);
  40. // Event loop
  41. void ril_event_loop();