Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

Supported by

[solved] using expyriment's methods in inline scripts

edited January 2015 in OpenSesame

Hello,

I wonder how to run expyriment's methods such as screen.clear(), clock.wait(),... which rely on the main object created by expyriment.Design.Experiment.

Or is it recommended to stick to openexp module even if one does not care for portability (I know I will use the epxyriment backend)?

Christophe

Comments

  • edited 12:32AM

    Hi Christophe,

    The general procedure is described here

    Basically, it is just importing what you need and using it.

    from expyriment import <method>
    

    If you can do everything you need in openexp, there is no need to use experiment's functions directly. Also portability shouldn't be an issue here.

    Hope this helped.

    Eduard

    Buy Me A Coffee

  • edited 12:32AM

    Thanks for the answer, Eduard.

    But I should have been clearer. Let me attempt again.

    Yes, I am able to create stimuli with the class expyriment.stimuli and present them, however I do not see how to access the instance created by expyriment.design.Experiment which allows to access the screen, the clock, the keyboard...etc.

    More precisely, when programming directly in expyriment, once I have created this instance:

    exp = design.Experiment(name="My Experiment")

    I can access several objects: exp.screen, exp.keyboard, exp.clock...

    My main motivation to use expyriment's code is that I know it and I really enjoy the syntax.
    But I have started to replace some stuff with openexp (and now my code is an horrible mix between the two approaches, it works but...)

    Christophe

  • edited 12:32AM

    Ah sorry, then I misunderstood. However, I don't see why you shouldn't be able to use all the expyriment functionality directly in Opensesame. I just copied one of the expyriment example experiments into an inline_scriptand were able to run the experiment and access objects of it.
    Do you run into errors, if you try?

    Buy Me A Coffee

  • edited 12:32AM

    Hi Christophe,

    I guess you're looking for an instance of expyriment.design.Experiment, right? This is available as exp.expyriment in inline_script items. So exp.expyriment.screen would get you an instance of exypriment.io._screen.Screen, etc.

    Does that clear things up?

    Cheers,
    Sebastiaan

  • edited 12:32AM

    Does that clear things up?

    Yes! That is exactly what I was looking for.

    Thanks!

Sign In or Register to comment.