Beispiel #1
0
        public void LoadChunksFromSection(Section section)
        {
            Debug.Assert(section.header.sectionType == SectionType.FrameCapture);

            this.section = section;

            allChunks      = new List <IChunk>();
            resourceChunks = new Dictionary <ulong, IChunk>();

            using (MemoryStream ms = new MemoryStream(section.uncompressedData))
                using (BinaryReader br = new BinaryReader(ms))
                {
                    foreach (var meta in section.chunkMetas)
                    {
                        IChunk chunk = CreateChunkByMeta(meta);
                        chunk.Load(meta, br);
                        AddChunk(chunk);

                        if (chunk is Chunk_DriverInit)
                        {
                            driverInitChunk = chunk as Chunk_DriverInit;
                        }
                    }

                    foreach (var chunk in allChunks)
                    {
                        chunk.PostLoaded();
                    }
                }
        }