Panda3D
Public Member Functions | Public Attributes | Static Public Attributes | List of all members
DistributedObject Class Reference
Inheritance diagram for DistributedObject:
DistributedObjectBase DirectObject DistributedCamera DistributedNode DistributedObjectGlobal SampleObject TimeManager DistributedCartesianGrid DistributedSmoothNode

Public Member Functions

def __init__ (self, cr)
 
def addInterest (self, zoneId, note="", event=None)
 
def announceGenerate (self)
 
def b_setLocation (self, parentId, zoneId)
 
def d_setLocation (self, parentId, zoneId)
 
def delete (self)
 
def deleteOrDelay (self)
 
def disable (self)
 
def disableAndAnnounce (self)
 
def disableAnnounceAndDelete (self)
 
def doCallbackContext (self, context, args)
 
def doneBarrier (self, name=None)
 
def execCommand (self, string, mwMgrId, avId, zoneId)
 
def flushCachedData (self, name)
 
def generate (self)
 
def generateInit (self)
 
def getAutoInterests (self)
 
def getBarrierData (self)
 
def getCacheable (self)
 
def getCachedData (self, name)
 
def getCallback (self, context)
 
def getCallbackArgs (self, context)
 
def getCallbackContext (self, callback, extraArgs=[])
 
def getCurrentContexts (self)
 
def getDelayDeleteCount (self)
 
def getDelayDeleteEvent (self)
 
def getDisableEvent (self)
 
def getDoId (self)
 
def getLocation (self)
 
def getNeverDisable (self)
 
def getParentObj (self)
 
def hasCachedData (self, name)
 
def isDisabled (self)
 
def isGenerated (self)
 
def isGridParent (self)
 
def isLocal (self)
 
def postGenerateMessage (self)
 
def removeInterest (self, handle, event=None)
 
def sendDeleteMsg (self)
 
def sendDisableMsg (self)
 
def sendUpdate (self, fieldName, args=[], sendToId=None)
 
def setBarrierData (self, data)
 
def setCacheable (self, bool)
 
def setCachedData (self, name, data)
 
def setLocation (self, parentId, zoneId)
 
def setNeverDisable (self, bool)
 
def status (self, indent=0)
 
def taskName (self, taskString)
 
def uniqueName (self, idString)
 
def updateAllRequiredFields (self, dclass, di)
 
def updateRequiredFields (self, dclass, di)
 
def updateRequiredOtherFields (self, dclass, di)
 
- Public Member Functions inherited from DistributedObjectBase
def handleChildArrive (self, childObj, zoneId)
 
def handleChildArriveZone (self, childObj, zoneId)
 
def handleChildLeave (self, childObj, zoneId)
 
def handleChildLeaveZone (self, childObj, zoneId)
 
def handleQueryObjectChildrenLocalDone (self, context)
 
def hasParentingRules (self)
 
- Public Member Functions inherited from DirectObject
def __init__ (self)
 
def accept (self, event, method, extraArgs=[])
 
def acceptOnce (self, event, method, extraArgs=[])
 
def addTask (self, *args, **kwargs)
 
def detectLeaks (self)
 
def doMethodLater (self, *args, **kwargs)
 
def getAllAccepting (self)
 
def ignore (self, event)
 
def ignoreAll (self)
 
def isAccepting (self, event)
 
def isIgnoring (self, event)
 
def removeAllTasks (self)
 
def removeTask (self, taskOrName)
 

Public Attributes

 activeState
 
 autoInterests
 
 cacheable
 
 cr
 
 dclass
 
 destroyDoStackTrace
 
 DistributedObject_deleted
 
 DistributedObject_initialized
 
 neverDisable
 
 parentId
 
 zoneId
 
- Public Attributes inherited from DistributedObjectBase
 cr
 
 parentId
 
 zoneId
 

Static Public Attributes

int neverDisable = 0
 
 notify = directNotify.newCategory("DistributedObject")
 
- Static Public Attributes inherited from DistributedObjectBase
 notify = directNotify.newCategory("DistributedObjectBase")
 
- Static Public Attributes inherited from DirectObject
def accept_once = acceptOnce
 
def add_task = addTask
 
def detect_leaks = detectLeaks
 
def do_method_later = doMethodLater
 
def get_all_accepting = getAllAccepting
 
def ignore_all = ignoreAll
 
def is_accepting = isAccepting
 
def is_ignoring = isIgnoring
 
def remove_all_tasks = removeAllTasks
 
def remove_task = removeTask
 

Detailed Description

The Distributed Object class is the base class for all network based
(i.e. distributed) objects.  These will usually (always?) have a
dclass entry in a *.dc file.

Constructor & Destructor Documentation

◆ __init__()

def __init__ (   self,
  cr 
)

Member Function Documentation

◆ addInterest()

def addInterest (   self,
  zoneId,
  note = "",
  event = None 
)

◆ announceGenerate()

def announceGenerate (   self)
Sends a message to the world after the object has been
generated and all of its required fields filled in.

Reimplemented in TimeManager.

◆ b_setLocation()

def b_setLocation (   self,
  parentId,
  zoneId 
)

◆ d_setLocation()

