annotate Plugins/Input/console/blargg_source.h @ 145:8794a4781a15 trunk

[svn] looping stuff
author nenolod
date Thu, 10 Nov 2005 17:51:04 -0800
parents 252843aac42f
children 7c5e886205ef
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
90
252843aac42f [svn] Import the initial sources for console music support.
nenolod
parents:
diff changeset
1
252843aac42f [svn] Import the initial sources for console music support.
nenolod
parents:
diff changeset
2 // By default, #included at beginning of library source files
252843aac42f [svn] Import the initial sources for console music support.
nenolod
parents:
diff changeset
3
252843aac42f [svn] Import the initial sources for console music support.
nenolod
parents:
diff changeset
4 // Copyright (C) 2005 Shay Green.
252843aac42f [svn] Import the initial sources for console music support.
nenolod
parents:
diff changeset
5
252843aac42f [svn] Import the initial sources for console music support.
nenolod
parents:
diff changeset
6 #ifndef BLARGG_SOURCE_H
252843aac42f [svn] Import the initial sources for console music support.
nenolod
parents:
diff changeset
7 #define BLARGG_SOURCE_H
252843aac42f [svn] Import the initial sources for console music support.
nenolod
parents:
diff changeset
8
252843aac42f [svn] Import the initial sources for console music support.
nenolod
parents:
diff changeset
9 // If debugging is enabled, abort program if expr is false. Meant for checking
252843aac42f [svn] Import the initial sources for console music support.
nenolod
parents:
diff changeset
10 // internal state and consistency. A failed assertion indicates a bug in the module.
252843aac42f [svn] Import the initial sources for console music support.
nenolod
parents:
diff changeset
11 // void assert( bool expr );
252843aac42f [svn] Import the initial sources for console music support.
nenolod
parents:
diff changeset
12 #include <assert.h>
252843aac42f [svn] Import the initial sources for console music support.
nenolod
parents:
diff changeset
13
252843aac42f [svn] Import the initial sources for console music support.
nenolod
parents:
diff changeset
14 // If debugging is enabled and expr is false, abort program. Meant for checking
252843aac42f [svn] Import the initial sources for console music support.
nenolod
parents:
diff changeset
15 // caller-supplied parameters and operations that are outside the control of the
252843aac42f [svn] Import the initial sources for console music support.
nenolod
parents:
diff changeset
16 // module. A failed requirement indicates a bug outside the module.
252843aac42f [svn] Import the initial sources for console music support.
nenolod
parents:
diff changeset
17 // void require( bool expr );
252843aac42f [svn] Import the initial sources for console music support.
nenolod
parents:
diff changeset
18 #undef require
252843aac42f [svn] Import the initial sources for console music support.
nenolod
parents:
diff changeset
19 #define require( expr ) assert(( "unmet requirement", expr ))
252843aac42f [svn] Import the initial sources for console music support.
nenolod
parents:
diff changeset
20
252843aac42f [svn] Import the initial sources for console music support.
nenolod
parents:
diff changeset
21 // Like printf() except output goes to debug log file. Might be defined to do
252843aac42f [svn] Import the initial sources for console music support.
nenolod
parents:
diff changeset
22 // nothing (not even evaluate its arguments.
252843aac42f [svn] Import the initial sources for console music support.
nenolod
parents:
diff changeset
23 // void dprintf( const char* format, ... );
252843aac42f [svn] Import the initial sources for console music support.
nenolod
parents:
diff changeset
24 #undef dprintf
252843aac42f [svn] Import the initial sources for console music support.
nenolod
parents:
diff changeset
25 #define dprintf (1) ? ((void) 0) : (void)
252843aac42f [svn] Import the initial sources for console music support.
nenolod
parents:
diff changeset
26
252843aac42f [svn] Import the initial sources for console music support.
nenolod
parents:
diff changeset
27 // If enabled, evaluate expr and if false, make debug log entry with source file
252843aac42f [svn] Import the initial sources for console music support.
nenolod
parents:
diff changeset
28 // and line. Meant for finding situations that should be examined further, but that
252843aac42f [svn] Import the initial sources for console music support.
nenolod
parents:
diff changeset
29 // don't indicate a problem. In all cases, execution continues normally.
252843aac42f [svn] Import the initial sources for console music support.
nenolod
parents:
diff changeset
30 #undef check
252843aac42f [svn] Import the initial sources for console music support.
nenolod
parents:
diff changeset
31 #define check( expr ) ((void) 0)
252843aac42f [svn] Import the initial sources for console music support.
nenolod
parents:
diff changeset
32
252843aac42f [svn] Import the initial sources for console music support.
nenolod
parents:
diff changeset
33 // If expr returns error string, return it from current function, otherwise continue.
252843aac42f [svn] Import the initial sources for console music support.
nenolod
parents:
diff changeset
34 #define BLARGG_RETURN_ERR( expr ) do { \
252843aac42f [svn] Import the initial sources for console music support.
nenolod
parents:
diff changeset
35 blargg_err_t blargg_return_err_ = (expr); \
252843aac42f [svn] Import the initial sources for console music support.
nenolod
parents:
diff changeset
36 if ( blargg_return_err_ ) return blargg_return_err_; \
252843aac42f [svn] Import the initial sources for console music support.
nenolod
parents:
diff changeset
37 } while ( 0 )
252843aac42f [svn] Import the initial sources for console music support.
nenolod
parents:
diff changeset
38
252843aac42f [svn] Import the initial sources for console music support.
nenolod
parents:
diff changeset
39 #endif
252843aac42f [svn] Import the initial sources for console music support.
nenolod
parents:
diff changeset
40