Source code for spinn_front_end_common.abstract_models.abstract_provides_n_keys_for_partition

from six import add_metaclass

from spinn_utilities.abstract_base import AbstractBase, abstractmethod


[docs]@add_metaclass(AbstractBase) class AbstractProvidesNKeysForPartition(object): """ Allows a vertex to provide the number of keys for a partition of edges,\ rather than relying on the number of atoms in the pre-vertex """ __slots__ = ()
[docs] @abstractmethod def get_n_keys_for_partition(self, partition, graph_mapper): """ Get the number of keys required by the given partition of edges :param partition: An partition that comes out of this vertex :type partition:\ :py:class:`pacman.utilities.utility_objs.outgoing_partition.OutgoingPartition` :param graph_mapper: A mapper between the graphs :type graph_mapper:\ :py:class:`pacman.model.graph.graph_mapper.GraphMapper` :return: A list of constraints :rtype: list of\ :py:class:`pacman.model.constraints.abstract_constraint.AbstractConstraint` """ pass