diff vamp-support/PluginConfiguration.h @ 188:90c962b68d7f

Merge pull request #2 from piper-audio/dev/step-and-block-size Pull step & block size out into framing struct, return in config
author Chris Cannam <cannam@all-day-breakfast.com>
date Mon, 06 Feb 2017 12:04:25 +0000
parents 3eb00e5c76c4
children ad6025dc0b04
line wrap: on
line diff
--- a/vamp-support/PluginConfiguration.h	Fri Feb 03 13:00:42 2017 +0000
+++ b/vamp-support/PluginConfiguration.h	Mon Feb 06 12:04:25 2017 +0000
@@ -45,6 +45,20 @@
 namespace piper_vamp {
 
 /**
+ * \struct Framing
+ * 
+ * A structure bundling the processing step and block size.
+ */
+struct Framing
+{
+    Framing() : // invalid by default 
+        stepSize(0), blockSize(0) { }
+    
+    int stepSize;
+    int blockSize;
+};
+
+/**
  * \class PluginConfiguration
  * 
  * PluginConfiguration is a structure bundling together data that
@@ -59,11 +73,10 @@
 struct PluginConfiguration
 {
     PluginConfiguration() : // invalid configuration by default
-	channelCount(0), stepSize(0), blockSize(0) { }
+	channelCount(0) { }
 	
     int channelCount;
-    int stepSize;
-    int blockSize;
+    Framing framing;
     typedef std::map<std::string, float> ParameterMap;
     ParameterMap parameterValues;
     std::string currentProgram;
@@ -77,8 +90,8 @@
 	PluginConfiguration c;
 	
 	c.channelCount = channelCount;
-	c.stepSize = stepSize;
-	c.blockSize = blockSize;
+	c.framing.stepSize = stepSize;
+	c.framing.blockSize = blockSize;
 
 	Vamp::PluginBase::ParameterList params = p->getParameterDescriptors();
 	for (Vamp::PluginBase::ParameterList::const_iterator i = params.begin();