GT RoboCup SSL
Soccer software, robot firmware
gameplay.play_registry.PlayRegistry Class Reference

Holds references to all Play subclasses and their enabled state The play registry keeps a tree of all plays in the 'plays' folder (and its subfolders) Our old system required programmatically registering plays into categories, but the new system just uses the filesystem hierarchy for this. More...

Classes

class  Category
 Categories correspond to filesystem directories. More...
 
class  Node
 

Public Member Functions

def __init__ (self)
 
def root (self)
 
def insert (self, module_path, play_class)
 
def load_playbook (self, list_of_plays)
 
def delete (self, module_path)
 
def clear (self)
 
def recalculate_scores (self)
 
def get_enabled_plays_and_scores (self)
 Get a list of all plays in the tree that are currently enabled.
 
def get_enabled_plays_paths (self)
 Returns a list of module paths for the currently-enabled plays The module path is a list or tuple giving the path the the play's python module For example: ['testing', 'test_pivot_kick'].
 
def __iter__ (self)
 
def __contains__ (self, play_class)
 
def __str__ (self)
 
def node_for_module_path (self, module_path)
 
def columnCount (self, parent)
 
def flags (self, index)
 
def data (self, index, role)
 
def rowCount (self, parent)
 
def parent (self, index)
 
def index (self, row, column, parent)
 
def headerData (self, section, orientation, role)
 
def setData (self, index, value, role)
 

Detailed Description

Holds references to all Play subclasses and their enabled state The play registry keeps a tree of all plays in the 'plays' folder (and its subfolders) Our old system required programmatically registering plays into categories, but the new system just uses the filesystem hierarchy for this.

The registry has methods for loading and unloading plays (for when files change on disk)

It also tracks which plays are enabled

This is a subclass of QAbstractItemModel so that we can easily attach a UI

+ Inheritance diagram for gameplay.play_registry.PlayRegistry:
+ Collaboration diagram for gameplay.play_registry.PlayRegistry:

The documentation for this class was generated from the following file: