How to use the select statement
version
1.1.1
scope
Example.
This code is provided as example code for a user to base their code on.
description
How to use the select statement
boards
Unless otherwise specified, this example runs on the SliceKIT Core Board, but can easily be run on any XMOS device by using a different XN file.
A select statement waits for one of a set of inputs to become ready, performs the selected input and then executes a corresponding body of code. Each input is proceeded by the keyword case and its body must be terminated with a break or return statement. Case statements are not permitted to contain output operations.
In this example the select statement is used to wait for either an input on chnlend_a or an input on chnlend_b. When an input is received from either channel the value of the input is printed.
select { case chnlend_a :> chnl_input_a : printstr("Channel Input A Received "); printintln(chnl_input_a); break; case chnlend_b :> chnl_input_b : printstr("Channel Input B Received "); printintln(chnl_input_b); break; }