spynnaker.pyNN.utilities.ranged package

Module contents

class spynnaker.pyNN.utilities.ranged.SpynnakerRangeDictionary(size, defaults=None)[source]

Bases: spinn_utilities.ranged.range_dictionary.RangeDictionary

The Object is set up initially where every ID in the range will share the same value for each key. All keys must be of type str. The default Values can be anything including None.

Parameters:
  • size (int) – Fixed number of IDs / Length of lists
  • defaults (dict) – Default dictionary where all keys must be str
list_factory(size, value, key)[source]

Defines which class or subclass of RangedList to use

Main purpose is for subclasses to use a subclass or RangedList All parameters are pass through ones to the List constructor

Parameters:
  • size (int) – Fixed length of the list
  • value – value to given to all elements in the list
  • key – The dict key this list covers.
Returns:

AbstractList in this case a RangedList

Return type:

SpynnakerRangedList

class spynnaker.pyNN.utilities.ranged.SpynnakerRangedList(size=None, value=None, key=None, use_list_as_value=False)[source]

Bases: spinn_utilities.ranged.ranged_list.RangedList

Parameters:
  • size (int or None) – Fixed length of the list; if None, the value must be a sized object.
  • value (object or Sized) – value to given to all elements in the list
  • key – The dict key this list covers. This is used only for better Exception messages
  • use_list_as_value (bool) – True if the value is a list
static as_list(value, size, ids=None)[source]

Converts (if required) the value into a list of a given size. An exception is raised if value cannot be given size elements.

Note

This method can be extended to add other conversions to list in which case is_list() must also be extended.

Parameters:value
Returns:value as a list
Raises:Exception – if the number of values and the size do not match
static is_list(value, size)[source]

Determines if the value should be treated as a list.

Note

This method can be extended to add other checks for list in which case as_list() must also be extended.