C# Class Smrf.NodeXL.ExcelTemplate.DuplicateEdgeMerger

Merges duplicate edges in the edge worksheet.
Use MergeDuplicateEdges(Workbook) to merge duplicate edges in the edge worksheet.

"Merge" means either count duplicates and include the counts in a new edge weight column, or delete all but one edge in each set of duplicate edges, or both.

Inheritance: Object
Show file Open project: 2014-sed-team3/term-project

Public Methods

Method Description
DuplicateEdgeMerger ( ) : System

Initializes a new instance of the DuplicateEdgeMerger class.

MergeDuplicateEdges ( Microsoft workbook ) : void
MergeDuplicateEdges ( Microsoft workbook, System.Boolean countDuplicateEdges, System.Boolean deleteDuplicateEdges, String thirdColumnNameForDuplicateDetection ) : void

Protected Methods

Method Description
CountDuplicateEdges ( ListObject oEdgeTable, Object aoVertex1NameValues, Object aoVertex2NameValues, Object aoThirdColumnValues, System.Boolean bGraphIsDirected ) : void
DeleteDuplicateEdges ( ListObject oEdgeTable, Object aoVertex1NameValues, Object aoVertex2NameValues, Object aoThirdColumnValues, System.Boolean bGraphIsDirected ) : void
DeleteMarkedRows ( ListObject oEdgeTable, Range oDeleteIfEmptyData, Object aoDeleteIfEmptyValues ) : void
GetRowCount ( Object aoColumnValues ) : Int32
MarkRowsForDeletion ( ListObject oEdgeTable, Object aoVertex1NameValues, Object aoVertex2NameValues, Object aoThirdColumnValues, System.Boolean bGraphIsDirected, ListColumn &oDeleteIfEmptyColumn, Range &oDeleteIfEmptyData, Object &aoDeleteIfEmptyValues ) : void
SortEdgeTable ( ListObject oEdgeTable, Range oRangeToSortOn ) : void
TryGetEdgeKey ( Int32 iRowOneBased, Object aoVertex1NameValues, Object aoVertex2NameValues, Object aoThirdColumnValues, System.Boolean bGraphIsDirected, String &sEdgeKey ) : System.Boolean
TryGetEdgeTable ( Microsoft oWorkbook, ListObject &oEdgeTable ) : System.Boolean
TryGetInformationFromEdgeTable ( Microsoft oWorkbook, ListObject oEdgeTable, String sThirdColumnName, System.Boolean &bGraphIsDirected, Range &oVertex1NameData, Object &aoVertex1NameValues, Range &oVertex2NameData, Object &aoVertex2NameValues, Object &aoThirdColumnValues ) : System.Boolean

Private Methods

Method Description
AssertValid ( ) : void

Method Details

CountDuplicateEdges() protected method

protected CountDuplicateEdges ( ListObject oEdgeTable, Object aoVertex1NameValues, Object aoVertex2NameValues, Object aoThirdColumnValues, System.Boolean bGraphIsDirected ) : void
oEdgeTable ListObject
aoVertex1NameValues Object
aoVertex2NameValues Object
aoThirdColumnValues Object
bGraphIsDirected System.Boolean
return void

DeleteDuplicateEdges() protected method

protected DeleteDuplicateEdges ( ListObject oEdgeTable, Object aoVertex1NameValues, Object aoVertex2NameValues, Object aoThirdColumnValues, System.Boolean bGraphIsDirected ) : void
oEdgeTable ListObject
aoVertex1NameValues Object
aoVertex2NameValues Object
aoThirdColumnValues Object
bGraphIsDirected System.Boolean
return void

DeleteMarkedRows() protected method

protected DeleteMarkedRows ( ListObject oEdgeTable, Range oDeleteIfEmptyData, Object aoDeleteIfEmptyValues ) : void
oEdgeTable ListObject
oDeleteIfEmptyData Range
aoDeleteIfEmptyValues Object
return void

DuplicateEdgeMerger() public method

Initializes a new instance of the DuplicateEdgeMerger class.
public DuplicateEdgeMerger ( ) : System
return System

GetRowCount() protected method

protected GetRowCount ( Object aoColumnValues ) : Int32
aoColumnValues Object
return System.Int32

MarkRowsForDeletion() protected method

protected MarkRowsForDeletion ( ListObject oEdgeTable, Object aoVertex1NameValues, Object aoVertex2NameValues, Object aoThirdColumnValues, System.Boolean bGraphIsDirected, ListColumn &oDeleteIfEmptyColumn, Range &oDeleteIfEmptyData, Object &aoDeleteIfEmptyValues ) : void
oEdgeTable ListObject
aoVertex1NameValues Object
aoVertex2NameValues Object
aoThirdColumnValues Object
bGraphIsDirected System.Boolean
oDeleteIfEmptyColumn ListColumn
oDeleteIfEmptyData Range
aoDeleteIfEmptyValues Object
return void

MergeDuplicateEdges() public method

public MergeDuplicateEdges ( Microsoft workbook ) : void
workbook Microsoft
return void

MergeDuplicateEdges() public method

public MergeDuplicateEdges ( Microsoft workbook, System.Boolean countDuplicateEdges, System.Boolean deleteDuplicateEdges, String thirdColumnNameForDuplicateDetection ) : void
workbook Microsoft
countDuplicateEdges System.Boolean
deleteDuplicateEdges System.Boolean
thirdColumnNameForDuplicateDetection String
return void

SortEdgeTable() protected method

protected SortEdgeTable ( ListObject oEdgeTable, Range oRangeToSortOn ) : void
oEdgeTable ListObject
oRangeToSortOn Range
return void

TryGetEdgeKey() protected method

protected TryGetEdgeKey ( Int32 iRowOneBased, Object aoVertex1NameValues, Object aoVertex2NameValues, Object aoThirdColumnValues, System.Boolean bGraphIsDirected, String &sEdgeKey ) : System.Boolean
iRowOneBased System.Int32
aoVertex1NameValues Object
aoVertex2NameValues Object
aoThirdColumnValues Object
bGraphIsDirected System.Boolean
sEdgeKey String
return System.Boolean

TryGetEdgeTable() protected method

protected TryGetEdgeTable ( Microsoft oWorkbook, ListObject &oEdgeTable ) : System.Boolean
oWorkbook Microsoft
oEdgeTable ListObject
return System.Boolean

TryGetInformationFromEdgeTable() protected method

protected TryGetInformationFromEdgeTable ( Microsoft oWorkbook, ListObject oEdgeTable, String sThirdColumnName, System.Boolean &bGraphIsDirected, Range &oVertex1NameData, Object &aoVertex1NameValues, Range &oVertex2NameData, Object &aoVertex2NameValues, Object &aoThirdColumnValues ) : System.Boolean
oWorkbook Microsoft
oEdgeTable ListObject
sThirdColumnName String
bGraphIsDirected System.Boolean
oVertex1NameData Range
aoVertex1NameValues Object
oVertex2NameData Range
aoVertex2NameValues Object
aoThirdColumnValues Object
return System.Boolean