def d_setLocation (   self,
  parentId,
  zoneId 
)

◆ delete()

def delete (   self)
Inheritors should redefine this to take appropriate action on delete

Reimplemented from DistributedObjectBase.

Reimplemented in DistributedSmoothNode, TimeManager, DistributedCartesianGrid, and DistributedNode.

◆ deleteOrDelay()

def deleteOrDelay (   self)

◆ disable()

def disable (   self)
Inheritors should redefine this to take appropriate action on disable

Reimplemented in DistributedCamera, DistributedSmoothNode, TimeManager, DistributedCartesianGrid, and DistributedNode.

◆ disableAndAnnounce()

def disableAndAnnounce (   self)
Inheritors should *not* redefine this function.

◆ disableAnnounceAndDelete()

def disableAnnounceAndDelete (   self)

◆ doCallbackContext()

def doCallbackContext (   self,
  context,
  args 
)

◆ doneBarrier()

def doneBarrier (   self,
  name = None 
)

◆ execCommand()

def execCommand (   self,
  string,
  mwMgrId,
  avId,
  zoneId 
)

◆ flushCachedData()

def flushCachedData (   self,
  name 
)

◆ generate()

def generate (   self)
Inheritors should redefine this to take appropriate action on generate

Reimplemented in DistributedSmoothNode, TimeManager, DistributedCartesianGrid, and DistributedNode.

◆ generateInit()

def generateInit (   self)
This method is called when the DistributedObject is first introduced
to the world... Not when it is pulled from the cache.

◆ getAutoInterests()

def getAutoInterests (   self)

◆ getBarrierData()

def getBarrierData (   self)

◆ getCacheable()

def getCacheable (   self)

◆ getCachedData()

def getCachedData (   self,
  name 
)

◆ getCallback()

def getCallback (   self,
  context 
)

◆ getCallbackArgs()

def getCallbackArgs (   self,
  context 
)

◆ getCallbackContext()

def getCallbackContext (   self,
  callback,
  extraArgs = [] 
)

◆ getCurrentContexts()

def getCurrentContexts (   self)

◆ getDelayDeleteCount()

def getDelayDeleteCount (   self)

◆ getDelayDeleteEvent()

def getDelayDeleteEvent (   self)

◆ getDisableEvent()

def getDisableEvent (   self)

◆ getDoId()

def getDoId (   self)
Return the distributed object id

◆ getLocation()

def getLocation (   self)

Reimplemented from DistributedObjectBase.

◆ getNeverDisable()

def getNeverDisable (   self)

◆ getParentObj()

def getParentObj (   self)

Reimplemented from DistributedObjectBase.

◆ hasCachedData()

def hasCachedData (   self,
  name 
)

◆ isDisabled()

def isDisabled (   self)
Returns true if the object has been disabled and/or deleted,
or if it is brand new and hasn't yet been generated.

◆ isGenerated()

def isGenerated (   self)
Returns true if the object has been fully generated by now,
and not yet disabled.

◆ isGridParent()

def isGridParent (   self)

Reimplemented in DistributedCartesianGrid.

◆ isLocal()

def isLocal (   self)

◆ postGenerateMessage()

def postGenerateMessage (   self)

◆ removeInterest()

def removeInterest (   self,
  handle,
  event = None 
)

◆ sendDeleteMsg()

def sendDeleteMsg (   self)

◆ sendDisableMsg()

def sendDisableMsg (   self)

◆ sendUpdate()

def sendUpdate (   self,
  fieldName,
  args = [],
  sendToId = None 
)

◆ setBarrierData()

def setBarrierData (   self,
  data 
)

◆ setCacheable()

def setCacheable (   self,
  bool 
)

◆ setCachedData()

def setCachedData (   self,
  name,
  data 
)

◆ setLocation()

def setLocation (   self,
  parentId,
  zoneId 
)

◆ setNeverDisable()

def setNeverDisable (   self,
  bool 
)

◆ status()

def status (   self,
  indent = 0 
)
print out "doId(parentId, zoneId) className
    and conditionally show generated, disabled, neverDisable,
    or cachable"

Reimplemented from DistributedObjectBase.

◆ taskName()

def taskName (   self,
  taskString 
)

◆ uniqueName()

def uniqueName (   self,
  idString 
)

◆ updateAllRequiredFields()

def updateAllRequiredFields (   self,
  dclass,
  di 
)

◆ updateRequiredFields()

def updateRequiredFields (   self,
  dclass,
  di 
)

◆ updateRequiredOtherFields()

def updateRequiredOtherFields (   self,
  dclass,
  di 
)

Member Data Documentation

◆ activeState

activeState

◆ autoInterests

autoInterests

◆ cacheable

cacheable

◆ cr

cr

◆ dclass

dclass

◆ destroyDoStackTrace

destroyDoStackTrace

◆ DistributedObject_deleted

DistributedObject_deleted

◆ DistributedObject_initialized

DistributedObject_initialized

◆ neverDisable [1/2]

int neverDisable = 0
static

◆ neverDisable [2/2]

neverDisable

◆ notify

notify = directNotify.newCategory("DistributedObject")
static

◆ parentId

parentId

◆ zoneId

zoneId