#ifndef SEEN_SP_METADATA_H #define SEEN_SP_METADATA_H /* * SVG implementation * * Authors: * Kees Cook * * Copyright (C) 2004 Kees Cook * * Released under GNU GPL, read the file 'COPYING' for more information */ #include "sp-object.h" /* Metadata base class */ #define SP_METADATA(obj) (dynamic_cast((SPObject*)obj)) #define SP_IS_METADATA(obj) (dynamic_cast((SPObject*)obj) != NULL) class SPMetadata : public SPObject { public: SPMetadata(); virtual ~SPMetadata(); protected: virtual void build(SPDocument* doc, Inkscape::XML::Node* repr); virtual void release(); virtual void set(unsigned int key, const char* value); virtual void update(SPCtx* ctx, unsigned int flags); virtual Inkscape::XML::Node* write(Inkscape::XML::Document* doc, Inkscape::XML::Node* repr, unsigned int flags); }; SPMetadata * sp_document_metadata (SPDocument *document); #endif // vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4 :