34 #ifndef __JACK_FFADO_DRIVER_H__    35 #define __JACK_FFADO_DRIVER_H__    37 #include <libffado/ffado.h>    45 #include <netinet/in.h>    49 #include <semaphore.h>    58 #define DEBUG_LEVEL_BUFFERS             (1<<0)    59 #define DEBUG_LEVEL_HANDLERS                    (1<<1)    60 #define DEBUG_LEVEL_XRUN_RECOVERY       (1<<2)    61 #define DEBUG_LEVEL_WAIT                        (1<<3)    63 #define DEBUG_LEVEL_RUN_CYCLE           (1<<8)    65 #define DEBUG_LEVEL_PACKETCOUNTER               (1<<16)    66 #define DEBUG_LEVEL_STARTUP                             (1<<17)    67 #define DEBUG_LEVEL_THREADS                             (1<<18)    73 #define DEBUG_LEVEL (  DEBUG_LEVEL_RUN_CYCLE | \    74         (DEBUG_LEVEL_XRUN_RECOVERY)| DEBUG_LEVEL_STARTUP | DEBUG_LEVEL_WAIT | DEBUG_LEVEL_PACKETCOUNTER)    76 #warning Building debug build!    78 #define printMessage(format, args...) jack_error( "firewire MSG: %s:%d (%s): " format,  __FILE__, __LINE__, __FUNCTION__, ##args )    79 #define printError(format, args...) jack_error( "firewire ERR: %s:%d (%s): " format,  __FILE__, __LINE__, __FUNCTION__, ##args )    81 #define printEnter() jack_error( "FWDRV ENTERS: %s (%s)\n", __FUNCTION__,  __FILE__)    82 #define printExit() jack_error( "FWDRV EXITS: %s (%s)\n", __FUNCTION__,  __FILE__)    86 #define debugError(format, args...) jack_error( "firewire ERR: %s:%d (%s): " format,  __FILE__, __LINE__, __FUNCTION__, ##args )    87 #define debugPrint(Level, format, args...) if(DEBUG_LEVEL & (Level))  jack_error("DEBUG %s:%d (%s) :"  format, __FILE__, __LINE__, __FUNCTION__, ##args );    88 #define debugPrintShort(Level, format, args...) if(DEBUG_LEVEL & (Level))  jack_error( format,##args );    89 #define debugPrintWithTimeStamp(Level, format, args...) if(DEBUG_LEVEL & (Level)) jack_error( "%16lu: "format, debugGetCurrentUTime(),##args );    90 #define SEGFAULT int *test=NULL;        *test=1;    94 #define printMessage(format, args...) if(g_verbose) \    95                                                  jack_error("firewire MSG: " format, ##args )    96 #define printError(format, args...)   jack_error("firewire ERR: " format, ##args )   101 #define debugError(format, args...)   102 #define debugPrint(Level, format, args...)   103 #define debugPrintShort(Level, format, args...)   104 #define debugPrintWithTimeStamp(Level, format, args...)   108 #define FFADO_RT_PRIORITY_PACKETIZER_RELATIVE   5   122     jack_nframes_t period_size;
   128     jack_nframes_t buffer_size;
   133     jack_nframes_t capture_frame_latency;
   134     jack_nframes_t playback_frame_latency;
   144     ffado_streaming_stream_type stream_type;
   145     uint32_t *midi_buffer;
   152     ffado_streaming_stream_type stream_type;
   153     uint32_t *midi_buffer;
   165     jack_nframes_t  sample_rate;
   166     jack_nframes_t  period_size;
   167     unsigned long   wait_time;
   169     jack_time_t                   wait_last;
   170     jack_time_t                   wait_next;
   173     jack_client_t  *client;
   186     channel_t                     playback_nchannels;
   187     channel_t                     capture_nchannels;
   191     ffado_sample_t *nullbuffer;
   192     ffado_sample_t *scratchbuffer;
   194     jack_nframes_t  playback_frame_latency;
   195     jack_nframes_t  capture_frame_latency;
   197     ffado_device_info_t device_info;
   198     ffado_options_t device_options;