Source code for core.graph.interface.port_graph
# -*- python -*-
#
# OpenAlea.Core
#
# Copyright 2006-2007 INRIA - CIRAD - INRA
#
# File author(s): Jerome Chopard <jerome.chopard@sophia.inria.fr>
#
# Distributed under the Cecill-C License.
# See accompanying file LICENSE.txt or copy at
# http://www.cecill.info/licences/Licence_CeCILL-C_V1-en.html
#
# OpenAlea WebSite : http://openalea.gforge.inria.fr
#
################################################################################
"""This module provide a set of concepts to add properties to graph elements
"""
__license__ = "Cecill-C"
__revision__ = " $Id$ "
[docs]class IPortGraph(object):
"""
Directed graph with connections between in_ports
of vertices and out_port of vertices
"""
####################################################
#
# edge port view
#
####################################################
[docs] def source_port (self, eid) :
"""todo"""
raise NotImplementedError
[docs] def target_port (self, eid) :
"""todo"""
raise NotImplementedError
####################################################
#
# vertex port view
#
####################################################
[docs] def out_ports(self, vid=None) :
"""todo """
raise NotImplementedError
[docs] def in_ports(self, vid=None) :
"""todo """
raise NotImplementedError
[docs] def ports(self, vid=None) :
"""todo """
raise NotImplementedError
####################################################
#
# port view
#
####################################################
[docs] def is_in_port(self, pid):
"""todo """
raise NotImplementedError
[docs] def is_out_port(self, pid) :
"""todo """
raise NotImplementedError
[docs] def vertex (self, pid) :
"""todo """
raise NotImplementedError
[docs] def port_neighbors (self, pid) :
"""todo """
raise NotImplementedError
[docs] def port_edges (self, pid) :
"""todo """
raise NotImplementedError
####################################################
#
# limited number of connections
#
####################################################
[docs] def capacity (self, pid) :
"""todo """
raise NotImplementedError
[docs] def set_capacity (self, pid, capacity) :
"""todo """
raise NotImplementedError
####################################################
#
# local port concept
#
####################################################
[docs] def port (self, pid) :
"""todo """
raise NotImplementedError
[docs] def out_port (self, vid, local_pid) :
"""todo """
raise NotImplementedError
[docs] def in_port (self, vid, local_pid) :
"""todo """
raise NotImplementedError
#####################################################
#
# mutable concept
#
#####################################################
[docs] def add_in_port (self, vid, local_pid, pid=None) :
"""todo """
raise NotImplementedError
[docs] def add_out_port (self, vid, local_pid, pid=None) :
"""todo """
raise NotImplementedError
[docs] def remove_port (self, pid) :
"""todo """
raise NotImplementedError
[docs] def connect (self, source_pid, target_pid, eid=None) :
"""todo """
raise NotImplementedError
[docs] def disconnect (self, eid) :
"""todo """
raise NotImplementedError