void showSnapshotInfo()
        {
            MemUtil.LoadSnapshotProgress(0.01f, "creating Crawler");

            _packedCrawled = new Crawler().Crawl(_SnapshotChunks[_selectedSnapshot].unPacked);
            MemUtil.LoadSnapshotProgress(0.7f, "unpacking");

            _unpackedCrawl = CrawlDataUnpacker.Unpack(_packedCrawled);
            MemUtil.LoadSnapshotProgress(1.0f, "done");

            if (_selectedSnapshot >= 1)
            {
                MemSnapshotInfo preSnapShotChunk = _SnapshotChunks[_selectedSnapshot - 1];
                if (preSnapShotChunk != null)
                {
                    MemUtil.LoadSnapshotProgress(0.01f, "creating Crawler");

                    var tempCrawled = new Crawler().Crawl(preSnapShotChunk.unPacked);
                    MemUtil.LoadSnapshotProgress(0.7f, "unpacking");

                    _preUnpackedCrawl = CrawlDataUnpacker.Unpack(tempCrawled);
                    MemUtil.LoadSnapshotProgress(1.0f, "done");
                }
            }
            else
            {
                _preUnpackedCrawl = null;
            }
            _inspector = new Inspector(this, _unpackedCrawl);
            NetManager.Instance.RegisterCmdHandler(eNetCmd.SV_QueryStacksResponse, Handle_QueryStacksResponse);
            RefreshCurrentView();
            Repaint();
        }
Example #2
0
        void Unpack()
        {
            _unpackedCrawl = CrawlDataUnpacker.Unpack(_packedCrawled);
            _inspector     = new Inspector(this, _unpackedCrawl, _snapshot);

            if (_treeMapView != null)
            {
                _treeMapView.Setup(this, _unpackedCrawl);
            }
        }
Example #3
0
        void Unpack(Dictionary <int, int> dirtyObjectsy = null)
        {
            _unpackedCrawl = CrawlDataUnpacker.Unpack(_packedCrawled);
            _inspector     = new Inspector(this, _unpackedCrawl, _snapshot);

            if (_treeMapView != null)
            {
                _treeMapView.Setup(this, _unpackedCrawl, dirtyObjectsy);
            }
        }
        void SetPrevSnapshot(PackedMemorySnapshot snapshot)
        {
            if (snapshot == null)
            {
                return;
            }

            _snap_prev_time     = _snap_time;
            _snapshot_prev      = snapshot;
            _packedCrewled_prev = new Crawler().Crawl(_snapshot_prev);
            _unpackedCrawl_prev = CrawlDataUnpacker.Unpack(_packedCrewled_prev);
        }
Example #5
0
 void IncomingSnapshotForCompare(PackedMemorySnapshot snapshot, PackedMemorySnapshot preSnapshot = null)
 {
     if (preSnapshot != null)
     {
         var tempPrePackedCrawled = new Crawler().Crawl(preSnapshot);
         _preUnpackedCrawl = CrawlDataUnpacker.Unpack(tempPrePackedCrawled);
     }
     else
     {
         _preUnpackedCrawl = null;
     }
     _IncomingSnapshot(snapshot);
 }
Example #6
0
        void _IncomingSnapshot(PackedMemorySnapshot snapshot)
        {
            _snapshot = snapshot;

            MemUtil.LoadSnapshotProgress(0.01f, "creating Crawler");

            _packedCrawled = new Crawler().Crawl(_snapshot);
            MemUtil.LoadSnapshotProgress(0.7f, "unpacking");

            _unpackedCrawl = CrawlDataUnpacker.Unpack(_packedCrawled);
            MemUtil.LoadSnapshotProgress(0.8f, "creating Inspector");

            _inspector = new Inspector(this, _unpackedCrawl, _snapshot);
            MemUtil.LoadSnapshotProgress(0.9f, "refreshing view");

            RefreshCurrentView();
            MemUtil.LoadSnapshotProgress(1.0f, "done");
        }
        private void Unpack()
        {
            _previousUnpackedCrawl = _unpackedCrawl;
            _unpackedCrawl         = CrawlDataUnpacker.Unpack(_packedCrawled);
            _inspector             = new Inspector(this, _unpackedCrawl, _snapshot);
            _filterItems           = new FilterItems(this, _unpackedCrawl, _previousUnpackedCrawl);

            if (_treeMapView != null)
            {
                _treeMapView.Setup(this, _unpackedCrawl);
            }
            if (_spreadsheetView != null)
            {
                _spreadsheetView.Setup(this, _unpackedCrawl);
            }
            if (_viewCanvas == null)
            {
                _viewCanvas = new ViewCanvas(this);
            }
        }
        void addNewSnapshot()
        {
            MemUtil.LoadSnapshotProgress(0.01f, "creating Crawler");

            _packedCrawled = new Crawler().Crawl(_snapshot);
            MemUtil.LoadSnapshotProgress(0.7f, "unpacking");

            _unpackedCrawl = CrawlDataUnpacker.Unpack(_packedCrawled);
            MemUtil.LoadSnapshotProgress(1.0f, "done");

            var snapshotInfo = new MemSnapshotInfo();

            snapshotInfo.setSnapShotTime(Time.realtimeSinceStartup);
            snapshotInfo.setSnapshotPacked(_unpackedCrawl);

            _SnapshotOptions.Add(_SnapshotChunks.Count.ToString());
            _SnapshotChunks.Add(snapshotInfo);

            _selectedSnapshot = _SnapshotChunks.Count - 1;
        }
        public void Initialize()
        {
            if (_treeMapView == null)
            {
                _treeMapView = new TreeMapView();
            }

            if (!_registered)
            {
                UnityEditor.MemoryProfiler.MemorySnapshot.OnSnapshotReceived += IncomingSnapshot;
                _registered = true;
            }

            if (_unpackedCrawl == null && _packedCrawled != null && _packedCrawled.valid)
            {
                Unpack();
            }

            if (_unpackedCrawl_prev == null && _packedCrewled_prev != null && _packedCrewled_prev.valid)
            {
                _unpackedCrawl_prev = CrawlDataUnpacker.Unpack(_packedCrewled_prev);
            }
        }