/[svn]/linuxsampler/trunk/src/common/global.h
ViewVC logotype

Diff of /linuxsampler/trunk/src/common/global.h

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 83 by schoenebeck, Sun May 23 19:47:59 2004 UTC revision 738 by schoenebeck, Tue Aug 16 17:14:25 2005 UTC
# Line 3  Line 3 
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 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  *
# Line 25  Line 26 
26  #ifndef __GLOBAL_H__  #ifndef __GLOBAL_H__
27  #define __GLOBAL_H__  #define __GLOBAL_H__
28    
 //#define DEBUG_HEADERS 1  
   
 #if DEBUG_HEADERS  
 # warning global.h included  
 #endif // DEBUG_HEADERS  
   
29  #include <stdlib.h>  #include <stdlib.h>
30  #include <stdint.h>  #include <stdint.h>
31  #include <stdio.h>  #include <stdio.h>
32    
33  #include <string>  #include <string>
34    #include <sstream>
35    
36  #ifdef HAVE_CONFIG_H  #ifdef HAVE_CONFIG_H
37  #  include <config.h>  # include <config.h>
38  #endif  #endif
39    
40  #define LS_DEBUG_LEVEL  1  ///< the higher this value the higher verbosity, 0 means no debug messages at all  // Make sure all mandatory configuration macros are defined.
41    // We don't care about optional configuration macros though.
42    #ifndef CONFIG_MAX_PITCH
43    # error "Configuration macro CONFIG_MAX_PITCH not defined!"
44    #endif // CONFIG_MAX_PITCH
45    #ifndef CONFIG_MAX_EVENTS_PER_FRAGMENT
46    # error "Configuration macro CONFIG_MAX_EVENTS_PER_FRAGMENT not defined!"
47    #endif // CONFIG_MAX_EVENTS_PER_FRAGMENT
48    #ifndef CONFIG_EG_BOTTOM
49    # error "Configuration macro CONFIG_EG_BOTTOM not defined!"
50    #endif // CONFIG_EG_BOTTOM
51    #ifndef CONFIG_EG_MIN_RELEASE_TIME
52    # error "Configuration macro CONFIG_EG_MIN_RELEASE_TIME not defined!"
53    #endif // CONFIG_EG_MIN_RELEASE_TIME
54    #ifndef CONFIG_REFILL_STREAMS_PER_RUN
55    # error "Configuration macro CONFIG_REFILL_STREAMS_PER_RUN not defined!"
56    #endif // CONFIG_REFILL_STREAMS_PER_RUN
57    #ifndef CONFIG_STREAM_MIN_REFILL_SIZE
58    # error "Configuration macro CONFIG_STREAM_MIN_REFILL_SIZE not defined!"
59    #endif // CONFIG_STREAM_MIN_REFILL_SIZE
60    #ifndef CONFIG_STREAM_MAX_REFILL_SIZE
61    # error "Configuration macro CONFIG_STREAM_MAX_REFILL_SIZE not defined!"
62    #endif // CONFIG_STREAM_MAX_REFILL_SIZE
63    #ifndef CONFIG_STREAM_BUFFER_SIZE
64    # error "Configuration macro CONFIG_STREAM_BUFFER_SIZE not defined!"
65    #endif // CONFIG_STREAM_BUFFER_SIZE
66    #ifndef CONFIG_MAX_STREAMS
67    # error "Configuration macro CONFIG_MAX_STREAMS not defined!"
68    #endif // CONFIG_MAX_STREAMS
69    #ifndef CONFIG_MAX_VOICES
70    # error "Configuration macro CONFIG_MAX_VOICES not defined!"
71    #endif // CONFIG_MAX_VOICES
72    #ifndef CONFIG_DEFAULT_SUBFRAGMENT_SIZE
73    # error "Configuration macro CONFIG_DEFAULT_SUBFRAGMENT_SIZE not defined!"
74    #endif // CONFIG_DEFAULT_SUBFRAGMENT_SIZE
75    #ifndef CONFIG_VOICE_STEAL_ALGO
76    # error "Configuration macro CONFIG_VOICE_STEAL_ALGO not defined!"
77    #endif // CONFIG_VOICE_STEAL_ALGO
78    #ifndef CONFIG_SYSEX_BUFFER_SIZE
79    # error "Configuration macro CONFIG_SYSEX_BUFFER_SIZE not defined!"
80    #endif // CONFIG_SYSEX_BUFFER_SIZE
81    #ifndef CONFIG_FILTER_CUTOFF_MIN
82    # error "Configuration macro CONFIG_FILTER_CUTOFF_MIN not defined!"
83    #endif // CONFIG_FILTER_CUTOFF_MIN
84    #ifndef CONFIG_FILTER_CUTOFF_MAX
85    # error "Configuration macro CONFIG_FILTER_CUTOFF_MAX not defined!"
86    #endif // CONFIG_FILTER_CUTOFF_MAX
87    
88  #if LS_DEBUG_LEVEL > 0  #if CONFIG_DEBUG_LEVEL > 0
89  #  define dmsg(debuglevel,x)    if (LS_DEBUG_LEVEL >= debuglevel) {printf x; fflush(stdout);}  #  define dmsg(debuglevel,x)    if (CONFIG_DEBUG_LEVEL >= debuglevel) {printf x; fflush(stdout);}
90  #else  #else
91  #  define dmsg(debuglevel,x)  #  define dmsg(debuglevel,x)
92  #endif // LS_DEBUG  #endif // CONFIG_DEBUG_LEVEL > 0
93    
94  /// Defines the max. pitch value used in the application (in octaves)  #define EMMS __asm__ __volatile__ ("emms" ::: "st", "st(1)", "st(2)", "st(3)", "st(4)", "st(5)", "st(6)", "st(7)", "mm0", "mm1", "mm2", "mm3", "mm4", "mm5", "mm6", "mm7")
 #define MAX_PITCH                       4  
   
 /// Defines how many event objects the modulation system allocates  
 #define MAX_EVENTS_PER_FRAGMENT         1024  
95    
96  /// defines globally the bit depth of used samples  /// defines globally the bit depth of used samples
97  typedef int16_t sample_t;  typedef int16_t sample_t;
# Line 61  typedef int16_t sample_t; Line 99  typedef int16_t sample_t;
99  typedef std::string String;  typedef std::string String;
100    
101  /**  /**
102   * Wether 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
103   * error occured.   * error occured.
104   */   */
105  enum result_type_t {  enum result_type_t {
# Line 80  struct result_t { Line 118  struct result_t {
118      String        message;  ///< detailed warning or error message      String        message;  ///< detailed warning or error message
119  };  };
120    
121    template<class T> inline String ToString(T o) {
122            std::stringstream ss;
123            ss << o;
124            return ss.str();
125    }
126    
127  #endif // __GLOBAL_H__  #endif // __GLOBAL_H__

Legend:
Removed from v.83  
changed lines
  Added in v.738

  ViewVC Help
Powered by ViewVC