From 408b0f7612597d1bc3b301eaf414bbbb1cee1d79 Mon Sep 17 00:00:00 2001 From: Kearwood Gilbert Date: Thu, 7 Mar 2013 18:22:14 -0800 Subject: [PATCH] Created wrapper function so that c++ apps can access named quality / effect parameters. --- KREngine/kraken/KRAudioManager.cpp | 2 +- KREngine/kraken/KREngine.h | 7 +++++++ KREngine/kraken/KREngine.mm | 5 +++++ 3 files changed, 13 insertions(+), 1 deletion(-) diff --git a/KREngine/kraken/KRAudioManager.cpp b/KREngine/kraken/KRAudioManager.cpp index 06fa2ef..fbbafdd 100644 --- a/KREngine/kraken/KRAudioManager.cpp +++ b/KREngine/kraken/KRAudioManager.cpp @@ -165,7 +165,7 @@ void KRAudioManager::renderAudio(UInt32 inNumberFrames, AudioBufferList *ioData) uint64_t end_time = mach_absolute_time(); uint64_t duration = (end_time - start_time) * m_timebase_info.numer / m_timebase_info.denom; // Nanoseconds uint64_t max_duration = (uint64_t)inNumberFrames * 1000000000 / 44100; - fprintf(stderr, "audio load: %5.1f%% hrtf channels: %li\n", (float)(duration * 1000 / max_duration) / 10.0f, m_mapped_sources.size()); +// fprintf(stderr, "audio load: %5.1f%% hrtf channels: %li\n", (float)(duration * 1000 / max_duration) / 10.0f, m_mapped_sources.size()); } float *KRAudioManager::getBlockAddress(int block_offset) diff --git a/KREngine/kraken/KREngine.h b/KREngine/kraken/KREngine.h index 0250345..5f2ac7d 100644 --- a/KREngine/kraken/KREngine.h +++ b/KREngine/kraken/KREngine.h @@ -41,6 +41,11 @@ typedef enum KREngineParameterType {KRENGINE_PARAMETER_INT, KRENGINE_PARAMETER_FLOAT, KRENGINE_PARAMETER_BOOL} KREngineParameterType; +namespace kraken { + void set_parameter(const std::string ¶meter_name, float parameter_value); +}; + +#ifdef __OBJC__ @interface KREngine : NSObject @@ -72,3 +77,5 @@ typedef enum KREngineParameterType {KRENGINE_PARAMETER_INT, KRENGINE_PARAMETER_F @end +#endif + diff --git a/KREngine/kraken/KREngine.mm b/KREngine/kraken/KREngine.mm index 95106ab..7ea8942 100644 --- a/KREngine/kraken/KREngine.mm +++ b/KREngine/kraken/KREngine.mm @@ -39,6 +39,11 @@ using namespace std; +// Temporary wrapper function, until the KREngine class is refactored into the C++ codebase +void kraken::set_parameter(const std::string ¶meter_name, float parameter_value) +{ + [[KREngine sharedInstance] setParameterValueWithName: [NSString stringWithUTF8String:parameter_name.c_str()] Value:parameter_value]; +} @interface KREngine() {