From 7a1bdc5a0294724c9814ba6119c9f0fc10d9f62c Mon Sep 17 00:00:00 2001 From: Owen Green Date: Fri, 12 Jun 2020 11:53:08 +0100 Subject: [PATCH] Revert changes to Corpus Builders and help files now that we have bypass in FluidDataWr --- include/clients/rt/FluidDataSetWr.hpp | 17 +++++++---------- .../Classes/FluidCorpusBuilders.sc | 5 ++--- .../Classes/FluidProcessSlices.schelp | 7 +++---- 3 files changed, 12 insertions(+), 17 deletions(-) diff --git a/include/clients/rt/FluidDataSetWr.hpp b/include/clients/rt/FluidDataSetWr.hpp index 1fbb006..20fcf0f 100644 --- a/include/clients/rt/FluidDataSetWr.hpp +++ b/include/clients/rt/FluidDataSetWr.hpp @@ -23,19 +23,18 @@ namespace client { class DataSetWriterClient : public FluidBaseClient, OfflineIn, OfflineOut { public: - FLUID_DECLARE_PARAMS( - DataSetClientRef::makeParam("dataSet", "DataSet Name"), - StringParam("labelPrefix","Label Prefix"), - LongParam("labelOffset", "Label Counter Offset", 0), - BufferParam("buf", "Data Buffer") - ); + FLUID_DECLARE_PARAMS(StringParam("label", "Label"), + BufferParam("buf", "Data Buffer"), + DataSetClientRef::makeParam("dataSet", "DataSet Name")); DataSetWriterClient(ParamSetViewType& p) : mParams(p) {} template Result process(FluidContext&) { - auto dataset = get<0>().get(); + auto& idx = get<0>(); + auto buf = get<1>(); + auto dataset = get<2>().get(); if (auto datasetPtr = dataset.lock()) { std::stringstream ss; @@ -43,6 +42,7 @@ public: index labelOffset = get<2>(); if(labelOffset >= 0) ss << labelOffset + (mCounter++); + auto buf = get<3>(); return datasetPtr->addPoint(ss.str(), buf); @@ -50,9 +50,6 @@ public: else return {Result::Status::kError, "No dataset"}; } - - private: - index mCounter{0}; }; using NRTThreadedDataSetWriter = diff --git a/release-packaging/Classes/FluidCorpusBuilders.sc b/release-packaging/Classes/FluidCorpusBuilders.sc index 0c6bf3b..af7d58f 100644 --- a/release-packaging/Classes/FluidCorpusBuilders.sc +++ b/release-packaging/Classes/FluidCorpusBuilders.sc @@ -83,14 +83,13 @@ FluidSliceCorpus { var rawPoints = Array.newFrom(a).asInteger; if(rawPoints[0] != [v[\bounds][0]]){rawPoints = [v[\bounds][0]] ++ rawPoints}; if(rawPoints.last != [v[\bounds][1]]){rawPoints=rawPoints ++ [v[\bounds][1]]}; + rawPoints.doAdjacentPairs{|a,b| var dict; if ((b - a) >= 1){ dict = IdentityDictionary(); dict.putAll(v); dict[\bounds] = [a,b]; - dict[\prefix] = k; - dict[\index] = sliceindex; index.add(((k ++ "-" ++sliceindex).asSymbol)->dict); sliceindex = sliceindex + 1; } @@ -141,7 +140,7 @@ FluidProcessSlices{ counter = counter + 1; ("Processing" + counter ++ "/" ++ total).postln; idx = counter; - v[\allindex] = counter; + v[\index] = counter; v[\voice] = jobID; OSCFunc({ completed = completed + 1; diff --git a/release-packaging/HelpSource/Classes/FluidProcessSlices.schelp b/release-packaging/HelpSource/Classes/FluidProcessSlices.schelp index 727a30a..4fcee45 100644 --- a/release-packaging/HelpSource/Classes/FluidProcessSlices.schelp +++ b/release-packaging/HelpSource/Classes/FluidProcessSlices.schelp @@ -107,13 +107,12 @@ s.reboot; //write pitch statistics into a dataset ( ~extractor = FluidProcessSlices({|src,start,num,data| - var pitch, stats, labelPrefix, labelIndex, i; + var pitch, stats, label,i; i = data.value[\voice]; - labelPrefix = data.value[\prefix]; - labelIndex = data.value[\index]; + label = data.key; pitch = FluidBufPitch.kr(src,start,num,features:~pitchbufs[i]); stats = FluidBufStats.kr(~pitchbufs[i],stats:~statsbufs[i],trig:Done.kr(pitch)); - FluidDataSetWr.kr(~pitchdata,labelPrefix,labelIndex,buf:~statsbufs[i],trig:Done.kr(stats)) + FluidDataSetWr.kr(~pitchdata,label,-1,buf:~statsbufs[i],trig:Done.kr(stats)) }); )