EventGroup.py 807 B

12345678910111213141516171819202122232425262728293031
  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. """"""
  14. self._evtgrp = gdb.Value(handle).cast(EventGroupInspector.EvtGrpType)
  15. def GetTasksWaiting(self):
  16. """"""
  17. taskListObj = self._evtgrp["xTasksWaitingForBits"]
  18. taskList = ListInspector(taskListObj)
  19. return taskList.GetElements(TaskInspector.TCBType)
  20. def GetEventBits(self):
  21. """Get the Event Flag Bits
  22. @return L{gdb.Value} of EventBits_t
  23. """
  24. return self._evtgrp["uxEventBits"]