#ifndef oo_ObjProperties_H__ #define oo_ObjProperties_H__ #include "ObjBase.h" #include namespace meow { template //! 目前擺爛中 class ObjProperties: public ObjBase { private: public: ObjProperties(); ObjProperties(ObjProperties const& p); virtual ~ObjProperties(); size_t propertySize() const; bool propertyEmpty() const; void propertyClear(); ObjBase const* property(std::string name) const; ObjBase* property(std::string name); bool propertyAdd(std::string name, ObjBase* obj, bool autoRemove); bool propertyDel(std::string name); ObjProperties& properties() const; ObjProperties& properties(ObjProperties const& p); bool write(FILE* f, bool bin, unsigned int fg) const; bool read(FILE* f, bool bin, unsigned int fg); ObjBase* create() const; ObjBase* copyFrom(ObjBase const* b); char const* ctype() const; std::string type() const; }; } #endif // oo_ObjProperties_H__