doompanning/external/wildmidi-0.4.5/include/patches.h
oxmox a191a82bdc Squashed 'src/dp_doom/' content from commit 1909924
git-subtree-dir: src/dp_doom
git-subtree-split: 190992421c7c643afc99d7f7c511c162f65bea85
2023-02-19 01:52:56 +01:00

57 lines
1.6 KiB
C

/*
* patches.h -- Midi Wavetable Processing library
*
* Copyright (C) WildMIDI Developers 2001-2016
*
* This file is part of WildMIDI.
*
* WildMIDI is free software: you can redistribute and/or modify the player
* under the terms of the GNU General Public License and you can redistribute
* and/or modify the library under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation, either version 3 of
* the licenses, or(at your option) any later version.
*
* WildMIDI is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License and
* the GNU Lesser General Public License for more details.
*
* You should have received a copy of the GNU General Public License and the
* GNU Lesser General Public License along with WildMIDI. If not, see
* <http://www.gnu.org/licenses/>.
*/
#ifndef __PATCHES_H
#define __PATCHES_H
struct _env {
float time;
float level;
uint8_t set;
};
struct _sample;
struct _mdi;
struct _patch {
uint16_t patchid;
uint8_t loaded;
char *filename;
int16_t amp;
uint8_t keep;
uint8_t remove;
struct _env env[6];
uint8_t note;
uint32_t inuse_count;
struct _sample *first_sample;
struct _patch *next;
};
extern struct _patch *_WM_patch[128];
extern int _WM_patch_lock;
extern struct _patch *_WM_get_patch_data(struct _mdi *mdi, uint16_t patchid);
extern void _WM_load_patch(struct _mdi *mdi, uint16_t patchid);
#endif /* __PATCHES_H */