direct.distributed.DoInterestManager¶
from direct.distributed.DoInterestManager import AsyncTestCase, AsyncTestLoader, AsyncTestSuite, AsyncTextTestRunner, DoInterestManager, InterestHandle, InterestState, TestInterestAddRemove, runTests
The DoInterestManager keeps track of which parent/zones that we currently have interest in. When you want to “look” into a zone you add an interest to that zone. When you want to get rid of, or ignore, the objects in that zone, remove interest in that zone.
p.s. A great deal of this code is just code moved from ClientRepository.py.
Inheritance diagram
digraph inheritancea60b43c70b { bgcolor=transparent; rankdir=BT; size="8.0, 12.0"; "AsyncTestCase" [URL="direct.distributed.DoInterestManager.html#direct.distributed.DoInterestManager.AsyncTestCase",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=11,height=0.25,shape=box,style="",target="_top"]; "TestCase" -> "AsyncTestCase" [arrowsize=0.75,style=""]; "AsyncTestLoader" [URL="direct.distributed.DoInterestManager.html#direct.distributed.DoInterestManager.AsyncTestLoader",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=11,height=0.25,shape=box,style="",target="_top"]; "TestLoader" -> "AsyncTestLoader" [arrowsize=0.75,style=""]; "AsyncTestSuite" [URL="direct.distributed.DoInterestManager.html#direct.distributed.DoInterestManager.AsyncTestSuite",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=11,height=0.25,shape=box,style="",target="_top"]; "TestSuite" -> "AsyncTestSuite" [arrowsize=0.75,style=""]; "AsyncTextTestRunner" [URL="direct.distributed.DoInterestManager.html#direct.distributed.DoInterestManager.AsyncTextTestRunner",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=11,height=0.25,shape=box,style="",target="_top"]; "TextTestRunner" -> "AsyncTextTestRunner" [arrowsize=0.75,style=""]; "BaseTestSuite" [fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=11,height=0.25,shape=box,style="",tooltip="A simple test suite that doesn't provide class or module shared fixtures."]; "DirectObject" [URL="direct.showbase.DirectObject.html#direct.showbase.DirectObject.DirectObject",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=11,height=0.25,shape=box,style="",target="_top",tooltip="This is the class that all Direct/SAL classes should inherit from"]; "DoInterestManager" [URL="direct.distributed.DoInterestManager.html#direct.distributed.DoInterestManager.DoInterestManager",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=11,height=0.25,shape=box,style="",target="_top",tooltip="Top level Interest Manager"]; "DirectObject" -> "DoInterestManager" [arrowsize=0.75,style=""]; "InterestHandle" [URL="direct.distributed.DoInterestManager.html#direct.distributed.DoInterestManager.InterestHandle",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=11,height=0.25,shape=box,style="",target="_top",tooltip="This class helps to ensure that valid handles get passed in to DoInterestManager funcs"]; "InterestState" [URL="direct.distributed.DoInterestManager.html#direct.distributed.DoInterestManager.InterestState",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=11,height=0.25,shape=box,style="",target="_top"]; "TestCase" [fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=11,height=0.25,shape=box,style="",tooltip="A class whose instances are single test cases."]; "TestInterestAddRemove" [URL="direct.distributed.DoInterestManager.html#direct.distributed.DoInterestManager.TestInterestAddRemove",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=11,height=0.25,shape=box,style="",target="_top"]; "AsyncTestCase" -> "TestInterestAddRemove" [arrowsize=0.75,style=""]; "DirectObject" -> "TestInterestAddRemove" [arrowsize=0.75,style=""]; "TestLoader" [fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=11,height=0.25,shape=box,style="",tooltip="This class is responsible for loading tests according to various criteria"]; "TestSuite" [fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=11,height=0.25,shape=box,style="",tooltip="A test suite is a composite test consisting of a number of TestCases."]; "BaseTestSuite" -> "TestSuite" [arrowsize=0.75,style=""]; "TextTestRunner" [fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=11,height=0.25,shape=box,style="",tooltip="A test runner class that displays results in textual form."]; }- class AsyncTestLoader[source]¶
Bases:
TestLoader- suiteClass¶
alias of
AsyncTestSuite
- class AsyncTextTestRunner(stream=None, descriptions=True, verbosity=1, failfast=False, buffer=False, resultclass=None, warnings=None, *, tb_locals=False, durations=None)[source]¶
Bases:
TextTestRunner
- class DoInterestManager[source]¶
Bases:
DirectObjectTop level Interest Manager
- InterestDebug = 0¶
- notify = <direct.directnotify.Notifier.Notifier object>¶
- class InterestHandle(id)[source]¶
Bases:
objectThis class helps to ensure that valid handles get passed in to DoInterestManager funcs
- class InterestState(desc, state, context, event, parentId, zoneIdList, eventCounter, auto=False)[source]¶
Bases:
object- StateActive = 'Active'¶
- StatePendingDel = 'PendingDel'¶
- class TestInterestAddRemove(methodName='runTest')[source]¶
Bases:
AsyncTestCase,DirectObject