Fedora kernel-2.6.17-1.2142_FC4 patched with stable patch-2.6.17.4-vs2.0.2-rc26.diff
[linux-2.6.git] / include / sound / emux_synth.h
index c6970aa..d8cb51b 100644 (file)
  */
 #define SNDRV_EMUX_USE_RAW_EFFECT
 
-
-/*
- * typedefs
- */
-typedef struct snd_emux_effect_table snd_emux_effect_table_t;
-typedef struct snd_emux_port snd_emux_port_t;
-typedef struct snd_emux_voice snd_emux_voice_t;
-typedef struct snd_emux snd_emux_t;
-
+struct snd_emux;
+struct snd_emux_port;
+struct snd_emux_voice;
+struct snd_emux_effect_table;
 
 /*
  * operators
  */
-typedef struct snd_emux_operators {
+struct snd_emux_operators {
        struct module *owner;
-       snd_emux_voice_t *(*get_voice)(snd_emux_t *emu, snd_emux_port_t *port);
-       int (*prepare)(snd_emux_voice_t *vp);
-       void (*trigger)(snd_emux_voice_t *vp);
-       void (*release)(snd_emux_voice_t *vp);
-       void (*update)(snd_emux_voice_t *vp, int update);
-       void (*terminate)(snd_emux_voice_t *vp);
-       void (*free_voice)(snd_emux_voice_t *vp);
-       void (*reset)(snd_emux_t *emu, int ch);
-       /* the first parameters are snd_emux_t */
-       int (*sample_new)(snd_emux_t *emu, snd_sf_sample_t *sp, snd_util_memhdr_t *hdr, const void __user *data, long count);
-       int (*sample_free)(snd_emux_t *emu, snd_sf_sample_t *sp, snd_util_memhdr_t *hdr);
-       void (*sample_reset)(snd_emux_t *emu);
-       int (*load_fx)(snd_emux_t *emu, int type, int arg, const void __user *data, long count);
-       void (*sysex)(snd_emux_t *emu, char *buf, int len, int parsed, snd_midi_channel_set_t *chset);
+       struct snd_emux_voice *(*get_voice)(struct snd_emux *emu,
+                                           struct snd_emux_port *port);
+       int (*prepare)(struct snd_emux_voice *vp);
+       void (*trigger)(struct snd_emux_voice *vp);
+       void (*release)(struct snd_emux_voice *vp);
+       void (*update)(struct snd_emux_voice *vp, int update);
+       void (*terminate)(struct snd_emux_voice *vp);
+       void (*free_voice)(struct snd_emux_voice *vp);
+       void (*reset)(struct snd_emux *emu, int ch);
+       /* the first parameters are struct snd_emux */
+       int (*sample_new)(struct snd_emux *emu, struct snd_sf_sample *sp,
+                         struct snd_util_memhdr *hdr,
+                         const void __user *data, long count);
+       int (*sample_free)(struct snd_emux *emu, struct snd_sf_sample *sp,
+                          struct snd_util_memhdr *hdr);
+       void (*sample_reset)(struct snd_emux *emu);
+       int (*load_fx)(struct snd_emux *emu, int type, int arg,
+                      const void __user *data, long count);
+       void (*sysex)(struct snd_emux *emu, char *buf, int len, int parsed,
+                     struct snd_midi_channel_set *chset);
 #ifdef CONFIG_SND_SEQUENCER_OSS
-       int (*oss_ioctl)(snd_emux_t *emu, int cmd, int p1, int p2);
+       int (*oss_ioctl)(struct snd_emux *emu, int cmd, int p1, int p2);
 #endif
-} snd_emux_operators_t;
+};
 
 
 /*
@@ -90,46 +91,46 @@ typedef struct snd_emux_operators {
  */
 struct snd_emux {
 
-       snd_card_t *card;       /* assigned card */
+       struct snd_card *card;  /* assigned card */
 
        /* following should be initialized before registration */
        int max_voices;         /* Number of voices */
        int mem_size;           /* memory size (in byte) */
        int num_ports;          /* number of ports to be created */
        int pitch_shift;        /* pitch shift value (for Emu10k1) */
-       snd_emux_operators_t ops;       /* operators */
+       struct snd_emux_operators ops;  /* operators */
        void *hw;               /* hardware */
        unsigned long flags;    /* other conditions */
        int midi_ports;         /* number of virtual midi devices */
        int midi_devidx;        /* device offset of virtual midi */
        unsigned int linear_panning: 1; /* panning is linear (sbawe = 1, emu10k1 = 0) */
        int hwdep_idx;          /* hwdep device index */
-       snd_hwdep_t *hwdep;     /* hwdep device */
+       struct snd_hwdep *hwdep;        /* hwdep device */
 
        /* private */
        int num_voices;         /* current number of voices */
-       snd_sf_list_t *sflist;  /* root of SoundFont list */
-       snd_emux_voice_t *voices;       /* Voices (EMU 'channel') */
+       struct snd_sf_list *sflist;     /* root of SoundFont list */
+       struct snd_emux_voice *voices;  /* Voices (EMU 'channel') */
        int use_time;   /* allocation counter */
        spinlock_t voice_lock;  /* Lock for voice access */
-       struct semaphore register_mutex;
+       struct mutex register_mutex;
        int client;             /* For the sequencer client */
        int ports[SNDRV_EMUX_MAX_PORTS];        /* The ports for this device */
-       snd_emux_port_t *portptrs[SNDRV_EMUX_MAX_PORTS];
+       struct snd_emux_port *portptrs[SNDRV_EMUX_MAX_PORTS];
        int used;       /* use counter */
        char *name;     /* name of the device (internal) */
-       snd_rawmidi_t **vmidi;
+       struct snd_rawmidi **vmidi;
        struct timer_list tlist;        /* for pending note-offs */
        int timer_active;
 
-       snd_util_memhdr_t *memhdr;      /* memory chunk information */
+       struct snd_util_memhdr *memhdr; /* memory chunk information */
 
 #ifdef CONFIG_PROC_FS
-       snd_info_entry_t *proc;
+       struct snd_info_entry *proc;
 #endif
 
 #ifdef CONFIG_SND_SEQUENCER_OSS
-       snd_seq_device_t *oss_synth;
+       struct snd_seq_device *oss_synth;
 #endif
 };
 
