C# Класс Reko.Gui.Windows.Controls.MixedCodeDataModel

Provides a text model that mixes code and data.
Наследование: TextViewModel
Показать файл Открыть проект Примеры использования класса

Открытые методы

Метод Описание
Clone ( ) : MixedCodeDataModel
ComparePositions ( object a, object b ) : int
CountLines ( object startPos, object endPos ) : int
GetDataItemNodes ( ) : Collection
GetPositionAsFraction ( ) : int>.Tuple

Returns the (approximate) position. This doesn't have to be 100% precise, but it shouldn't be insanely wrong either.

MixedCodeDataModel ( MixedCodeDataModel that ) : Reko.Core
MixedCodeDataModel ( Program program ) : Reko.Core
MoveToLine ( object position, int offset ) : int
SetPositionAsFraction ( int numer, int denom ) : void

Приватные методы

Метод Описание
Align ( Address addr, uint alignment ) : Address
Align ( ulong ul, uint alignment ) : ulong
CollectInstructions ( ) : void

Preemptively collect the machine code instructions in all image map blocks.

CountBlockLines ( ImageMapItem item ) : int
CountDisassembledLines ( Reko.Core.ImageMapBlock bi ) : int
CountLines ( ) : int
CountMemoryLines ( ImageMapItem item ) : int

Count the number of lines a memory area subtends.

We align mempry spans on 16-byte boundaries (//$REVIEW for now, this should be user-adjustable) so if we have a memory span straddling such a boundary, we have to account for it. E.g. the span [01FC-0201] should be rendered: 01FC 0C 0D 0F .... 0200 00 01 .. and therefore requires 2 lines even though the number of bytes is less than 16.

FindIndexOfMemoryAddress ( ImageMapItem item, Address addr ) : int

Find the index of the address within the item.

GetAddressOfLine ( ImageMapItem item, int i ) : Address
GetLineOffset ( ImageMapItem item, Address addr ) : int
SanitizeAddress ( Address position ) : Address

Given an address, attempts to make sure that it points to a valid position in the address space or to the EOF

Описание методов

Clone() публичный Метод

public Clone ( ) : MixedCodeDataModel
Результат MixedCodeDataModel

ComparePositions() публичный Метод

public ComparePositions ( object a, object b ) : int
a object
b object
Результат int

CountLines() публичный Метод

public CountLines ( object startPos, object endPos ) : int
startPos object
endPos object
Результат int

GetDataItemNodes() публичный Метод

public GetDataItemNodes ( ) : Collection
Результат Collection

GetPositionAsFraction() публичный Метод

Returns the (approximate) position. This doesn't have to be 100% precise, but it shouldn't be insanely wrong either.
public GetPositionAsFraction ( ) : int>.Tuple
Результат int>.Tuple

MixedCodeDataModel() публичный Метод

public MixedCodeDataModel ( MixedCodeDataModel that ) : Reko.Core
that MixedCodeDataModel
Результат Reko.Core

MixedCodeDataModel() публичный Метод

public MixedCodeDataModel ( Program program ) : Reko.Core
program Program
Результат Reko.Core

MoveToLine() публичный Метод

public MoveToLine ( object position, int offset ) : int
position object
offset int
Результат int

SetPositionAsFraction() публичный Метод

public SetPositionAsFraction ( int numer, int denom ) : void
numer int
denom int
Результат void