diff --git a/include/FluidSCWrapper.hpp b/include/FluidSCWrapper.hpp index 79f7d24..c5bbae0 100644 --- a/include/FluidSCWrapper.hpp +++ b/include/FluidSCWrapper.hpp @@ -66,6 +66,14 @@ public: getInterfaceTable(ft); impl::FluidSCWrapperBase::setup(ft, name); ft->fDefineUnitCmd(name, "version", doVersion); + + std::string commandName("/"); + commandName += getName(); + commandName += "/version"; + ft->fDefinePlugInCmd(commandName.c_str(), + [](World*, void*, sc_msg_iter*, void*){ doVersion(nullptr,nullptr); }, + nullptr); + } static auto& setParams(Unit* x, ParamSetType& p, diff --git a/include/wrapper/Messaging.hpp b/include/wrapper/Messaging.hpp index 5fea09c..40cb50f 100644 --- a/include/wrapper/Messaging.hpp +++ b/include/wrapper/Messaging.hpp @@ -178,7 +178,7 @@ struct FluidSCMessaging{ world); return true; }, - [](World* world, void* data) // NRT Thread: Send reply + [](World*, void* data) // NRT Thread: Send reply { MessageData* m = static_cast(data); if(m->result.status() != Result::Status::kError) diff --git a/include/wrapper/NonRealtime.hpp b/include/wrapper/NonRealtime.hpp index 41dd150..adc74d8 100644 --- a/include/wrapper/NonRealtime.hpp +++ b/include/wrapper/NonRealtime.hpp @@ -423,6 +423,7 @@ namespace impl { if(result.ok()) { + ptr->mDone = false; mResult = client.process(); Wrapper::printResult(world,mResult); @@ -760,10 +761,9 @@ namespace impl { mPreviousTrigger = mTrigger; mTrigger = 0; auto& client = ptr->mClient; - + if(trigger) { - mDone = 0; mControlsIterator.reset(1 + mInBuf); //add one for ID auto& params = ptr->mParams; Wrapper::setParams(this,params,mControlsIterator,true,false);