-
Notifications
You must be signed in to change notification settings - Fork 5
Description
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.