libHSPlasma
Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
plSynchedObject Class Reference

#include <plSynchedObject.h>

Inheritance diagram for plSynchedObject:
hsKeyedObject plCreatable hsGMaterial plAGAnim plClothingOutfit plDynaDecalMgr plLayerInterface plModifier plObjInterface plPhysical plSceneObject plSound

Public Types

enum  Flags {
  kDontDirty = 0x1, kSendReliably = 0x2, kHasConstantNetGroup = 0x4, kDontSynchGameMessages = 0x8,
  kExcludePersistentState = 0x10, kExcludeAllPersistentState = 0x20, kLocalOnly = kExcludeAllPersistentState | kDontSynchGameMessages, kHasVolatileState = 0x40,
  kAllStateIsVolatile = 0x80
}
enum  SDLSendFlags {
  kBCastToClients = 0x1, kForceFullSend = 0x2, kSkipLocalOwnershipCheck = 0x4, kSendImmediately = 0x8,
  kDontPersistOnServer = 0x10, kUseRelevanceRegions = 0x20, kNewState = 0x40, kIsAvatarState = 0x80
}

Public Member Functions

 plSynchedObject ()
virtual void read (hsStream *S, plResManager *mgr)
virtual void write (hsStream *S, plResManager *mgr)
int getFlags () const
void setFlags (int flags)
const std::vector< plString > & getExcludes () const
const std::vector< plString > & getVolatiles () const
void setExclude (const plString &sdl)
void setVolatile (const plString &sdl)
void clearExcludes ()
void clearVolatiles ()
- Public Member Functions inherited from hsKeyedObject
void init (const plString &name)
plKey getKey () const
void setKey (plKey key)
- Public Member Functions inherited from plCreatable
 plCreatable ()
virtual ~plCreatable ()
virtual short ClassIndex () const =0
short ClassIndex (PlasmaVer ver) const
virtual const char * ClassName () const
virtual bool ClassInstance (short) const
virtual bool isStub () const
virtual void prcWrite (pfPrcHelper *prc)
virtual void prcParse (const pfPrcTag *tag, plResManager *mgr)

Protected Member Functions

virtual void IPrcWrite (pfPrcHelper *prc)
virtual void IPrcParse (const pfPrcTag *tag, plResManager *mgr)

Protected Attributes

unsigned int fSynchFlags
std::vector< plStringfSDLExcludeList
std::vector< plStringfSDLVolatileList

Member Enumeration Documentation

Enumerator:
kDontDirty 
kSendReliably 
kHasConstantNetGroup 
kDontSynchGameMessages 
kExcludePersistentState 
kExcludeAllPersistentState 
kLocalOnly 
kHasVolatileState 
kAllStateIsVolatile 
Enumerator:
kBCastToClients 
kForceFullSend 
kSkipLocalOwnershipCheck 
kSendImmediately 
kDontPersistOnServer 
kUseRelevanceRegions 
kNewState 
kIsAvatarState 

Constructor & Destructor Documentation

plSynchedObject::plSynchedObject ( )

Member Function Documentation

void plSynchedObject::clearExcludes ( )
void plSynchedObject::clearVolatiles ( )
const std::vector<plString>& plSynchedObject::getExcludes ( ) const
int plSynchedObject::getFlags ( ) const

Reimplemented in plResponderModifier, and plCrossfade.

const std::vector<plString>& plSynchedObject::getVolatiles ( ) const
virtual void plSynchedObject::IPrcParse ( const pfPrcTag tag,
plResManager mgr 
)
protectedvirtual

This must be overloaded by subclasses to parse PRC data specific to the class from the PRC document. It is called once for each tag that is a child to the Creatable tag itself, so subclasses should check for each supported tag and handle it accordingly if it matches. If the tag is not recognized, it should be passed along to the parent class.

Reimplemented from hsKeyedObject.

