Decoder graph ============= .. code:: yaml falcon: version: 1.0 graph: processors: behavior: class: BehaviorZMQ options: address: 127.0.0.1 speed threshold: class: SpeedThreshold options: threshold dev: 10 smooth time: 1 seconds decoding filter: class: Event2State options: target event: "crossed" raw: class: OpenEphysZMQ options: port: 3335 nchannels: 384 splitter: class: Distributor options: distribution mode: slots channelmap file: //:local/decoding_model/sensormap.yaml filter(0-7): class: MultiChannelFilter options: filter: type: biquad gain: 0.175014382674721 coefficients: - [1.0, 2.0, 1.0, 1.0, -0.4116456379943422, 0.1208387236075018] - [1.0, -2.0, 1.0, 1.0, -1.888701220483925, 0.8929613419279413] spike_detector(0-7): class: SpikeFeatures options: threshold: 50.0 invert_signal: true peak lifetime: 0 features: - amplitude decoding buffer: class: Rebuffer options: buffer size: 0.1 seconds likelihoods(0-7): class: MultiLikelihoodSource options: decoding size: 0.1 decoder: class: LikelihoodsMerger encoder : class: OnlineEncoder options: model path: //:local/decoding_model/model save model: false saver: class: FileSerializer options: format: full encoding: yaml connections: - behavior.data = speed threshold - speed threshold.events = decoding filter - raw = splitter - splitter.data.(0-47) = filter0.data.(0-47) - splitter.data.(48-95) = filter1.data.(0-47) - splitter.data.(96-143) = filter2.data.(0-47) - splitter.data.(144-191) = filter3.data.(0-47) - splitter.data.(192-239) = filter4.data.(0-47) - splitter.data.(240-287) = filter5.data.(0-47) - splitter.data.(288-335) = filter6.data.(0-47) - splitter.data.(336-383) = filter7.data.(0-47) - filter(0-7).data.(0-47) = decoding buffer.data.(0-383) - decoding buffer.data.(0-383) = spike_detector(0-7).data.(0-47) - spike_detector(0-7).data.(0-47) = likelihoods(0-7).data.(0-47) - likelihoods(0-7).loglikelihood.(0-47) = decoder.loglikelihood.(0-383) - spike_detector(0-7).data.(0-47) = encoder.data.(0-383) - decoder = saver states: - [ encoder.decoder, decoder.decoder ] - [ encoder.likelihoods, likelihoods(0-7).likelihoods ] - [ decoding filter.enabled, likelihoods(0-7).to decode ]