oggfile.h
Go to the documentation of this file.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 #include "taglib_export.h"
00027 #include "tfile.h"
00028 #include "tbytevectorlist.h"
00029
00030 #ifndef TAGLIB_OGGFILE_H
00031 #define TAGLIB_OGGFILE_H
00032
00033 namespace TagLib {
00034
00036
00037 namespace Ogg {
00038
00039 class PageHeader;
00040
00042
00050 class TAGLIB_EXPORT File : public TagLib::File
00051 {
00052 public:
00053 virtual ~File();
00054
00062 ByteVector packet(unsigned int i);
00063
00067 void setPacket(unsigned int i, const ByteVector &p);
00068
00073 const PageHeader *firstPageHeader();
00074
00079 const PageHeader *lastPageHeader();
00080
00081 virtual bool save();
00082
00083 protected:
00091 File(FileName file);
00092
00103 File(IOStream *stream);
00104
00105 private:
00106 File(const File &);
00107 File &operator=(const File &);
00108
00113 bool readPages(unsigned int i);
00114
00118 void writePacket(unsigned int i, const ByteVector &packet);
00119
00120 class FilePrivate;
00121 FilePrivate *d;
00122 };
00123
00124 }
00125 }
00126
00127 #endif