[ < ] [ > ]   [ << ] [ Up ] [ >> ]         [Top] [Contents] [Index] [ ? ]

A. Glossary

AC-coupled signal

A signal, such as an ECG, for which only variations in level, rather than absolute levels, are significant. Such signals are usually passed through high-pass filters before they are digitized, in order to remove any DC component (baseline offset), so that the gain can be chosen optimally for the range of variation in the signal.


Analog-to-digital converter.

ADC resolution

The number of significant bits per sample. Typical ADCs yield between 8 and 16 bits of resolution.

ADC zero

The value produced by the ADC given a 0 volt input. For bipolar ADCs, this value is usually 0, but for the unipolar (offset binary) converter used for the MIT DB, the ADC zero was 1024.


The unit of amplitude for samples.


The American Heart Association Database for the Evaluation of Ventricular Arrhythmia Detectors, consisting of 80 records identified by four-digit record names.

AHA format

The format formerly used for interchange of AHA DB and MIT DB records on 9-track tape between institutions, not used for on-line files because it is relatively wasteful of storage space compared to other WFDB-compatible formats. (q.v.).


A label, associated with a particular sample, which describes a feature of the signal at that time. Most annotations are QRS annotations and indicate the QRS type (normal, PVC, SVPB, etc.). Annotations are written by putann and read by getann.

Annotation code

An integer in the range of 1 to ACMAX (defined in ‘<wfdb/ecgcodes.h>’) inclusive, which denotes an event type.

Annotation file

A set of annotations in time order.

Annotator name

A name associated with an annotation file. The annotation file name is constructed from the record name by appending a ‘.’ and the annotator name. On CDROMs and MS-DOS file systems, the annotator name is restricted to three characters.

Annotator [number]

An integer by which an annotation file, once opened, is known. Input annotators and output annotators each have their own series of annotator numbers assigned in serial order beginning with 0.

Application program

In this guide, a program that uses the WFDB library to do something.


The annotator name for the reference annotation files (originally, ‘atruth’, i.e., the "truth" annotations).

Base counter value

The counter value (q.v.) that corresponds to sample 0. The base counter value is read by getbasecount, and set by setbasecount (or by any of the functions that read header files). If not defined explicitly, the base counter value is taken to be 0.

Base time

The time of day that corresponds to sample 0 in a given record. For MIT, AHA, and ESC DB records, the base time was not recorded and is taken to be 0:0:0 (midnight).

Baseline [amplitude]

The sample value that corresponds to the baseline (isoelectric level or physical zero level) in the signal. This quantity may drift during the record for a variety of reasons, in which case the baseline field of the WFDB_Siginfo object that describes the signal is only an approximation. The baseline is not the same as the ADC zero (q.v.), which is a fixed characteristic of the digitizer.

Calibration file

A file containing data used to build a calibration list (q.v.).

Calibration list

A memory-resident linked list of WFDB_Calinfo objects (see section Calibration Information Structures). Each such structure specifies the size and type of the calibration pulse, and the customary plotting scale, for a particular type of signal.


A read-only medium used for distribution of a number of databases readable using the WFDB library, including the ESC and Long-Term ST databases, among others. CDROMs are physically identical in appearance to audio compact disks.

Closing [a record]

The process of completing I/O associated with a record.

Counter frequency

The difference between counter values (q.v.) that are separated by an interval of one second. The counter frequency is constant throughout any given record. It may be undefined, in which case it is treated as equivalent to the sampling frequency (q.v.) by the WFDB library. The counter frequency is read by getcfreq, and set by setcfreq (or by any of the functions that read header files).

Counter value

A number that serves as a time reference, in a record for which a counter frequency is defined. A counter value may be converted to the time in seconds from the beginning of the record by subtracting the base counter value (q.v.) and dividing the remainder by the counter frequency. The units of ‘c’-prefixed strtim arguments are counter values.

Database files

Those files (annotation files, header files, signal files, and calibration files) that are accessed via the WFDB library.

Database path

The names of the directories in which header, annotation, and calibration files are kept. (Signal files may be located in these directories or elsewhere; header files specify their locations.) To modify the database path, the environment variable WFDB must be set by the user and exported accordingly.

DC-coupled signal

A signal, such as a blood pressure signal, for which absolute levels are significant. Such signals must be digitized without being passed through high-pass filters, in order to preserve absolute levels.


The European ST-T Database, consisting of 90 records identified by ‘e’-prefixed four-digit record names.


A set of samples, containing all samples that occur within a given frame interval. For an ordinary record, a frame contains exactly one sample of each signal; for a multi-frequency record, a frame contains at least one sample of each signal, and more than one sample of each oversampled signal (q.v.).

Frame interval

A time interval during which at least one sample exists for each signal. For an ordinary record, the frame interval and the sampling interval are identical. For a multi-frequency record, the frame interval is chosen to be an integer multiple of each sampling frequency used.

Frame rate

