aqnwb 0.2.0
Loading...
Searching...
No Matches
AQNWB::IO Namespace Reference

The namespace for IO components of AqNWB. More...

Namespaces

namespace  HDF5
 Namespace for all components of the HDF5 I/O backend.

Classes

class  BaseDataType
 Represents a base data type. More...
class  ArrayDataSetConfig
 The configuration for an array dataset. More...
class  BaseIO
 The BaseIO class is an abstract base class that defines the interface for input/output (IO) operations on a file. More...
class  BaseRecordingData
 The base class to represent recording data that can be extended. More...
class  DataBlockGeneric
 Generic structure to hold type-erased data and shape. More...
class  DataBlock
 Structure to hold data and shape for a typed data vector. More...
struct  isAllowedStorageObjectType
struct  isAllowedStorageObjectType< StorageObjectType::Dataset >
struct  isAllowedStorageObjectType< StorageObjectType::Attribute >
class  ReadDataWrapper
 Class for wrapping data objects (datasets or attributes) for reading data from a file. More...
class  RecordingObjects
 The RecordingObjects class provides an interface for managing and holding groups of RegisteredType objects used for recording during data acquisition. More...

Enumerations

enum class  SearchMode { STOP_ON_TYPE = 1 , CONTINUE_ON_TYPE = 2 }
 Enum class for specifying the search mode for findTypes. More...
enum class  FileMode { Overwrite , ReadWrite , ReadOnly }
 The access mode for the file. More...

Functions

static AQNWB::Types::Status writeTimeseriesData (std::shared_ptr< RecordingObjects > recording_objects, const AQNWB::Types::SizeType &containerInd, const AQNWB::Channel &channel, const std::vector< AQNWB::Types::SizeType > &dataShape, const std::vector< AQNWB::Types::SizeType > &positionOffset, const void *data, const void *timestamps, const void *controlInput=nullptr)
 Write timeseries data to a recordingContainer dataset.
static AQNWB::Types::Status writeElectricalSeriesData (std::shared_ptr< RecordingObjects > recording_objects, const AQNWB::Types::SizeType &containerInd, const AQNWB::Channel &channel, const AQNWB::Types::SizeType &numSamples, const void *data, const void *timestamps, const void *controlInput=nullptr)
 Write ElectricalSeries data to a recordingContainer dataset.
static AQNWB::Types::Status writeSpikeEventData (std::shared_ptr< RecordingObjects > recording_objects, const AQNWB::Types::SizeType &containerInd, const AQNWB::Types::SizeType &numSamples, const AQNWB::Types::SizeType &numChannels, const void *data, const void *timestamps, const void *controlInput=nullptr)
 Write SpikeEventSeries data to a recordingContainer dataset.
static AQNWB::Types::Status writeAnnotationSeriesData (std::shared_ptr< RecordingObjects > recording_objects, const AQNWB::Types::SizeType &containerInd, const AQNWB::Types::SizeType &numSamples, const std::vector< std::string > data, const void *timestamps, const void *controlInput=nullptr)
 Write AnnotationSeries data to a recordingContainer dataset.

Detailed Description

The namespace for IO components of AqNWB.

Utility functions for NWB IO operations.

This namespace contains utility functions for helping with NWB IO operations, such as writing timeseries data, electrical series data, spike event data, and annotation series data to recordingContainer datasets.

The namespace for IO components of AqNWB

Enumeration Type Documentation

◆ FileMode

enum class AQNWB::IO::FileMode
strong

The access mode for the file.

Enumerator
Overwrite 

Opens the file and overwrites any existing file.

ReadWrite 

Opens the file with both read and write access.

Note: This is similar to r+ mode, so the file will not be created if it does not exist.

ReadOnly 

Opens the file in read only mode.

Note: This is similar to r+ mode, so the file will not be created if it does not exist.

◆ SearchMode

enum class AQNWB::IO::SearchMode
strong

Enum class for specifying the search mode for findTypes.

Enumerator
STOP_ON_TYPE 

