Yann Bouteiller commited on
Commit
c20b8b2
·
1 Parent(s): 1a609ad

added new lsl marker for stimulation and fixed small bug

Browse files
Files changed (2) hide show
  1. portiloop/capture.py +2 -3
  2. portiloop/stimulation.py +10 -0
portiloop/capture.py CHANGED
@@ -1323,8 +1323,7 @@ class Capture:
1323
 
1324
  buffer = []
1325
 
1326
- if not self.spindle_detection_mode == 'Fast':
1327
- print('here')
1328
  stimulation_delayer = UpStateDelayer(self.frequency, self.spindle_freq, self.spindle_detection_mode == 'Peak')
1329
  stimulator.add_delayer(stimulation_delayer)
1330
  else:
@@ -1370,7 +1369,7 @@ class Capture:
1370
 
1371
  if stimulation_delayer is not None:
1372
  stimulation_delayer.add_point(point[channel-1])
1373
-
1374
  with self._pause_detect_lock:
1375
  pause = self._pause_detect
1376
  if detector is not None and not pause:
 
1323
 
1324
  buffer = []
1325
 
1326
+ if not self.spindle_detection_mode == 'Fast' and stimulator is not None:
 
1327
  stimulation_delayer = UpStateDelayer(self.frequency, self.spindle_freq, self.spindle_detection_mode == 'Peak')
1328
  stimulator.add_delayer(stimulation_delayer)
1329
  else:
 
1369
 
1370
  if stimulation_delayer is not None:
1371
  stimulation_delayer.add_point(point[channel-1])
1372
+
1373
  with self._pause_detect_lock:
1374
  pause = self._pause_detect
1375
  if detector is not None and not pause:
portiloop/stimulation.py CHANGED
@@ -46,7 +46,16 @@ class SleepSpindleRealTimeStimulator(Stimulator):
46
  channel_count=1,
47
  channel_format='string',
48
  source_id='portiloop1') # TODO: replace this by unique device identifier
 
 
 
 
 
 
 
49
  self.lsl_outlet_markers = pylsl.StreamOutlet(lsl_markers_info)
 
 
50
  self.delayer = None
51
 
52
  # Initialize Alsa stuff
@@ -102,6 +111,7 @@ class SleepSpindleRealTimeStimulator(Stimulator):
102
  # We detect a stimulation
103
  elif sig:
104
  # Record time of stimulation
 
105
  ts = time.time()
106
 
107
  # Prompt delayer to try and get a stimulation
 
46
  channel_count=1,
47
  channel_format='string',
48
  source_id='portiloop1') # TODO: replace this by unique device identifier
49
+
50
+ lsl_markers_info_fast = pylsl.StreamInfo(name='Portiloop_stimuli_fast',
51
+ type='Markers',
52
+ channel_count=1,
53
+ channel_format='string',
54
+ source_id='portiloop1') # TODO: replace this by unique device identifier
55
+
56
  self.lsl_outlet_markers = pylsl.StreamOutlet(lsl_markers_info)
57
+ self.lsl_outlet_markers_fast = pylsl.StreamOutlet(lsl_markers_info_fast)
58
+
59
  self.delayer = None
60
 
61
  # Initialize Alsa stuff
 
111
  # We detect a stimulation
112
  elif sig:
113
  # Record time of stimulation
114
+ self.lsl_outlet_markers_fast.push_sample(['FASTSTIM'])
115
  ts = time.time()
116
 
117
  # Prompt delayer to try and get a stimulation