Reimplemented in plAGAnimBink, plLayerSDLAnimation, plEmoteAnim, pfGUIControlMod, plLayerLinkAnimation, plDynaWakeMgr, plSound, plPanicLinkRegion, plPythonFileMod, plArmatureLODMod, plGenericPhysical, plSoftVolumeComplex, plSwimStraightCurrentRegion, plMobileOccluder, plMultiModifier, plAgeGlobalAnim, plArmatureMod, plLayerAnimation, plLayerInterface, plResponderModifier, plDynaTorpedoVSMgr, plSubworldRegionDetector, plObjectInVolumeAndFacingDetector, plAutoWalkRegion, plInstanceDrawInterface, plCameraModifier, plSoftVolumeSimple, plPythonMod, plEAXReverbEffect, pfGUIListBoxMod, plSpotLightInfo, plParticleSystem, plViewFaceModifier, plWaveSet7, plLineFollowMod, plSwimCircularCurrentRegion, plLadderModifier, pfGUIPopUpMenu, plSingleModifier, hsGMaterial, plShadowCaster, plGrassShaderMod, pfObjectFlocker, plClothingOutfit, plActivePrintShape, plLightInfo, plRandomCommandMod, plDynaRippleVSMgr, plATCAnim, plSittingModifier, plAxisAnimModifier, plRandomSoundMod, plHardRegionPlanes, plDynaDecalMgr, plFilterCoordInterface, plSoftVolume, pfGUIKnobCtrl, plShadowMaster, plLogicModBase, plCoordinateInterface, plLayerAnimationBase, plAGAnim, plCollisionDetector, plStereizer, plSimulationInterface, plCameraRegionDetector, plVehicleModifier, pfGUIDialogMod, plSpawnMod, plAvLadderMod, plOccluder, pfGUIProgressCtrl, plExcludeRegionModifier, plPostEffectMod, plObjInterface, plFadeOpacityMod, plArmatureModBase, pfGUIButtonMod, pfGUIRadioGroupCtrl, plLimitedDirLightInfo, plCrossfade, plMultistageBehMod, plBoundInterface, plNPCSpawnMod, plAnimEventModifier, plMaintainersMarkerModifier, plAGMasterMod, pfGUITextBoxMod, plOneShotMod, plHardRegionComplex, plRelevanceRegion, plSimpleRegionSensor, plVisRegion, pfGUICheckBoxCtrl, plLogicModifier, plSceneObject, plWaveSet6, plBlower, plDirectMusicSound, plEAXListenerMod, plAGModifier, plMorphSequence, plOmniLightInfo, plGameMarkerModifier, plSwimRegionInterface, plWin32GroupedSound, pfGUIValueCtrl, plNodeRegionModifier, plDrawInterface, plDistOpacityMod, plLayerMovie, plPrintShape, plDetectorModifier, plHKSubWorld, plDynaRippleMgr, plSeekPointMod, pfGUIDynDisplayCtrl, pfGUIMultiLineEditCtrl, pfGUIUpDownPairMod, plAliasModifier, plInterfaceInfoModifier, plAudioInterface, plWin32Sound, plImageLibMod, and plLayer.

virtual void plSynchedObject::IPrcWrite ( pfPrcHelper prc)
protectedvirtual

This must be overloaded by subclasses to write PRC data specific to the class to the PRC document. Do not write the top-level creatable tag, that is handled by prcWrite().

Reimplemented from hsKeyedObject.

