コード例 #1
0
        public IReadOnlyList <StreamedFrame> GenerateFrames(IAssetsExporter exporter)
        {
            List <StreamedFrame> frames = new List <StreamedFrame>();

            byte[] memStreamBuffer = new byte[m_data.Length * sizeof(uint)];
            Buffer.BlockCopy(m_data, 0, memStreamBuffer, 0, memStreamBuffer.Length);
            using (MemoryStream memStream = new MemoryStream(memStreamBuffer))
            {
                using (AssetStream stream = new AssetStream(memStream, exporter.Version, exporter.Platform))
                {
                    while (stream.BaseStream.Position < stream.BaseStream.Length)
                    {
                        StreamedFrame frame = new StreamedFrame();
                        frame.Read(stream);
                        frames.Add(frame);
                    }
                }
            }
            return(frames);
        }
コード例 #2
0
        public IReadOnlyList <StreamedFrame> GenerateFrames(Version version, Platform platform, TransferInstructionFlags flags)
        {
            List <StreamedFrame> frames = new List <StreamedFrame>();

            byte[] memStreamBuffer = new byte[m_data.Length * sizeof(uint)];
            Buffer.BlockCopy(m_data, 0, memStreamBuffer, 0, memStreamBuffer.Length);
            using (MemoryStream stream = new MemoryStream(memStreamBuffer))
            {
                using (AssetReader reader = new AssetReader(stream, version, platform, flags))
                {
                    while (reader.BaseStream.Position < reader.BaseStream.Length)
                    {
                        StreamedFrame frame = new StreamedFrame();
                        frame.Read(reader);
                        frames.Add(frame);
                    }
                }
            }
            return(frames);
        }
コード例 #3
0
        public IReadOnlyList <StreamedFrame> GenerateFrames()
        {
            List <StreamedFrame> frames = new List <StreamedFrame>();

            byte[] memStreamBuffer = new byte[m_data.Length * sizeof(uint)];
            Buffer.BlockCopy(m_data, 0, memStreamBuffer, 0, memStreamBuffer.Length);
            using (MemoryStream memStream = new MemoryStream(memStreamBuffer))
            {
                using (EndianStream stream = new EndianStream(memStream, EndianType.LittleEndian))
                {
                    while (stream.BaseStream.Position < stream.BaseStream.Length)
                    {
                        StreamedFrame frame = new StreamedFrame();
                        frame.Read(stream);
                        frames.Add(frame);
                    }
                }
            }
            return(frames);
        }