IArbitrarilyAccessedDataStorage
Интерфейс для чтения и записи в накопитель с произвольной адресацией.
Метод | Описание |
---|---|
ReadOf | Возвращает поток чтения данных из буфера, ассоциированного с заданным ключом. |
WriteOf | Возвращает поток записи данных в буфер, ассоциированный с ключом. |
Класс | Описание |
---|---|
Базовый интерфейс накопителя данных. |
Блоки данных накопителя адресуются произвольно в смысле доступа к произвольным компонентам данных по заданному ключу. При этом определение интерфейса IArbitrarilyAccessedDataStorage, в отличие он большинства реализаций, не налагает ограничений на сложность такого доступа.
Для получения доступа требуется знание ключа. Семантика и длина ключей могут быть различными для разных элементов доступа. Также различными могут быть типы потоков, ассоциированных с этими элементами и возвращаемых методами ReadOf и WriteOf.
Типы ключей, потоков и ассоциированных с ключами данных определяются реализацией накопителя данных.
Примером детализации может являться накопитель IContiguousDataStorage смежных данных, адресуемых индексно так, что целочисленный индекс является ключом методов чтения и записи.
Ассоциативный накопитель данных IAssociativeDataStorage, в отличие от IArbitrarilyAccessedDataStorage, вводит понятие узла, который ассоциирован с собственным накопителем данных IDataStorage, и позволяет отдельными методами искать, создавать и удалять узлы, данные которых адресуются с помощью методов IArbitrarilyAccessedDataStorage.
Реализация накопителя, которая поддерживает интерфейс IArbitrarilyAccessedDataStorage, также поддерживает интерфейсы IArbitrarilyAccessedDataStorageInput и IArbitrarilyAccessedDataStorageOutput, которые доступны через использование метода IDataStorage::RepresentAs, вызываемого над this.
- См. также
IArbitrarilyAccessedDataStorageInput Интерфейс для чтения из накопителя с произвольной адресацией данных. IArbitrarilyAccessedDataStorageOutput Интерфейс для записи в накопитель с произвольной адресацией. ArbitrarilyAccessedDataStorageRef Ссылочный адаптер, определенный над интерфейсом IArbitrarilyAccessedDataStorage. ArbitrarilyAccessedDataStorageOwn Владеющий адаптер, определенный над интерфейсом IArbitrarilyAccessedDataStorage.