jack1 codebase
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

42 lines
1.2KB

  1. #ifndef __jack_libjack_local_h__
  2. #define __jack_libjack_local_h__
  3. /* Client data structure, in the client's address space. */
  4. struct _jack_client {
  5. jack_control_t *engine;
  6. jack_client_control_t *control;
  7. struct pollfd *pollfd;
  8. int pollmax;
  9. int graph_next_fd;
  10. int request_fd;
  11. JSList *port_segments;
  12. JSList *ports;
  13. pthread_t thread;
  14. char fifo_prefix[PATH_MAX+1];
  15. void (*on_shutdown)(void *arg);
  16. void *on_shutdown_arg;
  17. char thread_ok : 1;
  18. char first_active : 1;
  19. char new_timebase : 1;
  20. pthread_t thread_id;
  21. #if defined(__APPLE__) && defined(__POWERPC__)
  22. /* specific ressources for server/client real-time thread communication */
  23. mach_port_t clienttask, bp, serverport, replyport;
  24. trivial_message message;
  25. pthread_t process_thread;
  26. #endif
  27. };
  28. extern int jack_client_deliver_request (const jack_client_t *client, jack_request_t *req);
  29. extern jack_port_t *jack_port_new (const jack_client_t *client, jack_port_id_t port_id, jack_control_t *control);
  30. extern void jack_call_sync_client (jack_client_t *client);
  31. extern void jack_call_timebase_master (jack_client_t *client);
  32. extern void *jack_zero_filled_buffer;
  33. #endif /* __jack_libjack_local_h__ */