aboutsummaryrefslogtreecommitdiff
path: root/src/adlmidi_bankmap.tcc
diff options
context:
space:
mode:
authorJP Cimalando <jpcima@users.noreply.github.com>2018-05-17 21:33:28 +0200
committerJP Cimalando <jpcima@users.noreply.github.com>2018-06-02 08:08:40 +0200
commitd7b9439df5d09d121c55a15f2bc25c360deeebe0 (patch)
tree98994c90751ec158de303334204ef5e67cff628d /src/adlmidi_bankmap.tcc
parent9fb6aef78053b6462f2e74fdb750576dbd3eab96 (diff)
downloadlibADLMIDI-d7b9439df5d09d121c55a15f2bc25c360deeebe0.tar.gz
libADLMIDI-d7b9439df5d09d121c55a15f2bc25c360deeebe0.tar.bz2
libADLMIDI-d7b9439df5d09d121c55a15f2bc25c360deeebe0.zip
dynamic instrument API
Diffstat (limited to 'src/adlmidi_bankmap.tcc')
-rw-r--r--src/adlmidi_bankmap.tcc19
1 files changed, 19 insertions, 0 deletions
diff --git a/src/adlmidi_bankmap.tcc b/src/adlmidi_bankmap.tcc
index 938192d..9303f0d 100644
--- a/src/adlmidi_bankmap.tcc
+++ b/src/adlmidi_bankmap.tcc
@@ -137,6 +137,25 @@ inline bool BasicBankMap<T>::iterator::operator!=(const iterator &o) const
}
template <class T>
+void BasicBankMap<T>::iterator::to_ptrs(void *ptrs[3])
+{
+ ptrs[0] = buckets;
+ ptrs[1] = slot;
+ ptrs[2] = (void *)index;
+}
+
+template <class T>
+typename BasicBankMap<T>::iterator
+BasicBankMap<T>::iterator::from_ptrs(void *const ptrs[3])
+{
+ iterator it;
+ it.buckets = (Slot **)ptrs[0];
+ it.slot = (Slot *)ptrs[1];
+ it.index = (size_t)ptrs[2];
+ return it;
+}
+
+template <class T>
std::pair<typename BasicBankMap<T>::iterator, bool>
BasicBankMap<T>::insert(const value_type &value)
{