TryCountTermsNoGroups
(
IGraph oGraph,
WordMetricUserSettings oWordMetricUserSettings,
WordCounter oWordCounter,
WordPairCounter oWordPairCounter,
HashSet<String> oUniqueImportedIDs,
out GraphMetricColumn [] oGraphMetricColumns
)
{
Debug.Assert(oGraph != null);
Debug.Assert(oWordMetricUserSettings != null);
Debug.Assert(oWordCounter != null);
Debug.Assert(oWordPairCounter != null);
AssertValid();
Boolean bTextColumnIsOnEdgeWorksheet =
oWordMetricUserSettings.TextColumnIsOnEdgeWorksheet;
System.Collections.IEnumerable oEdgesOrVertices =
bTextColumnIsOnEdgeWorksheet ?
(System.Collections.IEnumerable)oGraph.Edges :
(System.Collections.IEnumerable)oGraph.Vertices;
// Count the terms in each of the column's cells.
foreach ( IMetadataProvider oEdgeOrVertex in EnumerateEdgesOrVertices(
oEdgesOrVertices, bTextColumnIsOnEdgeWorksheet, oGraph,
oUniqueImportedIDs) )
{
CountTermsInEdgeOrVertex(oEdgeOrVertex,
oWordMetricUserSettings.TextColumnName, oWordCounter,
oWordPairCounter);
}
oWordCounter.CalculateSalienceOfCountedTerms();
oWordPairCounter.CalculateSalienceOfCountedTerms();
oWordPairCounter.CalculateMutualInformationOfCountedTerms();
// Transfer the words and word pairs to graph metric value lists.
List<GraphMetricValueOrdered> oWordWordValues, oWordCountValues,
oWordSalienceValues;
List<GraphMetricValueOrdered> oWordPairWord1Values,
oWordPairWord2Values, oWordPairCountValues,
oWordPairSalienceValues, oWordPairMutualInformationValues;
CreateGraphMetricValueLists(
out oWordWordValues, out oWordCountValues, out oWordSalienceValues,
out oWordPairWord1Values, out oWordPairWord2Values,
out oWordPairCountValues, out oWordPairSalienceValues,
out oWordPairMutualInformationValues
);
foreach (CountedWord oCountedWord in oWordCounter.CountedTerms)
{
AddCountedWordToValueLists(oCountedWord, oWordMetricUserSettings,
oWordWordValues, oWordCountValues, oWordSalienceValues);
}
foreach (CountedWordPair oCountedWordPair in
oWordPairCounter.CountedTerms)
{
AddCountedWordPairToValueLists(oCountedWordPair,
oWordMetricUserSettings, oWordPairWord1Values,
oWordPairWord2Values, oWordPairCountValues,
oWordPairSalienceValues, oWordPairMutualInformationValues);
}
oGraphMetricColumns = CreateGraphMetricColumns(
oWordWordValues, oWordCountValues, oWordSalienceValues, null,
oWordPairWord1Values, oWordPairWord2Values, oWordPairCountValues,
oWordPairSalienceValues, oWordPairMutualInformationValues, null
);
return (true);
}