00001 #ifndef SFROUTE_H 00002 #define SFROUTE_H 00003 00004 #include "X3DAbstractNode.h" 00005 #include <vector> 00006 00007 namespace X3DTK { 00008 namespace X3D { 00009 00010 class Scene; 00011 00012 } 00013 00014 class SFRoute; 00015 typedef std::vector<SFRoute> MFRoute; 00016 00025 class SFRoute 00026 { 00027 public: 00029 SFRoute(X3DAbstractNode *fromNode, const SFString &fromField, X3DAbstractNode *toNode, const SFString &toField); 00030 00032 inline X3DAbstractNode *getFromNode() const {return _fromNode;}; 00034 inline const SFString &getFromField() const {return _fromField;}; 00036 inline X3DAbstractNode *getToNode() const {return _toNode;}; 00038 inline const SFString &getToField() const {return _toField;}; 00039 00041 static void loadScene(X3D::Scene *S, const MFRoute &routes); 00042 00043 private: 00044 X3DAbstractNode *_fromNode; 00045 SFString _fromField; 00046 X3DAbstractNode *_toNode; 00047 SFString _toField; 00048 }; 00049 00050 } 00051 00052 #endif