BEAST/BSE - Better Audio System and Sound Engine  0.8.2
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
gsldefs.hh
Go to the documentation of this file.
00001  // Licensed GNU LGPL v2.1 or later: http://www.gnu.org/licenses/lgpl.html
00002 #ifndef __GSL_DEFS_H__
00003 #define __GSL_DEFS_H__
00004 
00005 #include <sfi/sfi.hh>
00006 #include <sfi/sfistore.hh>
00007 
00008 
00009 G_BEGIN_DECLS
00010 
00011 /* --- forward decls --- */
00012 typedef struct _GslMagic                GslMagic;
00013 typedef struct _GslDataCache            GslDataCache;
00014 typedef struct _GslDataHandle           GslDataHandle;
00015 typedef struct _GslDataHandleFuncs      GslDataHandleFuncs;
00016 typedef struct _GslWaveChunk            GslWaveChunk;
00017 typedef struct _GslWaveChunkBlock       GslWaveChunkBlock;
00018 /* ssize_t/off_t type used within Gsl */
00019 
00020 /*
00021  * FIXME: GslLong is a temporary typedef - it should go away after all
00022  * code that uses GslLong has been ported to use int64 (as defined in
00023  * sfitypes.h).
00024  */
00025 typedef long long int          GslLong;
00026 static_assert (sizeof (GslLong) == 8, "GslLong");
00027 #define GSL_MAXLONG               G_MAXINT64;
00028 #define GSL_MINLONG               G_MININT64;
00029 
00030 
00031 /* --- functions --- */
00032 typedef void     (*GslFreeFunc)         (gpointer        data);
00033 
00034 
00035 /* --- implementation details --- */
00036 #if __GNUC__ >= 3 && defined __OPTIMIZE__
00037 #  define GSL_GCC_PREFETCH(addr)  (__builtin_prefetch (addr, 0))
00038 #  define GSL_GCC_RPREFETCH(addr) (__builtin_prefetch (addr, 0))
00039 #  define GSL_GCC_WPREFETCH(addr) (__builtin_prefetch (addr, 1))
00040 #else
00041 #  define GSL_GCC_PREFETCH(addr)  /* addr */
00042 #  define GSL_GCC_RPREFETCH(addr) /* addr */
00043 #  define GSL_GCC_WPREFETCH(addr) /* addr */
00044 #endif
00045 
00046 G_END_DECLS
00047 
00048 #endif /* __GSL_DEFS_H__ */
00049 
00050 /* vim:set ts=8 sw=2 sts=2: */
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines