Go to the documentation of this file.
52 #ifndef __PCL_FileDataCache_h
53 #define __PCL_FileDataCache_h
116 return path == item.
path;
125 if ( path != item.
path )
126 return path < item.
path;
127 return key < item.
key;
268 friend class FileDataCache;
381 return m_maxItemDuration;
398 m_maxItemDuration =
Range( days, 0, 120 );
410 return m_maxItemDuration <= 0;
457 return m_compressionEnabled;
467 m_compressionEnabled = enable;
477 EnableCompression( !disable );
502 bool IsEmpty()
const;
573 return m_modifiedCount;
583 return m_modifiedCount > 0;
604 virtual void Save()
const;
615 virtual void Purge()
const;
636 mutable Mutex m_mutex;
641 int m_maxItemDuration = 30;
642 bool m_compressionEnabled =
true;
643 mutable int m_modifiedCount = 0;
650 #endif // __PCL_FileDataCache_h
constexpr const T & Range(const T &x, const T &a, const T &b) noexcept
int ModifiedCount() const
void DisableCompression(bool disable=true)
IsoString TokenSeparator() const
Generic dynamic matrix of arbitrary dimensions.
bool operator==(const Array< T, A > &x1, const Array< T, A > &x2) noexcept
Eight-bit string (ISO/IEC-8859-1 or UTF-8 string)
virtual String CacheName() const
bool ModifiedSince(FileTime t) const
virtual void AssignData(const FileDataCacheItem &item)
virtual bool DeserializeData(const IsoStringList &tokens)
bool IsEmpty() const noexcept
void Assign(const FileDataCacheItem &item)
An instant in any timescale.
double DaysSinceLastUsed() const
uint16 milliseconds
Milliseconds [0,999].
bool IsCompressionEnabled() const
virtual IsoStringList SerializedData() const
IsoString key
Cache key. Allows different cache entries for the same file.
Element of a file data cache.
virtual ~FileDataCacheItem()
TimePoint lastUsed
Time this cache item was last used.
virtual int MinSupportedVersion() const
Abstract base class of file data cache implementations.
String path
Full path to the file represented by this item.
void SetTokenSeparator(const IsoString &separator)
virtual void SetMaxItemDuration(int days)
int MaxItemDuration() const
bool ItemsNeverExpire() const
void EnableCompression(bool enable=true)
Generic array of vectors.
Adaptive mutual exclusion lock variable.
virtual bool ValidateData() const
TimePoint time
Cached file time.
virtual int Version() const
bool operator<(const Array< T, A > &x1, const Array< T, A > &x2) noexcept