Reimplemented in plAGAnimBink, plLayerSDLAnimation, plEmoteAnim, pfGUIControlMod, plLayerLinkAnimation, plDynaWakeMgr, plSound, plPanicLinkRegion, plPythonFileMod, plArmatureLODMod, plGenericPhysical, plSoftVolumeComplex, plSwimStraightCurrentRegion, plMobileOccluder, plMultiModifier, plAgeGlobalAnim, plArmatureMod, plLayerAnimation, plLayerInterface, plResponderModifier, plDynaTorpedoVSMgr, plSubworldRegionDetector, plObjectInVolumeAndFacingDetector, plAutoWalkRegion, plInstanceDrawInterface, plCameraModifier, plSoftVolumeSimple, plPythonMod, plEAXReverbEffect, pfGUIListBoxMod, plSpotLightInfo, plParticleSystem, plViewFaceModifier, plWaveSet7, plLineFollowMod, plSwimCircularCurrentRegion, plLadderModifier, pfGUIPopUpMenu, plSingleModifier, hsGMaterial, plShadowCaster, plGrassShaderMod, pfObjectFlocker, plClothingOutfit, plActivePrintShape, plLightInfo, plRandomCommandMod, plDynaRippleVSMgr, plATCAnim, plSittingModifier, plAxisAnimModifier, plRandomSoundMod, plHardRegionPlanes, plDynaDecalMgr, plFilterCoordInterface, plSoftVolume, pfGUIKnobCtrl, plShadowMaster, plLogicModBase, plCoordinateInterface, plLayerAnimationBase, plAGAnim, plCollisionDetector, plStereizer, plSimulationInterface, plCameraRegionDetector, plVehicleModifier, pfGUIDialogMod, plSpawnMod, plAvLadderMod, plOccluder, pfGUIProgressCtrl, plExcludeRegionModifier, plPostEffectMod, plObjInterface, plFadeOpacityMod, plArmatureModBase, pfGUIButtonMod, pfGUIRadioGroupCtrl, plLimitedDirLightInfo, plCrossfade, plMultistageBehMod, plBoundInterface, plNPCSpawnMod, plAnimEventModifier, plMaintainersMarkerModifier, plAGMasterMod, pfGUITextBoxMod, plOneShotMod, plHardRegionComplex, plRelevanceRegion, plSimpleRegionSensor, plVisRegion, pfGUICheckBoxCtrl, plLogicModifier, plSceneObject, plWaveSet6, plBlower, plDirectMusicSound, plEAXListenerMod, plAGModifier, plMorphSequence, plOmniLightInfo, plGameMarkerModifier, plSwimRegionInterface, plWin32GroupedSound, pfGUIValueCtrl, plNodeRegionModifier, plDrawInterface, plDistOpacityMod, plLayerMovie, plPrintShape, plDetectorModifier, plHKSubWorld, plDynaRippleMgr, plSeekPointMod, pfGUIDynDisplayCtrl, pfGUIMultiLineEditCtrl, pfGUIUpDownPairMod, plAliasModifier, plInterfaceInfoModifier, plAudioInterface, plWin32Sound, plImageLibMod, and plLayer.

virtual void plSynchedObject::read ( hsStream ,
plResManager  
)
virtual

Reads this creatable directly from the stream. If any keys are read, they will be added to the plResManager automatically.

Reimplemented from hsKeyedObject.

Reimplemented in plAGAnimBink, plLayerSDLAnimation, plEmoteAnim, pfGUIControlMod, plLayerLinkAnimation, plDynaWakeMgr, plSound, plPanicLinkRegion, plPythonFileMod, plArmatureLODMod, plGenericPhysical, plSoftVolumeComplex, plSwimStraightCurrentRegion, plMobileOccluder, plMultiModifier, plAgeGlobalAnim, plArmatureMod, plLayerAnimation, plLayerInterface, plResponderModifier, plDynaTorpedoVSMgr, plSubworldRegionDetector, plObjectInVolumeAndFacingDetector, plAutoWalkRegion, plInstanceDrawInterface, plCameraModifier, plSoftVolumeSimple, plPythonMod, plEAXReverbEffect, pfGUIListBoxMod, plSpotLightInfo, plParticleSystem, plViewFaceModifier, plWaveSet7, plLineFollowMod, plSwimCircularCurrentRegion, plLadderModifier, pfGUIPopUpMenu, plWin32LinkSound, plSwimDetector, plSingleModifier, hsGMaterial, plShadowCaster, plGrassShaderMod, pfObjectFlocker, plClothingOutfit, plActivePrintShape, plLightInfo, plRandomCommandMod, plDynaRippleVSMgr, plATCAnim, plSittingModifier, plAxisAnimModifier, plRandomSoundMod, plHardRegionPlanes, plDynaDecalMgr, plFilterCoordInterface, plSoftVolume, pfGUIKnobCtrl, plShadowMaster, plLogicModBase, plCoordinateInterface, plAGAnim, plCollisionDetector, plLayerAnimationBase, plStereizer, plSimulationInterface, plCameraRegionDetector, plVehicleModifier, pfGUIDialogMod, plSpawnMod, plAvLadderMod, plOccluder, pfGUIProgressCtrl, plExcludeRegionModifier, plPostEffectMod, plObjInterface, plFadeOpacityMod, plArmatureModBase, pfGUIButtonMod, pfGUIRadioGroupCtrl, plLimitedDirLightInfo, plCrossfade, plMultistageBehMod, plBoundInterface, plNPCSpawnMod, plAnimEventModifier, plMaintainersMarkerModifier, plAGMasterMod, pfGUITextBoxMod, plOneShotMod, plHardRegionComplex, plRelevanceRegion, plSimpleRegionSensor, plVisRegion, pfGUICheckBoxCtrl, plLogicModifier, plSceneObject, plWaveSet6, plBlower, plDirectMusicSound, plEAXListenerMod, plAGModifier, plMorphSequence, plOmniLightInfo, plGameMarkerModifier, plSwimRegionInterface, pfGUIValueCtrl, plNodeRegionModifier, plDrawInterface, plDistOpacityMod, plLayerMovie, plPrintShape, plDetectorModifier, plHKSubWorld, plDynaRippleMgr, plSeekPointMod, pfGUIDynDisplayCtrl, pfGUIMultiLineEditCtrl, pfGUIUpDownPairMod, plAliasModifier, plInterfaceInfoModifier, plAudioInterface, plImageLibMod, and plLayer.

