public void DefineSequencePoints(
ISymbolDocumentWriter document,
int[] offsets,
int[] lines,
int[] columns,
int[] endLines,
int[] endColumns)
{
int hr;
COMException Exception;
int spCount = 0;
if (offsets != null)
spCount = offsets.Length;
else if (lines != null)
spCount = lines.Length;
else if (columns != null)
spCount = columns.Length;
else if (endLines != null)
spCount = endLines.Length;
else if (endColumns != null)
spCount = endColumns.Length;
// Don't do anything if they're not really asking for anything.
if (spCount == 0)
return;
// Make sure all arrays are the same length.
if ((offsets != null) && (spCount != offsets.Length))
throw new ArgumentException();
if ((lines != null) && (spCount != lines.Length))
throw new ArgumentException();
if ((columns != null) && (spCount != columns.Length))
throw new ArgumentException();
if ((endLines != null) && (spCount != endLines.Length))
throw new ArgumentException();
if ((endColumns != null) && (spCount != endColumns.Length))
throw new ArgumentException();
hr = SymWriter_DefineSequencePoints(
m_Writer,
((SymDocumentWriter)document).InternalDocumentWriter,
offsets.Length,
offsets,
lines, columns,
endLines, endColumns);
if (hr < 0)
{
Exception = new COMException("Call to DefineSequencePoints failed.", hr);
throw Exception;
}
}