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

#include <plCollisionDetector.h>

Inheritance diagram for plCollisionDetector:
plDetectorModifier plSingleModifier plModifier plSynchedObject hsKeyedObject plCreatable plObjectInVolumeDetector plPanicLinkRegion plSubworldRegionDetector plCameraRegionDetector plObjectInVolumeAndFacingDetector

Public Types

enum  {
  kTypeEnter = 0x1, kTypeExit = 0x2, kTypeAny = 0x4, kTypeUnEnter = 0x8,
  kTypeUnExit = 0x10, kTypeBump = 0x20
}

Public Member Functions

 plCollisionDetector ()
virtual void read (hsStream *S, plResManager *mgr)
virtual void write (hsStream *S, plResManager *mgr)
unsigned char getType () const
void setType (unsigned char type)
- Public Member Functions inherited from plDetectorModifier
const std::vector< plKey > & getReceivers () const
std::vector< plKey > & getReceivers ()
void addReceiver (plKey rcvr)
void delReceiver (size_t idx)
void clearReceivers ()
plKey getRemoteMod () const
plKey getProxy () const
void setRemoteMod (plKey mod)
void setProxy (plKey proxy)
- Public Member Functions inherited from plSingleModifier
bool getFlag (size_t flag) const
void setFlag (size_t flag, bool value)
virtual size_t getTargetsCount () const
virtual plKey getTarget (size_t) const
virtual void addTarget (plKey target)
virtual void removeTarget (plKey)

Protected Member Functions

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

Protected Attributes

unsigned char fType
- Protected Attributes inherited from plDetectorModifier
std::vector< plKeyfReceivers
plKey fRemoteMod
plKey fProxyKey
- Protected Attributes inherited from plSingleModifier
hsBitVector fFlags
plKey fTarget

Member Enumeration Documentation

anonymous enum
Enumerator:
kTypeEnter 
kTypeExit 
kTypeAny 
kTypeUnEnter 
kTypeUnExit 
kTypeBump 

Constructor & Destructor Documentation

plCollisionDetector::plCollisionDetector ( )

Member Function Documentation

unsigned char plCollisionDetector::getType ( ) const
virtual void plCollisionDetector::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 plDetectorModifier.

Reimplemented in plPanicLinkRegion, plSubworldRegionDetector, plObjectInVolumeAndFacingDetector, and plCameraRegionDetector.

virtual void plCollisionDetector::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 plDetectorModifier.

Reimplemented in plPanicLinkRegion, plSubworldRegionDetector, plObjectInVolumeAndFacingDetector, and plCameraRegionDetector.

virtual void plCollisionDetector::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 plDetectorModifier.

Reimplemented in plPanicLinkRegion, plSubworldRegionDetector, plObjectInVolumeAndFacingDetector, and plCameraRegionDetector.

void plCollisionDetector::setType ( unsigned char  type)
virtual void plCollisionDetector::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 plDetectorModifier.

Reimplemented in plPanicLinkRegion, plSubworldRegionDetector, plObjectInVolumeAndFacingDetector, and plCameraRegionDetector.

Member Data Documentation

unsigned char plCollisionDetector::fType
protected

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