3 |
* LinuxSampler - modular, streaming capable sampler * |
* LinuxSampler - modular, streaming capable sampler * |
4 |
* * |
* * |
5 |
* Copyright (C) 2003, 2004 by Benno Senoner and Christian Schoenebeck * |
* Copyright (C) 2003, 2004 by Benno Senoner and Christian Schoenebeck * |
6 |
* Copyright (C) 2005 - 2009 Christian Schoenebeck * |
* Copyright (C) 2005 - 2013 Christian Schoenebeck * |
7 |
* * |
* * |
8 |
* This program is free software; you can redistribute it and/or modify * |
* This program is free software; you can redistribute it and/or modify * |
9 |
* it under the terms of the GNU General Public License as published by * |
* it under the terms of the GNU General Public License as published by * |
57 |
typedef float v4sf __attribute__ ((vector_size(16))); |
typedef float v4sf __attribute__ ((vector_size(16))); |
58 |
#endif |
#endif |
59 |
|
|
60 |
|
// circumvents a bug in GCC 4.x which causes a sizeof() expression applied |
61 |
|
// on a class member to throw a compiler error, i.e. with GCC 4.4: |
62 |
|
// "object missing in reference to 'LinuxSampler::AbstractEngineChannel::ControllerTable'") |
63 |
|
// or with GCC 4.0: |
64 |
|
// "invalid use of non-static data member 'LinuxSampler::AbstractEngineChannel::ControllerTable'" |
65 |
|
#define _MEMBER_SIZEOF(T_Class, Member) sizeof(((T_Class*)NULL)->Member) |
66 |
|
|
67 |
/** |
/** |
68 |
* Whether a function / method call was successful, or if warnings or even an |
* Whether a function / method call was successful, or if warnings or even an |
69 |
* error occured. |
* error occured. |
114 |
extern int GLOBAL_MAX_VOICES; |
extern int GLOBAL_MAX_VOICES; |
115 |
extern int GLOBAL_MAX_STREAMS; |
extern int GLOBAL_MAX_STREAMS; |
116 |
|
|
117 |
|
//TODO: (hopefully) just a temporary nasty hack for launching gigedit on the main thread on Mac (see comments in gigedit.cpp for details) |
118 |
|
#if defined(__APPLE__) |
119 |
|
extern bool g_mainThreadCallbackSupported; |
120 |
|
extern void (*g_mainThreadCallback)(void* info); |
121 |
|
extern void* g_mainThreadCallbackInfo; |
122 |
|
extern bool g_fireMainThreadCallback; |
123 |
|
#endif |
124 |
|
|
125 |
// I read with some Linux kernel versions (between 2.4.18 and 2.4.21) |
// I read with some Linux kernel versions (between 2.4.18 and 2.4.21) |
126 |
// sscanf() might be buggy regarding parsing of hex characters, so ... |
// sscanf() might be buggy regarding parsing of hex characters, so ... |
127 |
int hexToNumber(char hex_digit); |
int hexToNumber(char hex_digit); |