aboutsummaryrefslogtreecommitdiff
path: root/src/adlmidi_private.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/adlmidi_private.hpp')
-rw-r--r--src/adlmidi_private.hpp14
1 files changed, 11 insertions, 3 deletions
diff --git a/src/adlmidi_private.hpp b/src/adlmidi_private.hpp
index 43986c5..c3d65c0 100644
--- a/src/adlmidi_private.hpp
+++ b/src/adlmidi_private.hpp
@@ -211,6 +211,7 @@ inline int32_t adl_cvtU32(int32_t x)
}
struct ADL_MIDIPlayer;
+class MIDIplay;
/**
* @brief OPL3 Chip management class
*/
@@ -218,7 +219,7 @@ class OPL3
{
friend class MIDIplay;
friend class AdlInstrumentTester;
- friend int adlRefreshNumCards(ADL_MIDIPlayer *device);
+ friend int adlCalculateFourOpChannels(MIDIplay *play, bool silent);
public:
enum
{
@@ -363,6 +364,12 @@ public:
OPL3();
/**
+ * @brief Checks are setup locked to be changed on the fly or not
+ * @return true when setup on the fly is locked
+ */
+ bool setupLocked();
+
+ /**
* @brief Choose one of embedded banks
* @param bank ID of the bank
*/
@@ -951,7 +958,7 @@ public:
int emulator;
bool runAtPcmRate;
unsigned int bankId;
- unsigned int numFourOps;
+ int numFourOps;
unsigned int numChips;
int deepTremoloMode;
int deepVibratoMode;
@@ -1485,9 +1492,10 @@ extern void adl_audioTickHandler(void *instance, uint32_t chipId, uint32_t rate)
/**
* @brief Automatically calculate and enable necessary count of 4-op channels on emulated chips
* @param device Library context
+ * @param silent Don't re-count channel categories
* @return Always 0
*/
-extern int adlRefreshNumCards(ADL_MIDIPlayer *device);
+extern int adlCalculateFourOpChannels(MIDIplay *play, bool silent = false);
/**
* @brief Check emulator availability