Tag Parser 12.3.1
C++ library for reading and writing MP4 (iTunes), ID3, Vorbis, Opus, FLAC and Matroska tags
|
The TagField class is used by FieldMapBasedTag to store the fields. More...
#include <generictagfield.h>
Public Types | |
using | IdentifierType = typename TagFieldTraits<ImplementationType>::IdentifierType |
using | TypeInfoType = typename TagFieldTraits<ImplementationType>::TypeInfoType |
Public Member Functions | |
TagField () | |
Constructs an empty TagField. | |
TagField (const IdentifierType &id, const TagValue &value) | |
Constructs a new TagField with the specified id and value. | |
~TagField () | |
Destroys the TagField. | |
IdentifierType & | id () |
Returns the id of the current TagField. | |
const IdentifierType & | id () const |
Returns the id of the current TagField. | |
std::string | idToString () const |
Returns the id of the current TagField as string. | |
void | setId (const IdentifierType &id) |
Sets the id of the current Tag Field. | |
void | clearId () |
Clears the id of the current TagField. | |
TagValue & | value () |
Returns the value of the current TagField. | |
const TagValue & | value () const |
Returns the value of the current TagField. | |
void | setValue (const TagValue &value) |
Sets the value of the current TagField. | |
void | clearValue () |
Clears the value of the current TagField. | |
const TypeInfoType & | typeInfo () const |
Returns the type info of the current TagField. | |
void | setTypeInfo (const TypeInfoType &typeInfo) |
Sets the type info of the current TagField. | |
void | removeTypeInfo () |
Removes the type info from the current TagField. | |
bool | isTypeInfoAssigned () const |
Returns an indication whether a type info is assigned. | |
bool | isDefault () const |
Returns an indication whether the field is labeled as default. | |
void | setDefault (bool isDefault) |
Sets whether the field is labeled as default. | |
void | clear () |
Clears id, value, type info, sets default flag to false and resets further implementation specific values. | |
bool | isAdditionalTypeInfoUsed () const |
Returns an indication whether the additional type info is used. | |
const std::vector< ImplementationType > & | nestedFields () const |
Returns the nested fields. | |
std::vector< ImplementationType > & | nestedFields () |
Returns the nested fields. | |
bool | supportsNestedFields () const |
Returns whether nested fields are supported by the implementation. | |
Protected Member Functions | |
void | internallyClearValue () |
Clears the assigned value; called via clearValue() and clear(). | |
void | internallyClearFurtherData () |
Clears further data; called via clear(). | |
Friends | |
class | TagFieldTraits< ImplementationType > |
The TagField class is used by FieldMapBasedTag to store the fields.
A TagField consists of an identifier and a value. An additional type info might be assigned as well. The usage of the type info depends on the particular tag implementation.
ImplementationType | Specifies the type of the actual implementation. |
Definition at line 29 of file generictagfield.h.
using TagParser::TagField< ImplementationType >::IdentifierType = typename TagFieldTraits<ImplementationType>::IdentifierType |
Definition at line 33 of file generictagfield.h.
using TagParser::TagField< ImplementationType >::TypeInfoType = typename TagFieldTraits<ImplementationType>::TypeInfoType |
Definition at line 34 of file generictagfield.h.
TagParser::TagField< ImplementationType >::TagField | ( | ) |
Constructs an empty TagField.
Definition at line 84 of file generictagfield.h.
TagParser::TagField< ImplementationType >::TagField | ( | const IdentifierType & | id, |
const TagValue & | value ) |
Constructs a new TagField with the specified id and value.
Definition at line 97 of file generictagfield.h.
TagParser::TagField< ImplementationType >::~TagField | ( | ) |
Destroys the TagField.
Definition at line 109 of file generictagfield.h.
void TagParser::TagField< ImplementationType >::clear | ( | ) |
Clears id, value, type info, sets default flag to false and resets further implementation specific values.
Definition at line 238 of file generictagfield.h.
|
inline |
Clears the id of the current TagField.
Definition at line 148 of file generictagfield.h.
|
inline |
Clears the value of the current TagField.
Definition at line 180 of file generictagfield.h.
|
inline |
Returns the id of the current TagField.
Definition at line 116 of file generictagfield.h.
|
inline |
Returns the id of the current TagField.
Definition at line 124 of file generictagfield.h.
|
inline |
Returns the id of the current TagField as string.
Definition at line 132 of file generictagfield.h.
|
protected |
Clears further data; called via clear().
Definition at line 298 of file generictagfield.h.
|
protected |
Clears the assigned value; called via clearValue() and clear().
Definition at line 289 of file generictagfield.h.
|
inline |
Returns an indication whether the additional type info is used.
The default implementation always returns false. The method might be reimplemented when subclassing.
Definition at line 254 of file generictagfield.h.
|
inline |
Returns an indication whether the field is labeled as default.
Definition at line 222 of file generictagfield.h.
|
inline |
Returns an indication whether a type info is assigned.
Definition at line 214 of file generictagfield.h.
|
inline |
Returns the nested fields.
Definition at line 272 of file generictagfield.h.
const std::vector< ImplementationType > & TagParser::TagField< ImplementationType >::nestedFields | ( | ) | const |
Returns the nested fields.
Definition at line 262 of file generictagfield.h.
|
inline |
Removes the type info from the current TagField.
Definition at line 205 of file generictagfield.h.
|
inline |
Sets whether the field is labeled as default.
Definition at line 230 of file generictagfield.h.
|
inline |
Sets the id of the current Tag Field.
Definition at line 140 of file generictagfield.h.
|
inline |
Sets the type info of the current TagField.
Definition at line 196 of file generictagfield.h.
|
inline |
Sets the value of the current TagField.
Definition at line 172 of file generictagfield.h.
|
inline |
Returns whether nested fields are supported by the implementation.
Definition at line 280 of file generictagfield.h.
|
inline |
Returns the type info of the current TagField.
Definition at line 188 of file generictagfield.h.
|
inline |
Returns the value of the current TagField.
Definition at line 156 of file generictagfield.h.
|
inline |
Returns the value of the current TagField.
Definition at line 164 of file generictagfield.h.
|
friend |
Definition at line 298 of file generictagfield.h.