Interface IOverlapRemovalAlgorithmFactory<TVertex>
Represents a factory of overlap removal algorithms.
Namespace: GraphShape.Algorithms.OverlapRemoval
Assembly: GraphShape.dll
Syntax
public interface IOverlapRemovalAlgorithmFactory<TVertex>
Type Parameters
| Name | Description |
|---|---|
| TVertex | Vertex type. |
Properties
| Improve this Doc View SourceAlgorithmTypes
The set of available algorithms.
Declaration
IEnumerable<string> AlgorithmTypes { get; }
Property Value
| Type | Description |
|---|---|
| System.Collections.Generic.IEnumerable<System.String> |
Methods
| Improve this Doc View SourceCreateAlgorithm(String, IOverlapRemovalContext<TVertex>, IOverlapRemovalParameters)
Creates an algorithm corresponding to given algorithmType,
context and parameters.
Declaration
IOverlapRemovalAlgorithm<TVertex> CreateAlgorithm(string algorithmType, IOverlapRemovalContext<TVertex> context, IOverlapRemovalParameters parameters)
Parameters
| Type | Name | Description |
|---|---|---|
| System.String | algorithmType | Algorithm type. |
| IOverlapRemovalContext<TVertex> | context | Creation context. |
| IOverlapRemovalParameters | parameters | Algorithm parameters. |
Returns
| Type | Description |
|---|---|
| IOverlapRemovalAlgorithm<TVertex> | Created algorithm. |
Exceptions
| Type | Condition |
|---|---|
| System.ArgumentNullException |
|
| System.ArgumentNullException |
|
| System.ArgumentNullException |
|
CreateParameters(String, IOverlapRemovalParameters)
Creates algorithm parameters for an algorithm of given algorithmType
and parameters.
Declaration
IOverlapRemovalParameters CreateParameters(string algorithmType, IOverlapRemovalParameters parameters)
Parameters
| Type | Name | Description |
|---|---|---|
| System.String | algorithmType | Algorithm type. |
| IOverlapRemovalParameters | parameters | Algorithm parameters. |
Returns
| Type | Description |
|---|---|
| IOverlapRemovalParameters | Parameters for the algorithm. |
Exceptions
| Type | Condition |
|---|---|
| System.ArgumentNullException |
|
GetAlgorithmType(IOverlapRemovalAlgorithm<TVertex>)
Gets the algorithm type from a given algorithm.
Declaration
string GetAlgorithmType(IOverlapRemovalAlgorithm<TVertex> algorithm)
Parameters
| Type | Name | Description |
|---|---|---|
| IOverlapRemovalAlgorithm<TVertex> | algorithm | Algorithm to get its type. |
Returns
| Type | Description |
|---|---|
| System.String | Algorithm type. |
Exceptions
| Type | Condition |
|---|---|
| System.ArgumentNullException |
|
IsValidAlgorithm(String)
Checks if the given algorithmType is a valid one.
Declaration
bool IsValidAlgorithm(string algorithmType)
Parameters
| Type | Name | Description |
|---|---|---|
| System.String | algorithmType | Algorithm type. |
Returns
| Type | Description |
|---|---|
| System.Boolean | True if the algorithm type is valid, false otherwise. |