- Notifications
You must be signed in to change notification settings - Fork 1.4k
/
Copy pathIEdge.cs
36 lines (31 loc) · 1.06 KB
/
IEdge.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
usingSystem;
namespaceDataStructures.Graphs
{
/// <summary>
/// This interface should be implemented by all edges classes.
/// </summary>
publicinterfaceIEdge<TVertex>:IComparable<IEdge<TVertex>>whereTVertex:IComparable<TVertex>
{
/// <summary>
/// Gets a value indicating whether this edge is weighted.
/// </summary>
/// <value><c>true</c> if this edge is weighted; otherwise, <c>false</c>.</value>
boolIsWeighted{get;}
/// <summary>
/// Gets or sets the source.
/// </summary>
/// <value>The source.</value>
TVertexSource{get;set;}
/// <summary>
/// Gets or sets the destination.
/// </summary>
/// <value>The destination.</value>
TVertexDestination{get;set;}
/// <summary>
/// Gets or sets the weight of edge.
/// Unwighted edges can be thought of as edges of the same weight
/// </summary>
/// <value>The weight.</value>
Int64Weight{get;set;}
}
}