Represents a group containing multiple datasets that are aligned on the first dimension.
More...
|
| DynamicTable (const std::string &path, std::shared_ptr< IO::BaseIO > io) |
| Constructor.
|
|
virtual | ~DynamicTable () |
| Destructor.
|
|
Status | initialize (const std::string &description) |
| Initializes the DynamicTable object by creating NWB attributes and column names.
|
|
Status | finalize () |
| Finalizes writing the DynamicTable.
|
|
Status | addColumn (std::unique_ptr< VectorData > &vectorData, const std::vector< std::string > &values) |
| Adds a column of vector string data to the table.
|
|
Status | addReferenceColumn (const std::string &name, const std::string &colDescription, const std::vector< std::string > &dataset) |
| Adds a column of references to the table.
|
|
Status | setRowIDs (std::unique_ptr< ElementIdentifiers > &elementIDs, const std::vector< int > &values) |
| Adds a column of element identifiers to the table.
|
|
virtual void | setColNames (const std::vector< std::string > &newColNames) |
| Sets the column names of the DynamicTable.
|
|
template<typename DTYPE = std::any> |
std::shared_ptr< VectorDataTyped< DTYPE > > | readColumn (const std::string &colName) |
| Read an arbitrary column of the DyanmicTable.
|
|
template<typename VTYPE = std::string> |
std::unique_ptr< IO::ReadDataWrapper< AttributeField, VTYPE > > | readColNames () const |
|
template<typename VTYPE = std::string> |
std::unique_ptr< IO::ReadDataWrapper< AttributeField, VTYPE > > | readDescription () const |
|
template<typename RTYPE = ElementIdentifiers> |
std::shared_ptr< RTYPE > | readIdColumn () const |
|
| Container (const std::string &path, std::shared_ptr< IO::BaseIO > io) |
| Constructor.
|
|
virtual | ~Container () |
| Destructor.
|
|
Status | initialize () |
| Initialize the container.
|
|
template<typename VTYPE = std::string> |
std::unique_ptr< IO::ReadDataWrapper< AttributeField, VTYPE > > | readNeurodataType () const |
|
template<typename VTYPE = std::string> |
std::unique_ptr< IO::ReadDataWrapper< AttributeField, VTYPE > > | readNamespace () const |
|
| RegisteredType (const std::string &path, std::shared_ptr< IO::BaseIO > io) |
| Constructor.
|
|
virtual | ~RegisteredType () |
| Destructor.
|
|
std::string | getPath () const |
| Gets the path of the registered type.
|
|
std::string | getName () const |
| Get the name of the object.
|
|
std::shared_ptr< IO::BaseIO > | getIO () const |
| Get a shared pointer to the IO object.
|
|
virtual std::string | getTypeName () const |
| Get the name of the class type.
|
|
virtual std::string | getNamespace () const |
| Get the schema namespace of the class type.
|
|
std::string | getFullTypeName () const |
| Get the full name of the type, i.e., namespace::typename
|
|
template<StorageObjectType SOT, typename VTYPE, typename std::enable_if< Types::IsDataStorageObjectType< SOT >::value, int >::type = 0> |
std::unique_ptr< IO::ReadDataWrapper< SOT, VTYPE > > | readField (const std::string &fieldPath) const |
| Support reading of arbitrary fields by their relative path.
|
|
std::shared_ptr< AQNWB::NWB::RegisteredType > | readField (const std::string &fieldPath) const |
| Read a field that is itself a RegisteredType.
|
|
virtual std::unordered_map< std::string, std::string > | findOwnedTypes (const std::unordered_set< std::string > &types={}, const IO::SearchMode &search_mode=IO::SearchMode::STOP_ON_TYPE) const |
| Find all typed objects that are owned by this object, i.e., objects that have a neurodata_type and namespace attribute and have this object as there closest parent with an assigned type.
|
|
|
static std::unordered_set< std::string > & | getRegistry () |
| Get the registry of subclass names.
|
|
static std::unordered_map< std::string, std::pair< std::function< std::unique_ptr< RegisteredType >(const std::string &, std::shared_ptr< IO::BaseIO >)>, std::pair< std::string, std::string > > > & | getFactoryMap () |
| Get the factory map for creating instances of subclasses.
|
|
static std::shared_ptr< RegisteredType > | create (const std::string &fullClassName, const std::string &path, std::shared_ptr< IO::BaseIO > io, bool fallbackToBase=false) |
| Create an instance of a registered subclass by name.
|
|
static std::shared_ptr< AQNWB::NWB::RegisteredType > | create (const std::string &path, std::shared_ptr< IO::BaseIO > io, bool fallbackToBase=false) |
| Factory method to create an instance of a subclass of RegisteredType from file.
|
|
template<typename T> |
static std::shared_ptr< T > | create (const std::string &path, std::shared_ptr< IO::BaseIO > io) |
| Factory method to create an instance of a subclass of RegisteredType by type.
|
|
static void | registerSubclass (const std::string &fullClassName, std::function< std::unique_ptr< RegisteredType >(const std::string &, std::shared_ptr< IO::BaseIO >)> factoryFunction, const std::string &typeName, const std::string &typeNamespace) |
| Register a subclass name and its factory function in the registry.
|
|
static const std::string | m_defaultUnregisteredGroupTypeClass |
| Save the default RegisteredType to use for reading Group types that are not registered.
|
|
static const std::string | m_defaultUnregisteredDatasetTypeClass |
| Save the default RegisteredType to use for reading Dataset types that are not registered.
|
|
Represents a group containing multiple datasets that are aligned on the first dimension.
This class inherits from the Container
class and provides methods to add columns of different types of data to the table.