void plSynchedObject::setExclude ( const plString sdl)
void plSynchedObject::setFlags ( int  flags)
void plSynchedObject::setVolatile ( const plString sdl)
virtual void plSynchedObject::write ( hsStream ,
plResManager  
)
virtual

Writes this creatable directly to the stream. The plResManager is used to manage any key references written by this creatable.

Reimplemented from hsKeyedObject.

Reimplemented in plAGAnimBink, plLayerSDLAnimation, plEmoteAnim, pfGUIControlMod, plLayerLinkAnimation, plDynaWakeMgr, plSound, plPanicLinkRegion, plPythonFileMod, plArmatureLODMod, plGenericPhysical, plSoftVolumeComplex, plSwimStraightCurrentRegion, plMobileOccluder, plMultiModifier, plAgeGlobalAnim, plArmatureMod, plLayerAnimation, plLayerInterface, plResponderModifier, plDynaTorpedoVSMgr, plSubworldRegionDetector, plObjectInVolumeAndFacingDetector, plAutoWalkRegion, plInstanceDrawInterface, plCameraModifier, plSoftVolumeSimple, plPythonMod, plEAXReverbEffect, pfGUIListBoxMod, plSpotLightInfo, plParticleSystem, plViewFaceModifier, plWaveSet7, plLineFollowMod, plSwimCircularCurrentRegion, plLadderModifier, pfGUIPopUpMenu, plSwimDetector, plSingleModifier, hsGMaterial, plShadowCaster, plGrassShaderMod, pfObjectFlocker, plClothingOutfit, plActivePrintShape, plLightInfo, plRandomCommandMod, plDynaRippleVSMgr, plATCAnim, plSittingModifier, plAxisAnimModifier, plRandomSoundMod, plHardRegionPlanes, plDynaDecalMgr, plFilterCoordInterface, plSoftVolume, pfGUIKnobCtrl, plShadowMaster, plLogicModBase, plCoordinateInterface, plAGAnim, plCollisionDetector, plLayerAnimationBase, plStereizer, plSimulationInterface, plCameraRegionDetector, plVehicleModifier, pfGUIDialogMod, plSpawnMod, plAvLadderMod, plOccluder, pfGUIProgressCtrl, plExcludeRegionModifier, plPostEffectMod, plObjInterface, plFadeOpacityMod, plArmatureModBase, pfGUIButtonMod, pfGUIRadioGroupCtrl, plLimitedDirLightInfo, plCrossfade, plMultistageBehMod, plBoundInterface, plNPCSpawnMod, plAnimEventModifier, plMaintainersMarkerModifier, plAGMasterMod, pfGUITextBoxMod, plOneShotMod, plHardRegionComplex, plRelevanceRegion, plSimpleRegionSensor, plVisRegion, pfGUICheckBoxCtrl, plLogicModifier, plSceneObject, plWaveSet6, plBlower, plDirectMusicSound, plEAXListenerMod, plAGModifier, plMorphSequence, plOmniLightInfo, plGameMarkerModifier, plSwimRegionInterface, pfGUIValueCtrl, plNodeRegionModifier, plDrawInterface, plDistOpacityMod, plLayerMovie, plPrintShape, plDetectorModifier, plHKSubWorld, plDynaRippleMgr, plSeekPointMod, pfGUIDynDisplayCtrl, pfGUIMultiLineEditCtrl, pfGUIUpDownPairMod, plAliasModifier, plInterfaceInfoModifier, plAudioInterface, plImageLibMod, and plLayer.

Member Data Documentation

std::vector<plString> plSynchedObject::fSDLExcludeList
protected
std::vector<plString> plSynchedObject::fSDLVolatileList
protected
unsigned int plSynchedObject::fSynchFlags
protected

The documentation for this class was generated from the following file: