src/Edge/Edge.php
<?php
/**
* Edge.
*/
namespace GraphDS\Edge;
/**
* Class defining a generic, extendable edge object.
*/
class Edge
{
/**
* $value A value/weight held by the edge.
*
* @var float
*/
protected $value;
/**
* $vertices An array of vertices associated with the edge.
*
* @var array
*/
public $vertices;
/**
* Constructor for general Edge object.
*/
public function __construct()
{
$this->value = null;
$this->vertices = array();
}
/**
* Returns value/weight associated with this edge.
*
* @return float Value/weight associated with this edge
*/
public function getValue()
{
return $this->value;
}
/**
* Sets the value/weight associated with this edge.
*
* @param float $value Value/weight to be associated with this edge
*/
public function setValue($value = null)
{
$this->value = (double) $value;
}
/**
* Returns an array of vertices connected by this edge.
*
* @return array Vertices connected by this edge
*/
public function getConnectedVertices()
{
return $this->vertices;
}
}