Class: PsychoJS

core.PsychoJS(options)

PsychoJS manages the lifecycle of an experiment. It initialises the PsychoJS library and its various components (e.g. the ServerManager, the EventManager), and is used by the experiment to schedule the various tasks.

Constructor

new PsychoJS(options)

Parameters:
Name Type Description
options Object
Properties
Name Type Attributes Default Description
debug boolean <optional>
true whether or not to log debug information in the browser console
collectIP boolean <optional>
false whether or not to collect the IP information of the participant
Source:

Members

(static, readonly) Status :Symbol

PsychoJS status
Type:
  • Symbol
Properties:
Name Type Description
NOT_CONFIGURED Symbol
CONFIGURING Symbol
CONFIGURED Symbol
NOT_STARTED Symbol
STARTED Symbol
FINISHED Symbol
STOPPED Symbol
Source:

status

Properties
Source:

Methods

(protected) _captureErrors()

Capture all errors and display them in a pop-up error box.
Source:

(async, protected) _configure(configURL)

Configure PsychoJS for the running experiment.
Parameters:
Name Type Description
configURL string the URL of the configuration file
Source:

(async, protected) _getParticipantIPInfo()

Get the IP information of the participant, asynchronously.

Note: we use http://www.geoplugin.net/json.gp.

Source:

importAttributes(obj)

Make the attributes of the given object those of PsychoJS and those of the top level variable (e.g. window) as well.
Parameters:
Name Type Description
obj Object.<string, *> the object whose attributes we will mirror
Source:

openWindow(options)

Open a PsychoJS Window.

This opens a PIXI canvas.

Note: we can only open one window.

Parameters:
Name Type Description
options Object
Properties
Name Type Attributes Description
name string <optional>
the name of the window
fullscr boolean <optional>
whether or not to go fullscreen
color Color <optional>
the background color of the window
units string <optional>
the units of the window
autoLog boolean <optional>
whether of not to log
Source:
Throws:
exception if a window has already been opened
Type
Object.<string, *>

(async) quit(options)

Close everything and exit nicely at the end of the experiment, potentially redirecting to one of the URLs previously specified by setRedirectUrls.

Note: if the resource manager is busy, we inform the participant that he or she needs to wait for a bit.

Parameters:
Name Type Description
options Object
Properties
Name Type Attributes Default Description
message string <optional>
optional message to be displayed in a dialog box before quitting
isCompleted boolean <optional>
false whether or not the participant has completed the experiment
Source:

schedule(task, args)

Schedule a task.
Parameters:
Name Type Description
task the task to be scheduled
args arguments for that task
Source:

scheduleCondition(condition, thenScheduler, elseScheduler)

Schedule a series of task based on a condition.
Parameters:
Name Type Description
condition PsychoJS.condition
thenScheduler Scheduler scheduler to run if the condition is true
elseScheduler Scheduler scheduler to run if the condition is false
Source:

setRedirectUrls(completionUrl, cancellationUrl)

Set the completion and cancellation URL to which the participant will be redirect at the end of the experiment.
Parameters:
Name Type Description
completionUrl string the completion URL
cancellationUrl string the cancellation URL
Source:

(async) start(options)

Start the experiment.
Parameters:
Name Type Description
options Object
Properties
Name Type Attributes Default Description
configURL string <optional>
config.json the URL of the configuration file
expInfo Object.<string, *> <optional>
additional information about the experiment
Source: