Main Page | Namespace List | Class Hierarchy | Class List | File List | Class Members | File Members | Related Pages

fileinfo.h

Go to the documentation of this file.
00001 #pragma once
00002 
00027 #ifndef __FILEINFO_H__
00028 #define __FILEINFO_H__
00029 
00030 // INCLUDES
00031 #include "id.h"
00032 #include "md5.h"
00033 
00034 // USINGS
00035 using std::string;
00036 using std::streamsize;
00037 using std::streamoff;
00038 
00040 class fileinfo
00041 {
00042     // Member functions.
00043 public:
00044     fileinfo(const string& FileName);
00045     virtual ~fileinfo(void);
00046     string GetFileName(void) const;
00047     virtual void Show(void) const;
00048     string ParseID(const string& IDName) const;
00049     void GenerateInfo(void);
00050 protected:
00051     virtual void FirstStep(void);
00052     virtual streamoff Step(char* pContent, streamsize ContentSize, streamoff FileOffset);
00053     virtual void LastStep(void);
00054 
00055     // Attributes.
00056 protected:
00057     id* m_pIDs;                 
00058     const string m_FileName;    
00059     streamsize m_FileSize;      
00060 private:
00061     streamoff m_LastOffset;     
00062     md5* m_pMD5;                
00063 };
00064 
00065 #endif // __FILEINFO_H__

doxygen sourceforge id3lib