27#if defined HAVE_CONFIG_H
77 for (
iterator fi = _fields.begin(); fi != _fields.end(); ++fi)
93 _encryption_id =
'\0';
104 _fields.push_back(fld);
105 _bitset.set(fld->
GetID());
113 _fields.push_back(fld);
114 _bitset.set(fld->
GetID());
123 bool changed = (this->
GetID() != id);
155 for (
const_iterator fi = _fields.begin(); fi != _fields.end(); ++fi)
157 if ((*fi)->GetID() == fieldName)
169 return _fields.size();
174 size_t bytesUsed = _hdr.
Size();
187 for (
iterator fi = _fields.begin(); fi != _fields.end(); ++fi)
189 if (*fi && (*fi)->InScope(this->GetSpec()))
197 (*fi)->SetEncoding(enc);
199 bytesUsed += (*fi)->BinSize();
209 bool changed = _changed;
211 for (
const_iterator fi = _fields.begin(); fi != _fields.end(); ++fi)
213 if (*fi && (*fi)->InScope(this->GetSpec()))
215 changed = (*fi)->HasChanged();
229 while (li != this->
end())
233 if (thisFld !=
NULL && thatFld !=
NULL)
251 if (myFrameDef !=
NULL)
The representative class of an ID3v2 field.
virtual ID3_FieldID GetID() const =0
virtual const ID3_Field * GetNext()=0
The representative class of an id3v2 frame.
ID3_FrameID GetID() const
Returns the type of frame that the object represents.
bool GetCompression() const
Returns whether or not the compression flag is set.
uchar GetGroupingID() const
Iterator * CreateIterator()
ID3_V2Spec GetSpec() const
uchar GetEncryptionID() const
ID3_FrameID GetID() const
bool SetGroupingID(uchar id)
uchar GetGroupingID() const
uchar GetEncryptionID() const
ID3_FrameImpl(ID3_FrameID id=ID3FID_NOFRAME)
ID3_V2Spec GetSpec() const
bool SetCompression(bool b)
Sets the compression flag within the frame.
Fields::iterator iterator
bool SetEncryptionID(uchar id)
ID3_Field * GetField(ID3_FieldID name) const
const char * GetDescription() const
virtual ~ID3_FrameImpl()
Destructor.
Fields::const_iterator const_iterator
ID3_FrameImpl & operator=(const ID3_Frame &)
bool Contains(ID3_FieldID fld) const
bool SetID(ID3_FrameID id)
ID3_FrameDef * ID3_FindFrameDef(ID3_FrameID id)
ID3_FieldID
Enumeration of the different types of fields in a frame.
@ ID3FN_TEXTENC
Text encoding (unicode or ASCII)
ID3_TextEnc
Enumeration of the types of text encodings: ascii or unicode.
ID3_FrameID
Enumeration of the different types of frames recognized by id3lib.
static const ID3_FieldDef * DEFAULT
const ID3_FieldDef * aeFieldDefs
const char * sDescription