prevent infinite mixing loops

Prevent infinite mixing loops by disabling the send button for
a channel line when clicking it would cause an infinite loop.
This commit is contained in:
Andrew Kelley
2009-09-29 19:16:19 -07:00
parent ce7891b7bd
commit 504a03f2cf
3 changed files with 39 additions and 8 deletions

View File

@@ -97,6 +97,10 @@ public:
// delete the connection made by createChannelSend
void deleteChannelSend(fx_ch_t fromChannel, fx_ch_t toChannel);
// determine if adding a send from sendFrom to
// sendTo would result in an infinite mixer loop.
bool isInfiniteLoop(fx_ch_t fromChannel, fx_ch_t toChannel);
// return the FloatModel of fromChannel sending its output to the input of
// toChannel. NULL if there is no send.
FloatModel * channelSendModel(fx_ch_t fromChannel, fx_ch_t toChannel);