PennControllerGlobal Commands

PennController( ... )

or PennController( "label" , ... ) (since version 1.0)

The PennController command creates a new PennController trial. You can use it in three environments: on its own to create a trial (since version 1.0), within PennController.Template to generate trials from a spreadsheet, or within the definition of the Ibex variable items to create single elements (deprecated since PennController 1.0).

It takes a sequence of commands as its parameter, which will define the trial’s script. Optionally, you can also pass a string as the first parameter to give a label to your trial which you can refer to when defining the experiment’s sequence order in shuffleSequence or (since PennController 1.1) in PennController.Sequence. If you pass no string for a label, the trial will be labeled unlabeled.

Example:

PennController(
    newButton("helloworld", "Hello world!")
        .print()
        .wait()
);

PennController.Template(
    row => PennController( row.Type ,
        newButton("button", row.ButtonText)
            .print()
            .wait()
    )
);

Creates one trial labeled unlabeled with a single button on the screen reading Hello world!, and generate one-button trials from a spreadsheet, assigning the text from its Type cells as their label and the text from its ButtonText cells as the button’s text (see PennController.Template).