Tag Parser 11.3.0
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. More... | |
TagField (const IdentifierType &id, const TagValue &value) | |
Constructs a new TagField with the specified id and value. More... | |
~TagField () | |
Destroys the TagField. More... | |
IdentifierType & | id () |
Returns the id of the current TagField. More... | |
const IdentifierType & | id () const |
Returns the id of the current TagField. More... | |
std::string | idToString () const |
Returns the id of the current TagField as string. More... | |
void | setId (const IdentifierType &id) |
Sets the id of the current Tag Field. More... | |
void | clearId () |
Clears the id of the current TagField. More... | |
TagValue & | value () |
Returns the value of the current TagField. More... | |
const TagValue & | value () const |
Returns the value of the current TagField. More... | |
void | setValue (const TagValue &value) |
Sets the value of the current TagField. More... | |
void | clearValue () |
Clears the value of the current TagField. More... | |
const TypeInfoType & | typeInfo () const |
Returns the type info of the current TagField. More... | |
void | setTypeInfo (const TypeInfoType &typeInfo) |
Sets the type info of the current TagField. More... | |
void | removeTypeInfo () |
Removes the type info from the current TagField. More... | |
bool | isTypeInfoAssigned () const |
Returns an indication whether a type info is assigned. More... | |
bool | isDefault () const |
Returns an indication whether the field is labeled as default. More... | |
void | setDefault (bool isDefault) |
Sets whether the field is labeled as default. More... | |
void | clear () |
Clears id, value, type info, sets default flag to false and resets further implementation specific values. More... | |
bool | isAdditionalTypeInfoUsed () const |
Returns an indication whether the additional type info is used. More... | |
const std::vector< ImplementationType > & | nestedFields () const |
Returns the nested fields. More... | |
std::vector< ImplementationType > & | nestedFields () |
Returns the nested fields. More... | |
bool | supportsNestedFields () const |
Returns whether nested fields are supported by the implementation. More... | |
Protected Member Functions | |
void | internallyClearValue () |
Clears the assigned value; called via clearValue() and clear(). More... | |
void | internallyClearFurtherData () |
Clears further data; called via clear(). More... | |
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 30 of file generictagfield.h.
using TagParser::TagField< ImplementationType >::IdentifierType = typename TagFieldTraits<ImplementationType>::IdentifierType |
Definition at line 34 of file generictagfield.h.
using TagParser::TagField< ImplementationType >::TypeInfoType = typename TagFieldTraits<ImplementationType>::TypeInfoType |
Definition at line 35 of file generictagfield.h.
TagParser::TagField< ImplementationType >::TagField |
Constructs an empty TagField.
Definition at line 85 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 98 of file generictagfield.h.
TagParser::TagField< ImplementationType >::~TagField |
Destroys the TagField.
Definition at line 110 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 239 of file generictagfield.h.
|
inline |
Clears the id of the current TagField.
Definition at line 149 of file generictagfield.h.
|
inline |
Clears the value of the current TagField.
Definition at line 181 of file generictagfield.h.
|
inline |
Returns the id of the current TagField.
Definition at line 117 of file generictagfield.h.
|
inline |
Returns the id of the current TagField.
Definition at line 125 of file generictagfield.h.
|
inline |
Returns the id of the current TagField as string.
Definition at line 133 of file generictagfield.h.
|
protected |
Clears further data; called via clear().
Definition at line 299 of file generictagfield.h.
|
protected |
Clears the assigned value; called via clearValue() and clear().
Definition at line 290 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 255 of file generictagfield.h.
|
inline |
Returns an indication whether the field is labeled as default.
Definition at line 223 of file generictagfield.h.
|
inline |
Returns an indication whether a type info is assigned.
Definition at line 215 of file generictagfield.h.
|
inline |
Returns the nested fields.
Definition at line 273 of file generictagfield.h.
const std::vector< ImplementationType > & TagParser::TagField< ImplementationType >::nestedFields |
Returns the nested fields.
Definition at line 263 of file generictagfield.h.
|
inline |
Removes the type info from the current TagField.
Definition at line 206 of file generictagfield.h.
|
inline |
Sets whether the field is labeled as default.
Definition at line 231 of file generictagfield.h.
|
inline |
Sets the id of the current Tag Field.
Definition at line 141 of file generictagfield.h.
|
inline |
Sets the type info of the current TagField.
Definition at line 197 of file generictagfield.h.
|
inline |
Sets the value of the current TagField.
Definition at line 173 of file generictagfield.h.
|
inline |
Returns whether nested fields are supported by the implementation.
Definition at line 281 of file generictagfield.h.
|
inline |
Returns the type info of the current TagField.
Definition at line 189 of file generictagfield.h.
|
inline |
Returns the value of the current TagField.
Definition at line 157 of file generictagfield.h.
|
inline |
Returns the value of the current TagField.
Definition at line 165 of file generictagfield.h.
|
friend |
Definition at line 299 of file generictagfield.h.