diff -r 22486c9c7b15 -r 378360dbbdba imgtools/romtools/rofsbuild/inc/cache/cacheentry.hpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/imgtools/romtools/rofsbuild/inc/cache/cacheentry.hpp Wed Jun 30 11:35:58 2010 +0800 @@ -0,0 +1,96 @@ +/** + * @file cacheentry.hpp + */ + + +#ifndef ROM_TOOLS_ROFSBUILD_CACHE_CACHEENTRY_H_ +#define ROM_TOOLS_ROFSBUILD_CACHE_CACHEENTRY_H_ + + +/** + * @class CacheEntry + * @brief CacheEntry holds both original executable data and cached executable data. + */ +class CacheEntry +{ +public: + CacheEntry(void); + + /** + * @fn void CacheEntry::SetOriginalFilename(const char* OriginalFilename) + * @brief Assign the original filename of the executable to be cached. + * @param OriginalFilename The original filename. + */ + void SetOriginalFilename(const char* OriginalFilename); + + /** + * @fn const char* CacheEntry::GetOriginalFilename(void) + * @return The original filename. + */ + const char* GetOriginalFilename(void) const; + + void SetCachedFilename(const char* CachedFilename); + + const char* GetCachedFilename(void) const; + + void SetOriginalFileCreateTime(time_t* CreateRawTime); + + void SetOriginalFileCreateTime(const char* CreateRawTime); + + const char* GetOriginalFileCreateTime(void) const; + + void SetOriginalFileCompression(const char* CompressionMethodID); + + void SetOriginalFileCompression(unsigned int CompressionMethodID); + + const char* GetOriginalFileCompressionID(void) const; + + void SetCachedFileCompression(const char* CompressionMethodID); + + void SetCachedFileCompression(unsigned int CompressionMethodID); + + const char* GetCachedFileCompressionID(void) const; + + void SetCachedFileBuffer(char* FileBuffer, int FileBufferLen); + + const char* GetCachedFileBuffer(void) const; + + int GetCachedFileBufferLen(void) const; + + void AppendEntry(CacheEntry* EntryRef); + + CacheEntry* GetNextEntry(void) const; + + void SetNextEntry(CacheEntry* EntryRef); + + bool Equals(CacheEntry* EntryRef); + + virtual ~CacheEntry(void); +protected: + std::string originalfile; + + std::string cachedfile; + + std::string originalfilecreatetime; + + std::string originalfilecompression; + + std::string cachedfilecompression; + + std::string compressionenabled; + + std::string compressionindicator; + + CacheEntry* next; + + char* cachedfilebuffer; + + int cachedfilebuffersize; +private: + CacheEntry(const CacheEntry&); + + CacheEntry& operator = (const CacheEntry&); +}; + + +#endif /* defined ROM_TOOLS_ROFSBUILD_CACHE_CACHEENTRY_H_ */