Go to the documentation of this file. 1 #ifndef __XRDFILECACHE_INFO_HH__
2 #define __XRDFILECACHE_INFO_HH__
279 inline unsigned char cfiBIT(
int n)
const {
return 1 << n; }
293 const int off = i - cn*8;
302 const int off = i - cn*8;
313 const int off = i - cn*8;
324 const int off = i - cn*8;
333 const int off = i - cn*8;
397 for (
int i = firstIdx; i < lastIdx; ++i)
int m_sizeInBits
cached
Definition: XrdFileCacheInfo.hh:275
bool TestBitPrefetch(int i) const
Test if block at the given index has been prefetched.
Definition: XrdFileCacheInfo.hh:317
bool IsAnythingEmptyInRng(int firstIdx, int lastIdx) const
Check download status in given block range.
Definition: XrdFileCacheInfo.hh:393
void WriteIOStatDetach(Stats &s)
Write close time together with bytes missed, hits, and disk.
bool GetLatestDetachTime(time_t &t) const
Get latest detach time.
static const size_t m_maxNumAccess
Definition: XrdFileCacheInfo.hh:261
Status of cached file. Can be read from and written into a binary file.
Definition: XrdFileCacheInfo.hh:49
bool m_complete
cached
Definition: XrdFileCacheInfo.hh:276
Store m_store
Definition: XrdFileCacheInfo.hh:270
bool Read(XrdOssDF *fp, const std::string &fname="<unknown>")
Rea load content from cinfo file into this object.
unsigned char * m_buff_prefetch
prefetch statistics
Definition: XrdFileCacheInfo.hh:273
long long BytesMissed
read from ram
Definition: XrdFileCacheInfo.hh:58
XrdCksCalc * m_cksCalc
Definition: XrdFileCacheInfo.hh:283
void DisableDownloadStatus()
Disable allocating, writing, and reading of downlaod status.
int GetVersion()
Get version.
Definition: XrdFileCacheInfo.hh:246
Statistics of disk cache utilisation.
Definition: XrdFileCacheStats.hh:31
XrdSysTrace * m_trace
Definition: XrdFileCacheInfo.hh:268
static const int m_defaultVersion
Definition: XrdFileCacheInfo.hh:260
void SetBufferSize(long long)
Definition: XrdFileCacheInfo.hh:53
int GetNDownloadedBlocks() const
Get number of downloaded blocks.
Definition: XrdFileCacheInfo.hh:339
int m_version
info version
Definition: XrdFileCacheInfo.hh:64
unsigned char cfiBIT(int n) const
Definition: XrdFileCacheInfo.hh:279
void WriteIOStat(Stats &s)
Write bytes missed, hits, and disk.
bool TestBitWritten(int i) const
Test if block at the given index is written to disk.
Definition: XrdFileCacheInfo.hh:288
void GetCksum(unsigned char *buff, char *digest)
Get md5 cksum.
static const char * m_infoExtension
Definition: XrdFileCacheInfo.hh:258
Definition: XrdFileCache.hh:40
time_t DetachTime
open time
Definition: XrdFileCacheInfo.hh:55
bool IsComplete() const
Get complete status.
Definition: XrdFileCacheInfo.hh:388
long long GetFileSize() const
Get file size.
Definition: XrdFileCacheInfo.hh:383
void SetBitPrefetch(int i)
Mark block as obtained through prefetch.
Definition: XrdFileCacheInfo.hh:306
void UpdateDownloadCompleteStatus()
Update complete status.
Definition: XrdFileCacheInfo.hh:403
time_t m_creationTime
time the info file was created
Definition: XrdFileCacheInfo.hh:69
void SetBitWritten(int i)
Mark block as written to disk.
Definition: XrdFileCacheInfo.hh:297
char m_cksum[16]
cksum of downloaded information
Definition: XrdFileCacheInfo.hh:68
void WriteIOStatSingle(long long bytes_disk)
Write single open/close time for given bytes read from disk.
const Store & RefStoredData() const
Get stored data.
Definition: XrdFileCacheInfo.hh:251
AStat()
read remote client
Definition: XrdFileCacheInfo.hh:60
Store()
Definition: XrdFileCacheInfo.hh:73
XrdSysTrace * GetTrace() const
Definition: XrdFileCacheInfo.hh:263
int GetLastDownloadedBlock() const
Get number of the last downloaded block.
Definition: XrdFileCacheInfo.hh:353
size_t m_accessCnt
number of written AStat structs
Definition: XrdFileCacheInfo.hh:70
long long GetNDownloadedBytes() const
Get number of downloaded bytes.
Definition: XrdFileCacheInfo.hh:348
void ResetAllAccessStats()
Reset IO Stats.
Definition: XrdClAnyObject.hh:26
long long GetBufferSize() const
Get prefetch buffer size.
Definition: XrdFileCacheInfo.hh:408
long long m_fileSize
number of file blocks
Definition: XrdFileCacheInfo.hh:66
void SetAllBitsSynced()
Mark all blocks as synced to disk.
bool m_hasPrefetchBuffer
constains current prefetch score
Definition: XrdFileCacheInfo.hh:271
long long GetExpectedDataFileSize() const
Get expected data file size.
Definition: XrdFileCacheInfo.hh:361
void ResizeBits(int n)
Reserve buffer for fileSize/bufferSize bytes.
Info(XrdSysTrace *trace, bool prefetchBuffer=false)
Constructor.
static const char * m_traceID
Definition: XrdFileCacheInfo.hh:259
static size_t GetMaxNumAccess()
Definition: XrdFileCacheInfo.hh:265
bool Write(XrdOssDF *fp, const std::string &fname="<unknown>")
int GetSizeInBits() const
Get number of blocks represented in download-state bit-vector.
Definition: XrdFileCacheInfo.hh:378
unsigned char * m_buff_written
download state vector
Definition: XrdFileCacheInfo.hh:272
std::vector< AStat > m_astats
number of last m_maxAcessCnts
Definition: XrdFileCacheInfo.hh:71
Definition: XrdSysTrace.hh:49
bool ReadV1(XrdOssDF *fp, const std::string &fname)
long long m_bufferSize
prefetch buffer size
Definition: XrdFileCacheInfo.hh:65
void SetBitSynced(int i)
Mark block as synced to disk.
Definition: XrdFileCacheInfo.hh:328
long long BytesDisk
close time
Definition: XrdFileCacheInfo.hh:56
size_t GetAccessCnt()
Get number of accesses.
Definition: XrdFileCacheInfo.hh:241
long long BytesRam
read from disk
Definition: XrdFileCacheInfo.hh:57
Definition: XrdCksCalc.hh:40
void WriteIOStatAttach()
Write open time in the last entry of access statistics.
time_t AttachTime
Definition: XrdFileCacheInfo.hh:54
void SetFileSize(long long)
int GetSizeInBytes() const
Get size of download-state bit-vector in bytes.
Definition: XrdFileCacheInfo.hh:370
Definition: XrdFileCacheInfo.hh:63
unsigned char * m_buff_synced
disk written state vector
Definition: XrdFileCacheInfo.hh:67
void WriteIOStatSingle(long long bytes_disk, time_t att, time_t dtc)
Write open/close with given time and bytes read from disk.