# HG changeset patch # User Chris Cannam # Date 1362417631 0 # Node ID 49563d091790c2b2a7b7129f82f2d3202ded089b # Parent 6e11a36c335a38937444ada0cb2177ed50a1b6d4 Fix retrieval of output computes-type diff -r 6e11a36c335a -r 49563d091790 vamp.yeti --- a/vamp.yeti Mon Mar 04 12:28:19 2013 +0000 +++ b/vamp.yeti Mon Mar 04 17:20:31 2013 +0000 @@ -128,7 +128,7 @@ Unknown (); fi; -outputDescriptor rdfData od is 'a -> ~OutputDescriptor -> 'b = { +outputDescriptor rdfOutputData od is 'a -> ~OutputDescriptor -> 'b = { identifier = od#identifier, name = od#name, description = od#description, @@ -140,7 +140,7 @@ sampleType = sampleType od#sampleType, sampleRate = od#sampleRate, hasDuration = od#hasDuration, - computes = case rdfData of Some data: data.computes; None (): Unknown () esac, + get computes () = case rdfOutputData of Some data: data.computes; None (): Unknown () esac, get inferredStructure () = structureOf od, }; @@ -171,7 +171,11 @@ get maxChannelCount () = p#getMaxChannelCount(), initialise { channels, blocksize, hop } = p#initialise(channels, hop, blocksize), reset () = p#reset(), - get outputs () = array (map (outputDescriptor rdfData) p#getOutputDescriptors()), + get outputs () = + array case rdfData of + Some data: map2 outputDescriptor (map Some data.outputs) p#getOutputDescriptors(); + None (): map (outputDescriptor (None ())) p#getOutputDescriptors(); + esac, process blocks time is 'a -> ~RealTime -> 'b = featureSet p#process((map block.floats blocks) as ~float[][], 0, time), getRemainingFeatures () = featureSet p#getRemainingFeatures(),