// // Vrml 97 library // Copyright (C) 1998 Chris Morley // // %W% %G% // VrmlNodeCollision.h #ifndef _VRMLNODECOLLISION_ #define _VRMLNODECOLLISION_ #include "VrmlNodeGroup.h" #include "VrmlSFBool.h" #include "VrmlSFNode.h" #include "VrmlSFTime.h" class VrmlNodeCollision : public VrmlNodeGroup { public: // Define the fields of Collision nodes static VrmlNodeType *defineType(VrmlNodeType *t = 0); virtual VrmlNodeType *nodeType() const; VrmlNodeCollision(VrmlScene *); virtual ~VrmlNodeCollision(); virtual VrmlNode *cloneMe() const; virtual void cloneChildren(VrmlNamespace *); virtual bool isModified() const; virtual void clearFlags(); // Clear childrens flags too. virtual void addToScene( VrmlScene *s, const char *rel ); virtual void copyRoutes(VrmlNamespace *ns) const; virtual ostream& printFields(ostream& os, int indent); virtual void setField(const char *fieldName, const VrmlField &fieldValue); private: VrmlSFBool d_collide; VrmlSFNode d_proxy; // eventOut VrmlSFTime d_collideTime; }; #endif // _VRMLNODECOLLISION_