EventGroup.py 777 B

1234567891011121314151617181920212223242526272829
  1. # File: EventGroup.py
  2. # Author: Carl Allendorph
  3. # Date: 05NOV2014
  4. #
  5. # Description:
  6. # This file contains the implementation of a Event Group Inspector
  7. import gdb
  8. from .List import ListInspector
  9. from .Task import TaskInspector
  10. class EventGroupInspector:
  11. EvtGrpType = gdb.lookup_type("EventGroup_t")
  12. def __init__(self, handle):
  13. self._evtgrp = gdb.Value(handle).cast(EventGroupInspector.EvtGrpType)
  14. def GetTasksWaiting(self):
  15. taskListObj = self._evtgrp["xTasksWaitingForBits"]
  16. taskList = ListInspector(taskListObj)
  17. return taskList.GetElements(TaskInspector.TCBType)
  18. def GetEventBits(self):
  19. """Get the Event Flag Bits
  20. @return L{gdb.Value} of EventBits_t
  21. """
  22. return self._evtgrp["uxEventBits"]