From: Yann O. <or...@fr...> - 2008-06-23 06:18:15
|
Hi Robert, Robert Hamilton a écrit : > Hello, > > I have a question about the select3 switch. If the index accepts only > a two state input, then how is the third stream selected? The selector of select2 takes values in {0,1} but the selector of select3 takes values in {0,1,2}. > I presume that one would have to use the select3 switch with a button, > as follows: Before the first mouse-click the index state is zero, and > input stream 0 is selected; after the first mouse-click the index > state changes to 1, and stream 1 is selected; after the second > sequential mouse-click, the index state changes back to zero, and the > stream 2 is selected; and so forth. . . In other words, instead of > being based on the absolute state of the index, the output streams 0, > 1, and 2 are selected in sequence -- like a radio button. Since the selector of select3 takes values in {0,1,2} you don't have to do that. But let say for the fun that you would like to implement a sequential selector, you could write : selector = button("next") : \(x).(x-x' > 0) : (+:%(3))~_; process = select3(selector); where \(x).(x-x' > 0) transforms the signal produced by the next button into an impulse every time the button is pressed and (+:%(3))~_ counts these impulses module 3 Cheers Yann |