Skip to content

Similarity between Electrode and ProbeInterface.Contact classes #514

@bparks13

Description

@bparks13

This issue is prompted by this comment.

The core of the Electrode class has been part of the Onix1 library, but did not exist in its current form until #214 when I first created the base class from the existing NeuropixelsV2QuadShankElectrode to make it easier to work with other electrodes in the library.

The ProbeInterface.Contact struct was prompted by the creation of the OpenEphys.ProbeInterface.NET package, where I came from the other direction and created a struct in the ProbeInterface project that could handle individual contacts. Note that this is not directly a part of the ProbeInterface spec, but is an extension on top of it to handle individual contacts, since normally they are embedded as arrays in a Probe instead of as individual contacts.

Between the two objects, there are a number of similarities:

abstract class Electrode readonly struct Contact
int Index int Index
int Shank string ShankId
int IntraShankElectrodeIndex n/a
int Channel int DeviceId
PointF Position float PosX / float PosY
n/a ContactShape Shape
n/a ContactShapeParam ShapeParams
n/a string ContactId

It is also important to note that the Electrode class is extended for particular devices with additional properties, such as NeuropixelsV1Electrode which adds the Bank property.

Metadata

Metadata

Assignees

No one assigned

    Labels

    questionFurther information is requested

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions