|
Panda3D
|
Public Member Functions | |
| def | __init__ |
| def | __repr__ |
| def | addEvent |
| def | destroy |
| def | getDoneEvent |
| def | getName |
| def | isCompleted |
| def | newEvent |
This class allows you to group together multiple events and treat them as a single event. The EventGroup will not send out its event until all of its sub-events have occured.
| def __init__ | ( | self, | |
| name, | |||
subEvents = None, |
|||
doneEvent = None |
|||
| ) |
Provide a meaningful name to aid debugging.
doneEvent is optional. If not provided, a unique done event will be
generated and is available as EventGroup.getDoneEvent().
Examples:
# waits for gotRed and gotBlue, then sends out 'gotColors'
EventGroup('getRedAndBlue', ('gotRed', 'gotBlue'), doneEvent='gotColors')
# waits for two interests to close, then calls self._handleBothInterestsClosed()
# uses EventGroup.getDoneEvent() and EventGroup.newEvent() to generate unique,
# disposable event names
eGroup = EventGroup('closeInterests')
self.acceptOnce(eGroup.getDoneEvent(), self._handleBothInterestsClosed)
base.cr.closeInterest(interest1, event=eGroup.newEvent('closeInterest1'))
base.cr.closeInterest(interest2, event=eGroup.newEvent('closeInterest2'))
| def __repr__ | ( | self | ) |
| def addEvent | ( | self, | |
| eventName | |||
| ) |
Adds a new event to the list of sub-events that we're waiting on. Returns the name of the event.
| def destroy | ( | self | ) |
| def getDoneEvent | ( | self | ) |
| def getName | ( | self | ) |
| def isCompleted | ( | self | ) |
| def newEvent | ( | self, | |
| name | |||
| ) |
Pass in an event name and it will be unique-ified for you and added to this EventGroup. TIP: there's no need to repeat information in this event name that is already in the name of the EventGroup object. Returns the new event name.
1.7.3