On 04/19/2013 11:28 AM, Holger Marzen wrote: > So I'd say that getPluginLatency() and the data structures are ok, but > we have an error in connections.begin(). Of course it should be fixed > there instead subtracting 1 after its invocation. > > Unfortunately due to my lack of C++ know how I can't find the place > where it's defined.
In this case, begin() is from std::vector, so there probably isn't a bug in it. (Note that this code only ever uses the first entry in the connections container (begin()).) I actually looked at the code for once! Here's the path to follow to find out where begin() is coming from: connections is defined on line 2026 of JackDriver.cpp as a MappedObjectValueList. MappedObjectValueList is defined on line 39 of MappedCommon.h as: typedef std::vector<MappedObjectValue> MappedObjectValueList; Your "minus one" might be acting as a conversion from one kind of ID to another that is indeed fixing the problem. It appears that there might be a disagreement between the numbers returned by MappedAudioFader::getConnections() and the numbers expected by AudioInstrumentMixer::getPluginLatency(). Close examination of those two functions should reveal the problem. Ted. ------------------------------------------------------------------------------ Precog is a next-generation analytics platform capable of advanced analytics on semi-structured data. The platform includes APIs for building apps and a phenomenal toolset for data science. Developers can use our toolset for easy data analysis & visualization. Get a free account! http://www2.precog.com/precogplatform/slashdotnewsletter _______________________________________________ Rosegarden-devel mailing list [email protected] - use the link below to unsubscribe https://lists.sourceforge.net/lists/listinfo/rosegarden-devel
