Beispiel #1
0
        public void Inspect(PackedManagedObject managedObject)
        {
            m_ManagedObject = new RichManagedObject(snapshot, managedObject.managedObjectsArrayIndex);
            m_ManagedType   = m_ManagedObject.type;
            m_PropertyGrid.Inspect(snapshot, m_ManagedObject.packed);

            m_DataVisualizer = null;
            if (AbstractDataVisualizer.HasVisualizer(m_ManagedObject.type.name))
            {
                m_DataVisualizer = AbstractDataVisualizer.CreateVisualizer(m_ManagedObject.type.name);
                m_DataVisualizer.Initialize(snapshot, new MemoryReader(snapshot), m_ManagedObject.address, m_ManagedObject.type.packed);
            }

            m_HexView.Inspect(snapshot, managedObject.address, (ulong)managedObject.size);
        }
Beispiel #2
0
        void InspectInternal(PackedMemorySnapshot snapshot, PackedManagedObject managedObject)
        {
            m_Snapshot      = snapshot;
            m_ManagedObject = managedObject;
            if (m_ManagedObject.address == 0)
            {
                m_ErrorString = "Cannot inspect 'null' address.";
                return;
            }


            var type = m_Snapshot.managedTypes[managedObject.managedTypesArrayIndex];

            titleContent   = new GUIContent(string.Format("C# Object Inspector | {0} | {1:X}", type.name, managedObject.address));
            m_PropertyGrid = new PropertyGridControl(null, "ManagedObjectInspectorWindow.m_propertyGrid", new TreeViewState());
            m_PropertyGrid.Inspect(m_Snapshot, managedObject);
            m_ErrorString = "";
        }