Move over to the union tag class. Yeah, this is crazy to be doing close

to a release, but you know, momentum.


git-svn-id: svn://anonsvn.kde.org/home/kde/trunk/kdesupport/taglib@768978 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
This commit is contained in:
Scott Wheeler
2008-01-31 03:41:31 +00:00
parent f38f6588a2
commit be5c25bbfa
3 changed files with 128 additions and 210 deletions

View File

@ -38,10 +38,32 @@ namespace TagLib {
{
public:
enum AccessType { Read, Write };
/*!
* Creates a TagLib::Tag that is the union of \a first, \a second, and
* \a third. The TagUnion takes ownership of these tags and will handle
* their deletion.
*/
TagUnion(Tag *first = 0, Tag *second = 0, Tag *third = 0);
virtual ~TagUnion();
Tag *tag(int index) const;
/*!
* Simply returns the value for the the tag at \a index.
*
* \note This does not call tag()
*
* \see tag()
*/
Tag *operator[](int index) const;
/*!
* By default just a call to operator[], but may be overridden if, for
* instance, it is desirable to create frames on write.
*/
virtual Tag *tag(int index, AccessType type = Read) const;
void setTag(int index, Tag *tag);
virtual String title() const;