Photostim
scanimage.components.Photostim, reachable as hSI.hPhotostim, drives photostimulation:
it holds the stimulus ROI groups, arms the stimulation path, triggers stimuli and monitors
the resulting signals.
See also
Photostimulation for the feature guide, and Stimulus Field API for building stimulus scanfields.
Stimulus definition
Property |
Description |
|---|---|
|
Array of |
|
|
|
Indices into |
|
Number of times the sequence repeats. |
|
|
|
Apply the active motion correction offsets to the stimulus. |
|
Use optimized waveforms for the stimulus output. |
|
Seconds by which the laser-active signal leads the stimulus. Default 1 ms. |
|
Allow further externally triggered stimuli after one completes. |
|
Output the stimulus as soon as it is armed. |
|
Seconds between automatic triggers. |
Triggering and terminals
Property |
Description |
|---|---|
|
Terminal that triggers a stimulus. |
|
Terminal that provides the sync trigger. |
|
External stimulus selection: which terminals encode which stimulus group. |
|
Outputs that report stimulus and beam activity. |
|
When true, |
|
Output that triggers the SLM. |
|
Trigger that starts monitor logging. |
|
Analog input used to monitor the beam. |
Running stimuli
Method |
Description |
|---|---|
|
Arm the photostimulation module. |
|
Disarm it. |
|
Output one stimulus group immediately. Requires |
|
Issue the stimulus trigger in software. |
|
Issue the sync trigger in software. |
|
Snapshot the stimulus ROI groups. |
hSI.hPhotostim.stimulusMode = 'onDemand';
hSI.hPhotostim.start();
hSI.abort(); % the linear scanner must not be imaging
hSI.hPhotostim.onDemandStimNow(1);
Warning
onDemandStimNow asserts rather than queueing: it throws if the mode is wrong,
if the module has not been started, or if the linear scanner is still acquiring.
Monitoring
Member |
Description |
|---|---|
|
Enable signal monitoring. |
|
Log the monitored signals. |
|
Sample rate of the monitor analog inputs, in Hz. Default 9000. |
|
Start and stop monitoring. |
|
Start and stop the display refresh timer for the monitor plot. |
|
Calibrate the monitor input and its offset. |
The monitorDataAcquired event fires whenever a new block of monitor data is available.
hL = most.ErrorHandler.addCatchingListener(hSI.hPhotostim,'monitorDataAcquired', ...
@(src,evt)disp('monitor data ready'));
Stimulus waveforms
Method |
Description |
|---|---|
|
Compute the analog output and sample rates for a stimulus group. |
|
Optimize the waveform of one actuator column of a stimulus group. |
|
Output the waveform once and return the measured feedback. |
|
Discard the optimized version. |
See also
WaveformManager -
getPhotostimWaveformSources enumerates these actuator columns.