00001 00002 00003 00005 00006 00011 00016 00021 // X3DComponent.h // 00023 00024 #ifndef X3DCOMPONENT_H 00025 #define X3DCOMPONENT_H 00026 00027 #include "X3DTypes.h" 00028 #include "Component.h" 00029 00030 namespace X3DTK { 00031 00033 00034 class X3DComponent 00035 { 00036 public: 00038 X3DComponent(); 00040 virtual ~X3DComponent() = 0; 00041 00043 inline Component *getComponent() const {return component;}; 00045 inline SFString getName() const {return component->getName();}; 00046 00048 void addOneProxy(); 00050 void removeOneProxy(); 00051 00053 inline unsigned int getProxyNumber() const {return _proxyNumber;}; 00054 00055 protected: 00056 void defineComponentName(const SFString &name); 00057 Component *component; 00058 00059 private: 00060 unsigned int _proxyNumber; 00061 }; 00062 00063 } 00064 00065 #endif