Beast - Music Synthesizer and Composer  0.11.1+10.g2da35
gsldefs.hh
Go to the documentation of this file.
1  // Licensed GNU LGPL v2.1 or later: http://www.gnu.org/licenses/lgpl.html
2 #ifndef __GSL_DEFS_H__
3 #define __GSL_DEFS_H__
4 
5 #include <sfi/sfi.hh>
6 #include <sfi/sfistore.hh>
7 
8 
9 /* --- forward decls --- */
10 typedef struct _GslMagic GslMagic;
11 typedef struct _GslDataCache GslDataCache;
12 typedef struct _GslDataHandle GslDataHandle;
13 typedef struct _GslDataHandleFuncs GslDataHandleFuncs;
14 typedef struct _GslWaveChunk GslWaveChunk;
15 typedef struct _GslWaveChunkBlock GslWaveChunkBlock;
16 /* ssize_t/off_t type used within Gsl */
17 
18 /*
19  * FIXME: GslLong is a temporary typedef - it should go away after all
20  * code that uses GslLong has been ported to use int64 (as defined in
21  * sfitypes.h).
22  */
23 typedef long long int GslLong;
24 static_assert (sizeof (GslLong) == 8, "GslLong");
25 #define GSL_MAXLONG G_MAXINT64;
26 #define GSL_MINLONG G_MININT64;
27 
28 
29 /* --- functions --- */
30 typedef void (*GslFreeFunc) (gpointer data);
31 
32 
33 /* --- implementation details --- */
34 #if __GNUC__ >= 3 && defined __OPTIMIZE__
35 # define GSL_GCC_PREFETCH(addr) (__builtin_prefetch (addr, 0))
36 # define GSL_GCC_RPREFETCH(addr) (__builtin_prefetch (addr, 0))
37 # define GSL_GCC_WPREFETCH(addr) (__builtin_prefetch (addr, 1))
38 #else
39 # define GSL_GCC_PREFETCH(addr) /* addr */
40 # define GSL_GCC_RPREFETCH(addr) /* addr */
41 # define GSL_GCC_WPREFETCH(addr) /* addr */
42 #endif
43 
44 #endif /* __GSL_DEFS_H__ */
45 
46 /* vim:set ts=8 sw=2 sts=2: */
Definition: gsldatacache.hh:14
Definition: gsldatahandle.hh:22
Definition: gslwavechunk.hh:64
Definition: gsldatahandle.hh:36
Definition: gslwavechunk.hh:21
Definition: gslmagic.hh:12