added QJackMMC to makefile, fixed overflow bug in common.c
[jackctlmmc.git] / common.h
blob9593a050436f22268f35daf2a488db7bf90a896f
1 /*
2 * Control JACK transport using MMC (MIDI)
4 * Copyright (c) 2006,2007,2008 Nedko Arnaudov <nedko@arnaudov.name>
5 * Copyright (c) 2008 Alex Montgomery <apmontgomery@gmail.com>
7 * This program is free software; you can redistribute it and/or modify it under
8 * the terms of the GNU General Public License as published by the Free Software
9 * Foundation; version 2 of the License.
11 * This program is distributed in the hope that it will be useful, but WITHOUT ANY
12 * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
13 * FOR A PARTICULAR PURPOSE. See the GNU General Public License for details.
15 * You should have received a copy of the GNU General Public License along
16 * with this program; if not, write to the Free Software Foundation, Inc.,
17 * 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
20 #ifndef COMMON_H
21 #define COMMON_H
23 #include <jack/jack.h>
24 #include <alsa/asoundlib.h>
25 #include <lash/lash.h>
27 // globals
28 extern int g_quit;
29 extern snd_seq_t* g_seq_ptr;
30 extern lash_client_t* g_lashc;
31 extern jack_client_t* g_jack_client;
33 // common functions
34 void process_lash_event(lash_event_t * event_ptr);
35 void process_lash_config(lash_config_t * config_ptr);
36 int init_alsa_sequencer(const char* appName);
37 void init_lash(int argc, char* argv[]);
38 int init_jack(const char* appName);
39 void activate_jack();
40 void listen_loop (uint32_t frameRate, uint32_t jitterTolerance, int verbose);
41 void cleanup_globals();
43 #endif // COMMON_H