00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028 #ifndef _ID3LIB_HELPERS_H_
00029 #define _ID3LIB_HELPERS_H_
00030
00031 #include "id3/id3lib_strings.h"
00032 #include "id3/globals.h"
00033
00034 class ID3_TagImpl;
00035 class ID3_Frame;
00036
00037 namespace dami
00038 {
00039 namespace id3
00040 {
00041 namespace v2
00042 {
00043 ID3_C_EXPORT String getString(const ID3_Frame*, ID3_FieldID);
00044 ID3_C_EXPORT String getStringAtIndex(const ID3_Frame*, ID3_FieldID, size_t);
00045
00046 ID3_C_EXPORT String getFrameText(const ID3_TagImpl&, ID3_FrameID);
00047 ID3_C_EXPORT ID3_Frame* setFrameText(ID3_TagImpl&, ID3_FrameID, String);
00048 ID3_C_EXPORT size_t removeFrames(ID3_TagImpl&, ID3_FrameID);
00049
00050 ID3_C_EXPORT ID3_Frame* hasArtist(const ID3_TagImpl&);
00051 ID3_C_EXPORT String getArtist(const ID3_TagImpl&);
00052 ID3_C_EXPORT ID3_Frame* setArtist(ID3_TagImpl&, String);
00053 ID3_C_EXPORT size_t removeArtists(ID3_TagImpl&);
00054
00055 ID3_C_EXPORT ID3_Frame* hasAlbum(const ID3_TagImpl&);
00056 ID3_C_EXPORT String getAlbum(const ID3_TagImpl&);
00057 ID3_C_EXPORT ID3_Frame* setAlbum(ID3_TagImpl&, String);
00058 ID3_C_EXPORT size_t removeAlbums(ID3_TagImpl&);
00059
00060 ID3_C_EXPORT ID3_Frame* hasTitle(const ID3_TagImpl&);
00061 ID3_C_EXPORT String getTitle(const ID3_TagImpl&);
00062 ID3_C_EXPORT ID3_Frame* setTitle(ID3_TagImpl&, String);
00063 ID3_C_EXPORT size_t removeTitles(ID3_TagImpl&);
00064
00065 ID3_C_EXPORT ID3_Frame* hasYear(const ID3_TagImpl&);
00066 ID3_C_EXPORT String getYear(const ID3_TagImpl&);
00067 ID3_C_EXPORT ID3_Frame* setYear(ID3_TagImpl&, String);
00068 ID3_C_EXPORT size_t removeYears(ID3_TagImpl&);
00069
00070 ID3_C_EXPORT ID3_Frame* hasV1Comment(const ID3_TagImpl&);
00071
00072 ID3_C_EXPORT ID3_Frame* hasComment(const ID3_TagImpl&);
00073 ID3_C_EXPORT String getComment(const ID3_TagImpl&, String desc);
00074 ID3_C_EXPORT String getV1Comment(const ID3_TagImpl&);
00075 ID3_C_EXPORT ID3_Frame* setComment(ID3_TagImpl&, String, String, String);
00076 ID3_C_EXPORT size_t removeComments(ID3_TagImpl&, String);
00077 ID3_C_EXPORT size_t removeAllComments(ID3_TagImpl&);
00078
00079 ID3_C_EXPORT ID3_Frame* hasTrack(const ID3_TagImpl&);
00080 ID3_C_EXPORT String getTrack(const ID3_TagImpl&);
00081 ID3_C_EXPORT size_t getTrackNum(const ID3_TagImpl&);
00082 ID3_C_EXPORT ID3_Frame* setTrack(ID3_TagImpl&, uchar ucTrack, uchar ucTotal);
00083 ID3_C_EXPORT size_t removeTracks(ID3_TagImpl&);
00084
00085 ID3_C_EXPORT ID3_Frame* hasGenre(const ID3_TagImpl&);
00086 ID3_C_EXPORT String getGenre(const ID3_TagImpl&);
00087 ID3_C_EXPORT size_t getGenreNum(const ID3_TagImpl&);
00088 ID3_C_EXPORT ID3_Frame* setGenre(ID3_TagImpl&, size_t ucGenre);
00089 ID3_C_EXPORT size_t removeGenres(ID3_TagImpl&);
00090
00091 ID3_C_EXPORT ID3_Frame* hasLyrics(const ID3_TagImpl&);
00092 ID3_C_EXPORT String getLyrics(const ID3_TagImpl&);
00093 ID3_C_EXPORT ID3_Frame* setLyrics(ID3_TagImpl&, String, String, String);
00094 ID3_C_EXPORT size_t removeLyrics(ID3_TagImpl&);
00095
00096 ID3_C_EXPORT String getLyricist(const ID3_TagImpl&);
00097 ID3_C_EXPORT ID3_Frame* setLyricist(ID3_TagImpl&, String);
00098 ID3_C_EXPORT size_t removeLyricists(ID3_TagImpl&);
00099
00100 ID3_C_EXPORT ID3_Frame* hasSyncLyrics(const ID3_TagImpl&, String lang, String desc);
00101 ID3_C_EXPORT ID3_Frame* setSyncLyrics(ID3_TagImpl&, BString, ID3_TimeStampFormat,
00102 String, String, ID3_ContentType);
00103 ID3_C_EXPORT BString getSyncLyrics(const ID3_TagImpl& tag, String lang, String desc);
00104 };
00105 };
00106 };
00107
00108 #endif
00109