Main Page   Namespace List   Class Hierarchy   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages  

Component.h

Go to the documentation of this file.
00001 
00002 
00003 
00005 
00006 
00011 
00016 
00021 //                            Component.h                                     //
00023 
00024 #ifndef COMPONENT_H
00025 #define COMPONENT_H
00026 
00027 #include "X3DTypes.h"
00028 
00029 namespace X3DTK {
00030 
00033 
00034 class Component
00035 {
00036   friend class Type;
00037   friend class X3DComponent;
00038   
00039 public:
00041   static Component *getComponent(const SFString &name);
00042   
00044   inline SFString getName() const {return _name;};
00046   inline MFType getTypeList() const {return _typeList;};
00047 
00048 private:  
00049   Component(const SFString &name);
00050   ~Component();
00051   
00053   void addType(Type *type);
00055   void addOneReference();
00057   static void removeOneReference(Component *component);
00058   
00059   SFString _name;    
00060   int _refCount;
00061   MFType _typeList;
00062   
00063   static MFComponent _componentList;
00064 };
00065 
00066 }
00067 
00068 #endif

Generated on Wed Sep 10 11:25:12 2003 for X3DToolKit by doxygen1.3