Stop searching inside an object once a matching type is found.

CONTINUE_ON_TYPE 

Continue searching inside an object even after a matching type is found.

Function Documentation

◆ writeAnnotationSeriesData()

AQNWB::Types::Status AQNWB::IO::writeAnnotationSeriesData ( std::shared_ptr< RecordingObjects > recording_objects,
const AQNWB::Types::SizeType & containerInd,
const AQNWB::Types::SizeType & numSamples,
const std::vector< std::string > data,
const void * timestamps,
const void * controlInput = nullptr )
inlinestatic

Write AnnotationSeries data to a recordingContainer dataset.

Parameters
recording_objectsA shared pointer to the RecordingObjects instance.
containerIndThe index of the AnnotationSeries dataset within the AnnotationSeries containers.
numSamplesNumber of samples in the time for the single event.
dataA vector of strings of data to write.
timestampsA pointer to the timestamps block
controlInputA pointer to the control block data (optional)
Returns
The status of the write operation.

◆ writeElectricalSeriesData()

AQNWB::Types::Status AQNWB::IO::writeElectricalSeriesData ( std::shared_ptr< RecordingObjects > recording_objects,
const AQNWB::Types::SizeType & containerInd,
const AQNWB::Channel & channel,
const AQNWB::Types::SizeType & numSamples,
const void * data,
const void * timestamps,
const void * controlInput = nullptr )
inlinestatic

Write ElectricalSeries data to a recordingContainer dataset.

Parameters
recording_objectsA shared pointer to the RecordingObjects instance.
containerIndThe index of the electrical series dataset within the electrical series group.
channelThe channel index to use for writing timestamps.
numSamplesNumber of samples in the time, i.e., the size of the first dimension of the data parameter
dataA pointer to the data block.
timestampsA pointer to the timestamps block. May be null if multidimensional TimeSeries and only need to write the timestamps once but write data multiple times.
controlInputA pointer to the control block data (optional)
Returns
The status of the write operation.
Here is the call graph for this function:

◆ writeSpikeEventData()

AQNWB::Types::Status AQNWB::IO::writeSpikeEventData ( std::shared_ptr< RecordingObjects > recording_objects,
const AQNWB::Types::SizeType & containerInd,
const AQNWB::Types::SizeType & numSamples,
const AQNWB::Types::SizeType & numChannels,
const void * data,
const void * timestamps,
const void * controlInput = nullptr )
inlinestatic

Write SpikeEventSeries data to a recordingContainer dataset.

Parameters
recording_objectsA shared pointer to the RecordingObjects instance.
containerIndThe index of the SpikeEventSeries dataset within the SpikeEventSeries containers.
numSamplesNumber of samples in the time for the single event.
numChannelsNumber of channels in the time for the single event.
dataA pointer to the data block.
timestampsA pointer to the timestamps block
controlInputA pointer to the control block data (optional)
Returns
The status of the write operation.

◆ writeTimeseriesData()

AQNWB::Types::Status AQNWB::IO::writeTimeseriesData ( std::shared_ptr< RecordingObjects > recording_objects,
const AQNWB::Types::SizeType & containerInd,
const AQNWB::Channel & channel,
const std::vector< AQNWB::Types::SizeType > & dataShape,
const std::vector< AQNWB::Types::SizeType > & positionOffset,
const void * data,
const void * timestamps,
const void * controlInput = nullptr )
inlinestatic

Write timeseries data to a recordingContainer dataset.

Parameters
recording_objectsA shared pointer to the RecordingObjects instance.
containerIndThe index of the timeseries dataset within the timeseries group.
channelThe channel index to use for writing timestamps.
dataShapeThe size of the data block.
positionOffsetThe position of the data block to write to.
dataA pointer to the data block.
timestampsA pointer to the timestamps block. May be null if multidimensional TimeSeries and only need to write the timestamps once but write data multiple times.
controlInputA pointer to the control block data (optional)
Returns
The status of the write operation.
Here is the call graph for this function: