SharpLibEuropeanDataFormat 0.2.0
dotnet add package SharpLibEuropeanDataFormat --version 0.2.0
NuGet\Install-Package SharpLibEuropeanDataFormat -Version 0.2.0
<PackageReference Include="SharpLibEuropeanDataFormat" Version="0.2.0" />
paket add SharpLibEuropeanDataFormat --version 0.2.0
#r "nuget: SharpLibEuropeanDataFormat, 0.2.0"
// Install SharpLibEuropeanDataFormat as a Cake Addin #addin nuget:?package=SharpLibEuropeanDataFormat&version=0.2.0 // Install SharpLibEuropeanDataFormat as a Cake Tool #tool nuget:?package=SharpLibEuropeanDataFormat&version=0.2.0
Summary
SharpLibEuropeanDataFormat allows you to read EDF files typically used in medical applications. See EDF specification. Support for writing was left in place but is untested and most certainly broken.
This project is provided under the terms of the MIT license.
Binary Distribution
The easiest way to make use of this library in your own project is to add a reference to the following NuGet package.
European Data Format
Header
# Chars | File description |
---|---|
8 ascii | version of this data format (0) |
80 ascii | local patient identification |
80 ascii | local recording identification |
8 ascii | startdate of recording (dd.mm.yy) |
8 ascii | starttime of recording (hh.mm.ss) |
8 ascii | number of bytes in header record |
44 ascii | reserved |
8 ascii | number of data records |
8 ascii | duration of a data record, in seconds |
4 ascii | number of signals (ns) in data record |
ns * 16 ascii | ns * label (e.g. EEG Fpz-Cz or Body temp) |
ns * 80 ascii | ns * transducer type (e.g. AgAgCl electrode) |
ns * 8 ascii | ns * physical dimension (e.g. uV or degreeC) |
ns * 8 ascii | ns * physical minimum (e.g. -500 or 34) |
ns * 8 ascii | ns * physical maximum (e.g. 500 or 40) |
ns * 8 ascii | ns * digital minimum (e.g. -2048) |
ns * 8 ascii | ns * digital maximum (e.g. 2047) |
ns * 80 ascii | ns * prefiltering (e.g. HP:0.1Hz LP:75Hz) |
ns * 8 ascii | ns * nr of samples in each data record |
ns * 32 ascii | ns * reserved |
Data Record
# Chars | File description |
---|---|
nr of samples[1] * integer | first signal in the data record |
nr of samples[2] * integer | second signal |
.. | |
.. | |
nr of samples[ns] * integer | last signal |
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net6.0 is compatible. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 is compatible. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
.NET Framework | net48 is compatible. net481 was computed. |
-
.NETFramework 4.8
- Microsoft.CSharp (>= 4.7.0)
- System.Data.DataSetExtensions (>= 4.5.0)
-
net6.0
- Microsoft.CSharp (>= 4.7.0)
- System.Data.DataSetExtensions (>= 4.5.0)
-
net7.0
- Microsoft.CSharp (>= 4.7.0)
- System.Data.DataSetExtensions (>= 4.5.0)
-
net8.0
- Microsoft.CSharp (>= 4.7.0)
- System.Data.DataSetExtensions (>= 4.5.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
v0.2.0 Various bug fix and support for .NET 6, 7 and 8.
v0.1.4 Support reading floating point record duration.
v0.1.3 Making sure files can be shared while reading them.
v0.1.2 Reading signal by name now returns Signal object.
v0.1.1 Reading multiple single signals now works.
v0.1.0 Adding the ability to read a single signal.
v0.0.6 Adding function to compute signal sample time.
v0.0.5 Fixing date parsing issue on machine with en-US format.
v0.0.3 Start time and record time as DateTime. Various refactoring.