API for Online Data Analysis and Experiment Control

NetCom Client is an application programming interface (API) that communicates with the NetCom Server in Pegasus for online interaction with custom, user-written programs, resulting in a very powerful experiment control environment. NetCom provides network delivery of user-specified subsets of all data records generated by Pegasus for real-time data analysis and experiment control. The data may be distributed across the network to one or more computers, each running multiple analysis programs. Commands may be sent to control Pegasus and its hardware interfaces, as well as requesting status of most Pegasus parameters.

NetCom programs can generate Event Records to mark significant events during an experiment. These will be logged to the
Pegasus Event Record file (.nev). All Event Records processed by Pegasus will be sent to all NetCom programs.

NetCom Modes

Simple Single NetCom Connection Mode

NetCom Diagram 1 of 2

This mode provides the easiest method for running a NetCom program because a direct connection is made to Pegasus. This scenario is used when running SpikeSort 3D online.

Multiple NetCom Programs running through NetCom Router

NetCom Diagram 2 of 2

With many NetCom Applications for complex experiments, this mode allows multiple programs to receive Pegasus data records, and to control Pegasus and Hardware Interfaces. The NetCom Router program is used to manage the multiple NetCom connections. By placing the Router in a separate PC, the processing load of managing the multiple connections is moved from the Pegasus acquisition computer.

This mode allows a very complex experiment control and data analysis program to be “broken up” between several NetCom programs with each program handling one aspect of the task. For example, one NetCom program can generate randomized trial types, another can control the specific steps in each trial type, a third can perform signal processing and trial scoring, while a fourth can segregate and display data for each trial outcome. The multiple NetCom programs can communicate using Event Records because all event records are “echoed” back out from Pegasus through NetCom, allowing each unique aspect of the task to be written in several simpler NetCom programs, each easier to write, test, debug and enhance.

Local Host

Ethernet socket functions allow virtual network communications between programs running on the same computer through a service known as the Local Host. Thus, separate computers are not required for NetCom to be used.

The NetCom library and several example programs (including source code) can be found on our research website at:

Programming languages supported by NetCom include:

NOTE: SpikeSort 3D Software is not intended for the diagnosis or treatment of disease.