The basic sampling frequency defined for a multi-frequency record; the reciprocal of the frame interval. The frame rate is usually the lowest sampling frequency used for any signal included in the record.


In this context, the number of adus (q.v.) per physical unit, referred to the original analog signal. Gain in this sense is directly proportional to the degree of amplification (the usual meaning of the word) of the analog signal prior to digitization. Gain may vary between signals in a record.


The suffix (extension) that designates a header file (originally ‘header’).

header file

A file accessible via the WFDB library that describes the signal files associated with a given database record. A header file has a name of the form ‘record.hea’, where record is the record name (q.v.).

High-resolution mode

An alternative mode for reading a multi-frequency record using getvec, that can be selected using setgvmode. In high-resolution mode, getvec replicates samples of signals digitized at less than the maximum sampling frequency, so that each sample of any oversampled signals appear in at least one sample vector.

Info string

Free text within a header file. Info strings can be read using getinfo and written using putinfo.

Local record

A record for which the signal files reside in the current directory, typically used for user-created signals. Records ‘8l’ and ‘16l’ are local records.

Location [of an annotation]

Every annotation has time, num, and chan attributes that define its location within a virtual array of annotations. See Canonical order of annotations.

Canonical order of annotations

Normally, annotations are arranged in time order within an annotation file. Annotations that have identical time attributes are arranged in num and chan order. Annotations that have identical locations (i.e., identical time, num, and chan attributes) should not normally occur in a single annotation file; if this does happen, the last annotation at any given location is treated as a replacement of any previous annotations at that location.

Low-resolution mode

The default mode for reading a multi-frequency record using getvec. In low-resolution mode, getvec returns one sample per signal per frame, by decimating any oversampled signals to the frame rate.


The Massachusetts Institute of Technology–Beth Israel Hospital Arrhythmia Database, consisting of 48 records identified by three-digit record names.

MIT format

One of a set of WFDB-compatible formats for header, signal, and annotation files that were first used for the MIT-BIH Arrhythmia Database. The term WFDB-compatible format should be used unless referring specifically to the formats used for the MIT DB (single-segment header format, signal format 212, and bit-packed annotation format).

Modification label

An “invisible” annotation at the beginning of an annotation file. A modification label defines an annotation mnemonic and a corresponding description. When annopen (or wfdbinit) opens an annotation file that contains modification labels, it automatically calls setannstr and setanndesc to add the mnemonics and descriptions to the translation tables used by annstr, strann, and anndesc. When annopen (or wfdbinit) creates an annotation file, it automatically generates modification labels, for each annotation code that has been (re)defined using setannstr or setanndesc. For this reason, you should normally make all of your calls to setannstr and setanndesc before calling annopen or wfdbinit. (An exception is if you are simply translating mnemonics and descriptions into another language, rather than redefining them.) Version 5.3 and later versions of the WFDB library support reading and writing modification labels; earlier versions read modification labels as NOTE annotations.

Multi-frequency record

A record containing signals sampled at two or more sampling frequencies. Version 9.0 and later versions of the WFDB library support reading and writing multi-frequency records.

Multi-segment record

A composite record that is the concatenation of two or more ordinary (single-segment) records. Multi-segment records do not have their own signal files (the signal files of their constituent segments are read when it is necessary to read signals of multi-segment records), but they have their own header files (created using setmsheader), and may have their own annotation files as well (annotation files for the constituent segments of a multi-segment record are not concatenated automatically when the record is read). The WFDB Software Package includes wfdbcollate, an application that can create multi-segment records from sets of single-segment records. Version 9.1 and later versions of the WFDB library support reading and writing multi-segment records.

Multiplexed signal file

A set of vectors in time order, each consisting of two or more integer samples, thus representing an equal number of signals.


WFDB files made available by an FTP or HTTP (web) server; readable by applications linked with a NETFILES-enabled WFDB library. A NETFILES-enabled WFDB library can be created by compiling the WFDB library sources with the symbol WFDB_NETFILES defined (to anything; its value is not important, only that it is defined) and then linking them with the libcurl library available from http://curl.haxx.se/.

9-track tape

A medium used for archival storage of WFDB records, which was once nearly universally available on minicomputers and larger systems. The important parameters are tape density (typically 800 or 1600 bpi) and block size (typically some multiple of 512 bytes). Higher tape density and larger block size permit more data to be stored on a tape.

Opening [a database record or a file]

The process of making a database record or a file accessible, if necessary by creating it.

Oversampled signal

In a multi-frequency record, any signal recorded at a sampling frequency greater than the frame rate (q.v.).

Physical unit

The natural unit of measurement of the original analog signal (e.g., millivolts, liters per second, degrees). To convert samples into physical units, subtract the ADC zero and divide the remainder by the gain.

Physical zero

The level (in physical units) that corresponds to the baseline (in adu), normally zero physical units. For example, physical zero for a pressure signal with units of mmHg is 0 mmHg.


