diff --git a/include/FluidSCWrapper.hpp b/include/FluidSCWrapper.hpp index b9c6ad7..2d990c6 100644 --- a/include/FluidSCWrapper.hpp +++ b/include/FluidSCWrapper.hpp @@ -66,8 +66,8 @@ struct FloatControlsIter mCount = 0; } - size_t size() const noexcept { return mSize; } - size_t remain() + index size() const noexcept { return mSize; } + index remain() { return mSize - mCount; } @@ -493,8 +493,8 @@ class FluidSCWrapperImpl // Make base class(es), full of CRTP mixin goodness template using FluidSCWrapperBase = - FluidSCWrapperImpl, isNonRealTime, - isRealTime>; + FluidSCWrapperImpl, typename Client::isNonRealTime, + typename Client::isRealTime>; } // namespace impl @@ -521,7 +521,7 @@ class FluidSCWrapper : public impl::FluidSCWrapperBase static auto fromArgs(World *w, FloatControlsIter& args, std::string, int) { //first is string size, then chars - index size = args.next(); + index size = static_cast(args.next()); char* chunk = static_cast(FluidSCWrapper::getInterfaceTable()->fRTAlloc(w,size + 1)); if (!chunk) { @@ -540,7 +540,7 @@ class FluidSCWrapper : public impl::FluidSCWrapperBase template static std::enable_if_t::value,T> - fromArgs(World *, FloatControlsIter& args, T, int) { return args.next(); } + fromArgs(World *, FloatControlsIter& args, T, int) { return static_cast(args.next()); } template static std::enable_if_t::value,T> @@ -626,27 +626,27 @@ class FluidSCWrapper : public impl::FluidSCWrapperBase static std::enable_if_t::value||std::is_floating_point::value,size_t> allocSize(T){ return 1; } - static size_t allocSize(std::string s){ return s.size() + 1; } //put null char at end when we send + static index allocSize(std::string s){ return asSigned(s.size()) + 1; } //put null char at end when we send - static size_t allocSize(FluidTensor s) + static index allocSize(FluidTensor s) { - size_t count = 0; + index count = 0; for(auto& str: s) count += (str.size() + 1); return count; } template - static size_t allocSize(FluidTensor s) { return s.size() ; } + static index allocSize(FluidTensor s) { return asSigned(s.size()); } template - static std::tuple,size_t> allocSize(std::tuple&& t) + static std::tuple,index> allocSize(std::tuple&& t) { return allocSizeImpl(std::forward(t), std::index_sequence_for()); }; template - static std::tuple,size_t> allocSizeImpl(std::tuple&& t,std::index_sequence) + static std::tuple,index> allocSizeImpl(std::tuple&& t,std::index_sequence) { - size_t size{0}; + index size{0}; std::array res; (void)std::initializer_list{(res[Is] = size,size += ToFloatArray::allocSize(std::get(t)),0)...}; return std::make_tuple(res,size); //array of offsets into allocated buffer & total number of floats to alloc diff --git a/scripts/target_post.cmake b/scripts/target_post.cmake index 0a6a727..16df631 100644 --- a/scripts/target_post.cmake +++ b/scripts/target_post.cmake @@ -52,6 +52,7 @@ target_include_directories( ${PLUGIN} PRIVATE "${LOCAL_INCLUDES}" + "${FLUID_VERSION_PATH}" "${FLUID_M_PATH}/include/" "${FLUID_M_PATH}/thirdparty" ) diff --git a/src/FluidAmpGate/FluidAmpGate.cpp b/src/FluidAmpGate/FluidAmpGate.cpp index 3b696e2..d8a0c9b 100644 --- a/src/FluidAmpGate/FluidAmpGate.cpp +++ b/src/FluidAmpGate/FluidAmpGate.cpp @@ -18,5 +18,5 @@ PluginLoad(FluidSTFTUGen) { ft = inTable; using namespace fluid::client; - makeSCWrapper("FluidAmpGate", ft); + makeSCWrapper("FluidAmpGate", ft); } diff --git a/src/FluidAmpSlice/FluidAmpSlice.cpp b/src/FluidAmpSlice/FluidAmpSlice.cpp index 3ac71fd..c5ceaa0 100644 --- a/src/FluidAmpSlice/FluidAmpSlice.cpp +++ b/src/FluidAmpSlice/FluidAmpSlice.cpp @@ -18,5 +18,5 @@ PluginLoad(FluidSTFTUGen) { ft = inTable; using namespace fluid::client; - makeSCWrapper("FluidAmpSlice", ft); + makeSCWrapper("FluidAmpSlice", ft); } diff --git a/src/FluidBufStats/FluidBufStats.cpp b/src/FluidBufStats/FluidBufStats.cpp index c81c117..b5f902c 100644 --- a/src/FluidBufStats/FluidBufStats.cpp +++ b/src/FluidBufStats/FluidBufStats.cpp @@ -18,5 +18,5 @@ PluginLoad(OfflineFluidDecompositionUGens) { ft = inTable; using namespace fluid::client; - makeSCWrapper("FluidBufStats", ft); + makeSCWrapper("FluidBufStats", ft); } diff --git a/src/FluidHPSS/FluidHPSS.cpp b/src/FluidHPSS/FluidHPSS.cpp index d8db092..d6c8288 100644 --- a/src/FluidHPSS/FluidHPSS.cpp +++ b/src/FluidHPSS/FluidHPSS.cpp @@ -18,5 +18,5 @@ PluginLoad(FluidSTFTUGen) { ft = inTable; using namespace fluid::client; - makeSCWrapper("FluidHPSS", ft); + makeSCWrapper("FluidHPSS", ft); }