Merged in refactor/macro-purge (pull request #13)

Macro purge

* Expand Macros, Fix Repetition: DataSetWr

* Add padding param to BufLoudness

* Merge branch 'fix/loudness-padding' into refactor/macro-purge

* Merge branch 'clients/inter_client_comms' into refactor/macro-purge

* Merge branch 'refactor/macro-purge' of https://bitbucket.org/flucoma/flucoma-supercollider into refactor/macro-purge

* Merge branch 'clients/inter_client_comms' into refactor/macro-purge

Approved-by: gerard
nix
Owen Green 5 years ago committed by gerard
parent 04ee2dbbb7
commit e129caafce

@ -19,18 +19,34 @@
namespace fluid { namespace fluid {
namespace client { namespace client {
namespace datasetwr {
class DataSetWriterClient : public FluidBaseClient, OfflineIn, OfflineOut {
enum { kDataSet, kIDPrefix, kIDNumber, kBuffer }; enum { kDataSet, kIDPrefix, kIDNumber, kBuffer };
static constexpr std::initializer_list<index> idNumberDefaults{0, 0};
public: constexpr std::initializer_list<index> idNumberDefaults{0, 0};
FLUID_DECLARE_PARAMS(DataSetClientRef::makeParam("dataSet", "DataSet ID"),
constexpr auto DataSetWrParams = defineParameters(
DataSetClientRef::makeParam("dataSet", "DataSet ID"),
StringParam("idPrefix", "ID Prefix"), StringParam("idPrefix", "ID Prefix"),
LongArrayParam("idNumber", "ID Counter Offset", LongArrayParam("idNumber", "ID Counter Offset", idNumberDefaults),
idNumberDefaults),
BufferParam("buf", "Data Buffer")); BufferParam("buf", "Data Buffer"));
class DataSetWriterClient : public FluidBaseClient, OfflineIn, OfflineOut {
public:
using ParamDescType = decltype(DataSetWrParams);
using ParamSetViewType = ParameterSetView<ParamDescType>;
std::reference_wrapper<ParamSetViewType> mParams;
void setParams(ParamSetViewType &p) { mParams = p; }
template <size_t N> auto &get() const {
return mParams.get().template get<N>();
}
static constexpr auto &getParameterDescriptors() { return DataSetWrParams; }
DataSetWriterClient(ParamSetViewType &p) : mParams(p) {} DataSetWriterClient(ParamSetViewType &p) : mParams(p) {}
template <typename T> Result process(FluidContext &) { template <typename T> Result process(FluidContext &) {
@ -54,8 +70,9 @@ public:
return {Result::Status::kError, "No DataSet"}; return {Result::Status::kError, "No DataSet"};
} }
}; };
} // namespace datasetwr
using NRTThreadedDataSetWriter = using NRTThreadedDataSetWriter =
NRTThreadingAdaptor<ClientWrapper<DataSetWriterClient>>; NRTThreadingAdaptor<ClientWrapper<datasetwr::DataSetWriterClient>>;
} // namespace client } // namespace client
} // namespace fluid } // namespace fluid

Loading…
Cancel
Save