dsound.h File Reference

Interface: direct control of sound. More...

#include <config.h>
#include <time.h>
#include <unistd.h>

Include dependency graph for dsound.h:

Go to the source code of this file.

Data Structures

struct  note_t
 the note structure describing a single note. More...

Defines

#define WHOLE   16
 Whole note in terms of sixteenths.
#define HALF   8
 Half note in terms of sixteenths.
#define QUARTER   4
 Quater note in terms of sixteenths.
#define EIGHTH   2
 Eighth note in terms of sixteenths.
#define PITCH_A0   0
 Note Pitch Value.
#define PITCH_Am0   1
#define PITCH_H0   2
#define PITCH_C1   3
#define PITCH_Cm1   4
#define PITCH_D1   5
#define PITCH_Dm1   6
#define PITCH_E1   7
#define PITCH_F1   8
#define PITCH_Fm1   9
#define PITCH_G1   10
#define PITCH_Gm1   11
#define PITCH_A1   12
#define PITCH_Am1   13
#define PITCH_H1   14
#define PITCH_C2   15
#define PITCH_Cm2   16
#define PITCH_D2   17
#define PITCH_Dm2   18
#define PITCH_E2   19
#define PITCH_F2   20
#define PITCH_Fm2   21
#define PITCH_G2   22
#define PITCH_Gm2   23
#define PITCH_A2   24
#define PITCH_Am2   25
#define PITCH_H2   26
#define PITCH_C3   27
#define PITCH_Cm3   28
#define PITCH_D3   29
#define PITCH_Dm3   30
#define PITCH_E3   31
#define PITCH_F3   32
#define PITCH_Fm3   33
#define PITCH_G3   34
#define PITCH_Gm3   35
#define PITCH_A3   36
#define PITCH_Am3   37
#define PITCH_H3   38
#define PITCH_C4   39
#define PITCH_Cm4   40
#define PITCH_D4   41
#define PITCH_Dm4   42
#define PITCH_E4   43
#define PITCH_F4   44
#define PITCH_Fm4   45
#define PITCH_G4   46
#define PITCH_Gm4   47
#define PITCH_A4   48
#define PITCH_Am4   49
#define PITCH_H4   50
#define PITCH_C5   51
#define PITCH_Cm5   52
#define PITCH_D5   53
#define PITCH_Dm5   54
#define PITCH_E5   55
#define PITCH_F5   56
#define PITCH_Fm5   57
#define PITCH_G5   58
#define PITCH_Gm5   59
#define PITCH_A5   60
#define PITCH_Am5   61
#define PITCH_H5   62
#define PITCH_C6   63
#define PITCH_Cm6   64
#define PITCH_D6   65
#define PITCH_Dm6   66
#define PITCH_E6   67
#define PITCH_F6   68
#define PITCH_Fm6   69
#define PITCH_G6   70
#define PITCH_Gm6   71
#define PITCH_A6   72
#define PITCH_Am6   73
#define PITCH_H6   74
#define PITCH_C7   75
#define PITCH_Cm7   76
#define PITCH_D7   77
#define PITCH_Dm7   78
#define PITCH_E7   79
#define PITCH_F7   80
#define PITCH_Fm7   81
#define PITCH_G7   82
#define PITCH_Gm7   83
#define PITCH_A7   84
#define PITCH_Am7   85
#define PITCH_H7   86
#define PITCH_C8   87
#define PITCH_Cm8   88
#define PITCH_D8   89
#define PITCH_Dm8   90
#define PITCH_E8   91
#define PITCH_F8   92
#define PITCH_Fm8   93
#define PITCH_G8   94
#define PITCH_Gm8   95
#define PITCH_A8   96
#define PITCH_PAUSE   97
 specify a pause (rest)
#define PITCH_MAX   98
 maximum pitch value
#define PITCH_END   255
 mark the end of a list of note_t entries
#define DSOUND_BEEP   0
 system sounds
#define DSOUND_SYS_MAX   1
 max system sound
#define DSOUND_DEFAULT_16th_ms   200
 default duration of 1/16th note in ms
#define DSOUND_DEFAULT_internote_ms   15
 default duration internote spacing in ms

Functions

static void dsound_play (const note_t *notes)
 play a sequence of notes
static void dsound_system (unsigned nr)
 play a system sound
static unsigned dsound_set_duration (unsigned duration)
 set duration of a 16th note in ms; return the previous duration.
static void dsound_set_internote (unsigned duration)
 set duration of inter-note spacing (subtracted from note duration)
static int dsound_playing (void)
 returns nonzero value if a sound is playing
wakeup_t dsound_finished (wakeup_t data)
 sound finished event wakeup function
void dsound_stop (void)
 stop playing sound


Detailed Description

Interface: direct control of sound.

Author:
Markus L. Noga <markus@noga.de>

Definition in file dsound.h.


Define Documentation

#define DSOUND_BEEP   0

system sounds

Definition at line 197 of file dsound.h.

#define DSOUND_DEFAULT_16th_ms   200

default duration of 1/16th note in ms

Definition at line 204 of file dsound.h.

#define DSOUND_DEFAULT_internote_ms   15

default duration internote spacing in ms

Definition at line 207 of file dsound.h.

#define DSOUND_SYS_MAX   1

max system sound

Definition at line 200 of file dsound.h.

Referenced by dsound_system().

#define PITCH_END   255

mark the end of a list of note_t entries

Definition at line 193 of file dsound.h.

#define PITCH_MAX   98

maximum pitch value

Definition at line 190 of file dsound.h.

#define PITCH_PAUSE   97

specify a pause (rest)

Definition at line 187 of file dsound.h.


Function Documentation

wakeup_t dsound_finished ( wakeup_t  data  ) 

sound finished event wakeup function

static void dsound_play ( const note_t notes  )  [inline, static]

play a sequence of notes

Definition at line 234 of file dsound.h.

Referenced by dsound_system().

static int dsound_playing ( void   )  [inline, static]

returns nonzero value if a sound is playing

Definition at line 260 of file dsound.h.

static unsigned dsound_set_duration ( unsigned  duration  )  [inline, static]

set duration of a 16th note in ms; return the previous duration.

Definition at line 246 of file dsound.h.

static void dsound_set_internote ( unsigned  duration  )  [inline, static]

set duration of inter-note spacing (subtracted from note duration)

set to 0 for perfect legato.

Definition at line 255 of file dsound.h.

void dsound_stop ( void   ) 

stop playing sound

static void dsound_system ( unsigned  nr  )  [inline, static]

play a system sound

Definition at line 240 of file dsound.h.

References dsound_play(), and DSOUND_SYS_MAX.


brickOS is released under the Mozilla Public License.
Original code copyright 1998-2005 by the authors.

Generated on Tue Apr 10 19:51:37 2007 for brickOS C by doxygen 1.5.1