The home of the WFDB library, and a source for recorded physiologic signals and software for use with them. All materials on PhysioNet are freely available. The main PhysioNet server is http://physionet.org/, located at MIT in Cambridge, Massachusetts; PhysioNet mirror sites are located around the world (see http://physionet.org/mirrors/ for a list).

Piped record

A database record for which a signal file is designated as ‘-’, signifying that it is to be read from the standard input or written to the standard output. Records ‘8’ and ‘16’ are piped records, as are those defined within the ‘pipe’ subdirectory of the system-wide database directory (q.v.)


Extraneous bytes at the beginning of a signal file that are not to be read as samples. Signal files created using the WFDB library do not contain prologs, but signal files created using other means may contain prologs. To read such a signal file using the WFDB library, provided that the sample data are in a supported format, it is sufficient to record the length of the prolog (in bytes) in the appropriate locations in a header file that names the signal file. If you need to create such a header file, refer to the description of the byte offset field in header(5) (the specification of the header file format in the WFDB Applications Guide) or see section wfdbsetstart.


An extensible set of files that may include signal files, annotation files, and a header file, all of which are associated with the same original signals. Only the header file is mandatory. Although records are sometimes called tapes for historical reasons, records are now more commonly maintained on CDROMs or magnetic disks than on tape.

Record name

A character string that identifies a database record. Record names of MIT DB records are 3-digit numerals, those of AHA DB records are 4-digit numerals, and those of ESC DB records are 4-digit numerals with a prefixed ‘e’. Record names may contain up to WFDB_MAXRNL (defined in ‘<wfdb/wfdb.h>’) characters, including any combination of letters, digits, and underscores. Case (the difference between ‘e’ and ‘E’, for example) is significant in record names, even under operating systems such as MS-DOS that do not treat case as significant in file names.

Reference annotation file

An annotation file supplied by the creator of a record to document its contents as accurately and thoroughly as possible. The annotator name ‘atr’ is reserved for reference annotation files.


An integer (of at least 16 bits) that corresponds to a voltage measured at a given instant by an analog-to-digital converter. Samples are written by putvec and read by getvec.

Sample interval

The unit of time; the interval between consecutive samples of a given signal.

Sample number

An attribute of a sample defined as the number of samples of the same signal that precede it; thus the first sample of any signal has sample number 0. Sample numbers are long integers (32 bits). Samples that have the same sample number in different signals of a given record may be treated as having been observed simultaneously.

Sampling frequency

The number of samples of a given signal that represent one second of the original analog signal. The sampling frequency is constant throughout a signal file, and is the same for all signals in a given record.


A continuously varying function of time that is approximated by discrete samples.

Signal file

A set of samples in time order, which represent a signal or signal group. Signal files usually have names of the form record.dat, but this is only a convention and is not required.

Signal group

A set of signals that are multiplexed together and stored in the same file. It is possible to reset input pointers for all signals in a given signal group (see section isgsettime), but not independently for individual signals within a signal group.

Signal group number

A number by which a signal file, once opened, is known.

Signal number

An integer by which a signal, once opened, is known. Input and output signals each have their own series of signal numbers assigned in serial order beginning with 0.


The time difference between samples having the same sample number but belonging to different signals. Ideally the skew is zero (or less than one sample interval), but in some cases this is not so. For example, if the signals were originally recorded on multitrack analog tape, very small differences in the azimuth of the recording and playback heads may result in measurable skew among signals. If the skew can be measured (for example, by reference to features of two signals with a known time difference), it can be recorded in the header file for a record; once this has been done, getvec and getframe correct for skew automatically. If you need to correct for skew, see skewedit(1) and header(5) (in the WFDB Applications Guide), or see section wfdbsetskew. Prospectively, if you anticipate that skew may be a problem, it is a good idea to apply an easily identifiable synchronization pulse to all your inputs simultaneously while recording; you can then locate this pulse in each digitized signal and use these measurements to correct for skew.

Standard time format

Any string format legal as an argument for strtim (see section timstr and strtim).

System-wide database directory

The directory that contains local copies of the default WFDB calibration file, WFDB sample record 100s, and local, piped, and tape header files. This directory is created when the WFDB Software Package is installed, and by default it is included in the WFDB path (as the second component, following the user’s current directory). It is called the “system-wide” database directory because it is shared by all users of the system on which it resides. Under Unix, the system-wide database directory is usually ‘/usr/database’ or ‘/usr/local/database’; under MS-DOS or MS-Windows, it is usually ‘c:\database’.


A database record.


In this guide, synonymous with sample number (q.v.). Thus the “time of an annotation” is the sample number of the sample to which the annotation “points”.

WFDB-compatible format

Any of the standard formats readable and writable by the WFDB library, for storage of WFDB records in PhysioBank and on CDROMs.

WFDB library

A set of functions (subroutines), able to read and write database files, callable by C and C++ programs, and described in this guide.

WFDB path

The database path (q.v.).

[ < ] [ > ]   [ << ] [ Up ] [ >> ]

PhysioNet (wfdb@physionet.org)