diff options
Diffstat (limited to 'source/blender/collada/ExtraTags.h')
-rw-r--r-- | source/blender/collada/ExtraTags.h | 25 |
1 files changed, 24 insertions, 1 deletions
diff --git a/source/blender/collada/ExtraTags.h b/source/blender/collada/ExtraTags.h index 09a86741481..5c31a5a95db 100644 --- a/source/blender/collada/ExtraTags.h +++ b/source/blender/collada/ExtraTags.h @@ -42,7 +42,19 @@ public: virtual ~ExtraTags(); /** Handle the beginning of an element. */ - bool addTag( const std::string tag, const std::string data); + bool addTag(std::string tag, std::string data); + + /** Set given short pointer to value of tag, if it exists. */ + void setData(std::string tag, short *data); + + /** Set given int pointer to value of tag, if it exists. */ + void setData(std::string tag, int *data); + + /** Set given float pointer to value of tag, if it exists. */ + void setData(std::string tag, float *data); + + /** Set given char pointer to value of tag, if it exists. */ + void setData(std::string tag, char *data); private: /** Disable default copy constructor. */ @@ -50,5 +62,16 @@ private: /** Disable default assignment operator. */ const ExtraTags& operator= ( const ExtraTags& pre ); + /** The profile for which the tags are. */ std::string profile; + + /** Map of tag and text pairs. */ + std::map<std::string, std::string> tags; + + /** Get text data for tag as an int. */ + int asInt(std::string tag, bool *ok); + /** Get text data for tag as a float. */ + float asFloat(std::string tag, bool *ok); + /** Get text data for tag as a string. */ + std::string asString(std::string tag, bool *ok); }; |