/// <inheritdoc /> protected override void Initialize() { var headers = new MetadataStreamHeader[_numberOfStreams]; for (int i = 0; i < _numberOfStreams; i++) { headers[i] = MetadataStreamHeader.FromReader(_entriesReader); } for (int i = 0; i < _numberOfStreams; i++) { var header = headers[i]; var streamReader = _metadataReader.Fork(_metadataReader.FileOffset + header.Offset, headers[i].Size); Items.Add(_metadataStreamReader.ReadStream(header, streamReader)); } }
public IMetadataStream ReadStream(MetadataStreamHeader header, IBinaryStreamReader reader) { return(header.Name == KoiStreamName ? new KoiStream(KoiStreamName, new DataSegment(reader.ReadToEnd()), Logger) : _reader.ReadStream(header, reader)); }
public IMetadataStream ReadStream(PEReaderContext context, MetadataStreamHeader header, ref BinaryStreamReader reader) { return(header.Name == KoiStreamName ? new KoiStream(KoiStreamName, new DataSegment(reader.ReadToEnd()), Logger) : _reader.ReadStream(context, header, ref reader)); }