CLASS ndr.reader.tdt_sev¶
NDR_READER_TDT_SEV - Reader class for Tucker Davis Technologies (TDT) .sev
file
This class reads data from TDT .SEV file format.
Tucker Davis Technologies: https://www.tdt.com
Superclasses¶
Properties¶
none
Methods¶
Method | Description |
---|---|
canbereadtogether | can the channels in a channel struct be read in a single function call? |
daqchannels2internalchannels | convert a set of DAQ channel prefixes and channel numbers to an internal structure to pass to internal reading functions |
epochclock | return the ndr.time.clocktype objects for an epoch |
filenamefromepochfiles | Return the file name that corresponds to the SEV directory |
getchannelsepoch | List the channels that are available on this TDT |
mfdaq_channeltypes | channel types for ndi.daq.system.mfdaq objects |
mfdaq_prefix | Give the channel prefix for a channel type |
mfdaq_type | Give the preferred long channel type for a channel type |
readchannels_epochsamples | Read the data based on specified channels |
readevents_epochsamples_native | read events or markers of specified channels for a specified epoch |
samplerate | Get the sample rate for specific channel |
t0_t1 | Return the beginning and end epoch times for an |
tdt_sev | Create a new Neuroscience Data Reader object for TDT SEV format |
underlying_datatype | get the underlying data type for a channel in an epoch |
Methods help¶
canbereadtogether - can the channels in a channel struct be read in a single function call?
[B,ERRORMSG] = CANBEREADTOGETHER(NDR_READER_BASE_OBJ, CHANNELSTRUCT)
Returns 1 if the NDR_READER_BASE_OBJ can read all of the channels in
CHANNELSTRUCT with a single function call. If they cannot be read together,
a description is provided in ERRORMSG.
In the abstract class, this returns 1 if all of the samplerate values are
the same and none are NaNs.
CHANNELSTRUCT is a structure with the following fields:
------------------------------------------------------------------------------
| Parameter | Description |
|-----------------------------|----------------------------------------------|
| internal_type | Internal channel type; the type of channel as|
| | it is known to the device. |
| internal_number | Internal channel number, as known to device |
| internal_channelname | Internal channel name, as known to the device|
| ndr_type | The NDR type of channel; should be one of the|
| | types returned by |
| | ndr.reader.base.mfdaq_type |
| samplerate | The sampling rate of this channel, or NaN if |
| | not applicable.
------------------------------------------------------------------------------
in the abstract class, this returns 1 if all the samplerates are the same
and none are NaNs
Help for ndr.reader.tdt_sev/canbereadtogether is inherited from superclass ndr.reader.base
daqchannels2internalchannels - convert a set of DAQ channel prefixes and channel numbers to an internal structure to pass to internal reading functions
CHANNELSTRUCT = DAQCHANNELS2INTERNALCHANNELS(NDR_READER_TDT_SEV_OBJ, ...
CHANNELPREFIX, CHANNELNUMBERS, EPOCHSTREAMS, EPOCH_SELECT)
Inputs:
For a set of CHANNELPREFIX (cell array of channel prefixes that describe channels for
this device) and CHANNELNUMBER (array of channel numbers, 1 for each entry in CHANNELPREFIX),
and for a given recording epoch (specified by EPOCHSTREAMS and EPOCH_SELECT), this function
returns a structure CHANNELSTRUCT describing the channel information that should be passed to
READCHANNELS_EPOCHSAMPLES or READEVENTS_EPOCHSAMPLES.
EPOCHSTREAMS is a cell array of full path file names or remote
access streams that comprise the epoch of data
EPOCH_SELECT allows one to choose which epoch in the file one wants to access,
if the file(s) has more than one epoch contained. For most devices, EPOCH_SELECT is always 1.
Output: CHANNELSTRUCT is a structure with the following fields:
------------------------------------------------------------------------------
| Parameter | Description |
|-----------------------------|----------------------------------------------|
| internal_type | Internal channel type; the type of channel as|
| | it is known to the device. |
| internal_number | Internal channel number, as known to device |
| internal_channelname | Internal channel name, as known to the device|
| ndr_type | The NDR type of channel; should be one of the|
| | types returned by |
| | ndr.reader.base.mfdaq_type |
| samplerate | The sampling rate of this channel, or NaN if |
| | not applicable. |
------------------------------------------------------------------------------
epochclock - return the ndr.time.clocktype objects for an epoch
EC = EPOCHCLOCK(NDR_READER_BASE_OBJ, EPOCHSTREAMS, EPOCH_SELECT)
Return the clock types available for this epoch as a cell array
of ndr.time.clocktype objects (or sub-class members).
For the generic ndr.reader.base, this returns a single clock
type 'dev_local'time';
See also: ndr.time.clocktype
Help for ndr.reader.tdt_sev/epochclock is inherited from superclass ndr.reader.base
filenamefromepochfiles - Return the file name that corresponds to the SEV directory
[FILENAME] = FILENAMEFROMEPOCHFILES(TDT_SEV_OBJ, FILENAME_ARRAY)
Examines the list of filenames in FILENAME_ARRAY (cell array of full path file strings) and determines which
one is an .SEV data file. FILENAME will be the parent directory where the .SEV files are contained.
getchannelsepoch - List the channels that are available on this TDT
device for a given set of files
CHANNELS = GETCHANNELSEPOCH(TDT_SEV_OBJ, EPOCHSTREAMS, EPOCH_SELECT)
Returns the channel list of acquired channels in this epoch.
CHANNELS is a structure list of all channels with fields:
---------------------------------------------------------
'name' | The name of the channel (e.g., 'ai1')
'type' | The type of data store in the channel
| (e.g., 'analog_in', 'digital_in', 'image', 'timestamp')
mfdaq_channeltypes - channel types for ndi.daq.system.mfdaq objects
CT = MFDAQ_CHANNELTYPES - channel types for ndi.daq.system.mfdaq objects
Returns a cell array of strings of supported channels of the
ndi.daq.system.mfdaq class. These are the following:
Channel type: | Description:
-------------------------------------------------------------
analog_in | Analog input channel
aux_in | Auxiliary input
analog_out | Analog output channel
digital_in | Digital input channel
digital_out | Digital output channel
marker |
See also: ndi.daq.system.mfdaq/MFDAQ_TYPE
Help for ndr.reader.tdt_sev.mfdaq_channeltypes is inherited from superclass ndr.reader.base
mfdaq_prefix - Give the channel prefix for a channel type
PREFIX = MFDAQ_PREFIX(CHANNELTYPE)
Produces the channel name prefix for a given CHANNELTYPE.
Channel type: | MFDAQ_PREFIX:
---------------------------------------------------------
'analog_in', 'ai' | 'ai'
'analog_out', 'ao' | 'ao'
'digital_in', 'di' | 'di'
'digital_out', 'do' | 'do'
'time','timestamp','t' | 't'
'auxiliary','aux','ax', | 'ax'
'auxiliary_in' |
'mark', 'marker', or 'mk' | 'mk'
'text' | 'text'
'event' or 'e' | 'e'
'metadata' or 'md' | 'md'
'digital_in_event', 'de', | 'dep'
'digital_in_event_pos','dep'|
'digital_in_event_neg','den'| 'den'
'digital_in_mark','dimp', | 'dimp'
'digital_in_mark_pos','dim' |
'digital_in_mark_neg','dimn'| 'dimn'
See also: ndi.daq.system.mfdaq/MFDAQ_TYPE
Help for ndr.reader.tdt_sev.mfdaq_prefix is inherited from superclass ndr.reader.base
mfdaq_type - Give the preferred long channel type for a channel type
TYPE = MFDAQ_TYPE(CHANNELTYPE)
Produces the preferred long channel type name for a given CHANNELTYPE.
Channel type: | MFDAQ_TYPE:
---------------------------------------------------------
'analog_in', 'ai' | 'analog_in'
'analog_out', 'ao' | 'analog_out'
'digital_in', 'di' | 'digital_in'
'digital_out', 'do' | 'digital_out'
'time','timestamp','t' | 'time'
'auxiliary','aux','ax', | 'auxiliary'
'auxiliary_in' |
'mark', 'marker', or 'mk' | 'mark'
'event' or 'e' | 'event'
See also: ndi.daq.system.mfdaq/MFDAQ_PREFIX
Help for ndr.reader.tdt_sev.mfdaq_type is inherited from superclass ndr.reader.base
readchannels_epochsamples - Read the data based on specified channels
DATA = READCHANNELS_EPOCHSAMPLES(TDT_SEV_OBJ, CHANNELTYPE, CHANNEL, EPOCH, S0, S1)
CHANNELTYPE is the type of channel to read (single text string,
such as 'ai','analog_input','time') or a cell array of strings for each channel
CHANNEL is a vector of the channel numbers to read, beginning
from 1.
EPOCH is the epoch number to read from.
DATA will have one column per channel.
readevents_epochsamples_native - read events or markers of specified channels for a specified epoch
[DATA] = READEVENTS_EPOCHSAMPLES_NATIVE(NDR_READER_BASE_OBJ, CHANNELTYPE, CHANNEL, EPOCHFILES, T0, T1)
CHANNELTYPE is the type of channel to read
('event','marker', etc). It must be a string (not a cell array of strings).
CHANNEL is a vector with the identity of the channel(s) to be read.
EPOCH is the epoch number or epochID
DATA is a two-column vector; the first column has the time of the event. The second
column indicates the marker code. In the case of 'events', this is just 1. If more than one channel
is requested, DATA is returned as a cell array, one entry per channel.
TIMEREF is an ndi.time.timereference with the NDI_CLOCK of the device, referring to epoch N at time 0 as the reference.
Help for ndr.reader.tdt_sev/readevents_epochsamples_native is inherited from superclass ndr.reader.base
samplerate - Get the sample rate for specific channel
SR = SAMPLERATE(TDT_SEV_OBJ, EPOCHSTREAMS, EPOCH_SELECT, CHANNELTYPE, CHANNEL)
SR is an array of sample rates from the specified channels in samples/sec.
CHANNELTYPE can be either a string or a cell array of strings
the same length as the vector CHANNEL.
If CHANNELTYPE is a single string, then it is assumed that that
CHANNELTYPE applies to every entry of CHANNEL.
t0_t1 - Return the beginning and end epoch times for an
epoch
T0T1 = T0_T1(TDT_SEV_OBJ, EPOCHSTREAMS, EPOCH_SELECT)
Return the beginning (t0) and end (t1) times of the epoch
EPOCH_NUMBER in the same units as the ndr.time.clocktype objects
returned by EPOCH_NUMBER.
See also: ndr.time.clocktype, EPOCHCLOCK
tdt_sev - Create a new Neuroscience Data Reader object for TDT SEV format
TDT_SEV_OBJ = TDT_SEV()
Creates a Neuroscience Data Reader object of the Tucker Davis Technologies
(TDT) .SEV file format.
Documentation for ndr.reader.tdt_sev/tdt_sev
doc ndr.reader.tdt_sev
underlying_datatype - get the underlying data type for a channel in an epoch
[DATATYPE,P,DATASIZE] = UNDERLYING_DATATYPE(NDR_READER_OBJ, EPOCHSTREAMS, EPOCH_SELECT, CHANNELTYPE, CHANNEL)
Return the underlying datatype for the requested channel.
DATATYPE is a type that is suitable for passing to FREAD or FWRITE
(e.g., 'float64', 'uint16', etc. See help fread.)
P is a matrix of polynomials that converts between the double data that is returned by
READCHANNEL. RETURNED_DATA = (RAW_DATA+P(i,1))*P(i,2)+(RAW_DATA+P(i,1))*P(i,3) ...
There is one row of P for each entry of CHANNEL.
DATASIZE is the sample size in bits.
CHANNELTYPE must be a string. It is assumed that
that CHANNELTYPE applies to every entry of CHANNEL.
Help for ndr.reader.tdt_sev/underlying_datatype is inherited from superclass ndr.reader.base