* @author Dennis Eichhorn * @copyright Dennis Eichhorn * @license OMS License 1.0 * @version 1.0.0 * @link http://orange-management.com */ namespace phpOMS\Math\Optimization\Graph; /** * Graph class * * @category Framework * @package phpOMS\Asset * @author OMS Development Team * @author Dennis Eichhorn * @license OMS License 1.0 * @link http://orange-management.com * @since 1.0.0 */ interface EdgeInterface { /** * Get edge id. * * @return mixed * * @since 1.0.0 * @author Dennis Eichhorn */ public function getId(); /** * Get edge weight. * * @return mixed * * @since 1.0.0 * @author Dennis Eichhorn */ public function getWeight(); /** * Set weight. * * @param mixed $weight Weight of edge * * @since 1.0.0 * @author Dennis Eichhorn */ public function setWeight($weight); /** * Get vertices. * * @return array * * @since 1.0.0 * @author Dennis Eichhorn */ public function getVertices() : array; /** * Set vertices. * * @param VerticeInterface $a Vertice a * @param VerticeInterface $b Vertice b * * @since 1.0.0 * @author Dennis Eichhorn */ public function setVertices(VerticeInterface $a, VerticeInterface $b); }