@@ -139,18 +140,18 @@ struct snd_emux {
  */
 struct snd_emux_port {
 
-       snd_midi_channel_set_t chset;
-       snd_emux_t *emu;
+       struct snd_midi_channel_set chset;
+       struct snd_emux *emu;
 
        char port_mode;                 /* operation mode */
        int volume_atten;               /* emuX raw attenuation */
        unsigned long drum_flags;       /* drum bitmaps */
        int ctrls[EMUX_MD_END];         /* control parameters */
 #ifdef SNDRV_EMUX_USE_RAW_EFFECT
-       snd_emux_effect_table_t *effect;
+       struct snd_emux_effect_table *effect;
 #endif
 #ifdef CONFIG_SND_SEQUENCER_OSS
-       snd_seq_oss_arg_t *oss_arg;
+       struct snd_seq_oss_arg *oss_arg;
 #endif
 };
 
@@ -179,16 +180,16 @@ struct snd_emux_voice {
        unsigned char key;
        unsigned char velocity; /* Velocity of current note */
 
-       snd_sf_zone_t *zone;    /* Zone assigned to this note */
+       struct snd_sf_zone *zone;       /* Zone assigned to this note */
        void *block;            /* sample block pointer (optional) */
-       snd_midi_channel_t *chan;       /* Midi channel for this note */
-       snd_emux_port_t *port;  /* associated port */
-       snd_emux_t *emu;        /* assigned root info */
-       void *hw;               /* hardware pointer (emu8000_t or emu10k1_t) */
+       struct snd_midi_channel *chan;  /* Midi channel for this note */
+       struct snd_emux_port *port;     /* associated port */
+       struct snd_emux *emu;   /* assigned root info */
+       void *hw;               /* hardware pointer (emu8000 or emu10k1) */
        unsigned long ontime;   /* jiffies at note triggered */
        
        /* Emu8k/Emu10k1 registers */
-       soundfont_voice_info_t reg;
+       struct soundfont_voice_info reg;
 
        /* additional registers */
        int avol;               /* volume attenuation */
@@ -229,15 +230,15 @@ struct snd_emux_effect_table {
 /*
  * prototypes - interface to Emu10k1 and Emu8k routines
  */
-int snd_emux_new(snd_emux_t **remu);
-int snd_emux_register(snd_emux_t *emu, snd_card_t *card, int index, char *name);
-int snd_emux_free(snd_emux_t *emu);
+int snd_emux_new(struct snd_emux **remu);
+int snd_emux_register(struct snd_emux *emu, struct snd_card *card, int index, char *name);
+int snd_emux_free(struct snd_emux *emu);
 
 /*
  * exported functions
  */
-void snd_emux_terminate_all(snd_emux_t *emu);
-void snd_emux_lock_voice(snd_emux_t *emu, int voice);
-void snd_emux_unlock_voice(snd_emux_t *emu, int voice);
+void snd_emux_terminate_all(struct snd_emux *emu);
+void snd_emux_lock_voice(struct snd_emux *emu, int voice);
+void snd_emux_unlock_voice(struct snd_emux *emu, int voice);
 
 #endif /* __SOUND_EMUX_SYNTH_H */