C# Класс GSF.IO.FileStructure.IndexParser

This class provides passthrough properties for the IndexMapper class as well follows the directions of the Index Mapper to find the data cluster that contains the point in question.
Наследование: IndexMapper
Показать файл Открыть проект Примеры использования класса

Защищенные свойства (Protected)

Свойство Тип Описание
DataClusterAddress uint
FirstIndirectBlockAddress uint
FourthIndirectBlockAddress uint
SecondIndirectBlockAddress uint
ThirdIndirectBlockAddress uint

Открытые методы

Метод Описание
ClearIndexCache ( IndexParser mostRecentParser ) : void

Resets the index cache with the information from the supplied mostRecentParser

IndexParser ( SubFileDiskIoSessionPool ioSessions ) : GSF.IO.FileStructure.Media

Creates a new instance of this class.

SetPositionAndLookup ( uint positionIndex ) : void

Determines if the current sector contains the position passed. If not, it updates the current sector to the one that contains the passed position.

VirtualToPhysical ( uint positionIndex ) : uint

This function will also call IndexMapper.MapPosition so after it returns, the current block data will be updated.

Приватные методы

Метод Описание
GetBlockIndexValue ( uint blockIndex, int offset, BlockType blockType, uint blockBaseIndex ) : uint

This uses the (blockIndex,offset) values to determine what the next block index is. This also has consistency checks to determine if the file is inconsistent (potentially corruption)

UpdateBlockInformation ( ) : void

Looks up the physical/virtual block positions for the address given.

Описание методов

ClearIndexCache() публичный метод

Resets the index cache with the information from the supplied mostRecentParser
public ClearIndexCache ( IndexParser mostRecentParser ) : void
mostRecentParser IndexParser
Результат void

IndexParser() публичный метод

Creates a new instance of this class.
public IndexParser ( SubFileDiskIoSessionPool ioSessions ) : GSF.IO.FileStructure.Media
ioSessions SubFileDiskIoSessionPool IoSessions to use to read from this disk
Результат GSF.IO.FileStructure.Media

SetPositionAndLookup() публичный метод

Determines if the current sector contains the position passed. If not, it updates the current sector to the one that contains the passed position.
public SetPositionAndLookup ( uint positionIndex ) : void
positionIndex uint The position to navigate to indexed to the block data block size.
Результат void

VirtualToPhysical() публичный метод

This function will also call IndexMapper.MapPosition so after it returns, the current block data will be updated.
public VirtualToPhysical ( uint positionIndex ) : uint
positionIndex uint The virtual index address.
Результат uint

Описание свойств

DataClusterAddress защищенное свойство

The address of the first block of the data cluster.
protected uint DataClusterAddress
Результат uint

FirstIndirectBlockAddress защищенное свойство

The address of the first indirect block
protected uint FirstIndirectBlockAddress
Результат uint

FourthIndirectBlockAddress защищенное свойство

The address of the third indirect block
protected uint FourthIndirectBlockAddress
Результат uint

SecondIndirectBlockAddress защищенное свойство

The address of the second indirect block
protected uint SecondIndirectBlockAddress
Результат uint

ThirdIndirectBlockAddress защищенное свойство

The address of the third indirect block
protected uint ThirdIndirectBlockAddress
Результат uint