CernVM-FS  2.12.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
glue::StatStore Class Reference

#include <glue_buffer.h>

Collaboration diagram for glue::StatStore:

Public Member Functions

int32_t Add (const struct stat &info)
 
uint64_t Erase (int32_t index)
 
struct stat Get (int32_t index) const
 

Private Attributes

BigVector< struct stat > store_
 

Detailed Description

A vector of stat structs. When removing items, the empty slot is swapped with the last element so that there are no gaps in the vector. The memory allocation of the vector grows and shrinks with the size. Removal of items returns the inode of the element swapped with the gap so that the page entry tracker can update its index.

Definition at line 383 of file glue_buffer.h.

Member Function Documentation

int32_t glue::StatStore::Add ( const struct stat &  info)
inline

Definition at line 385 of file glue_buffer.h.

Referenced by glue::PageCacheTracker::Open().

Here is the call graph for this function:

Here is the caller graph for this function:

uint64_t glue::StatStore::Erase ( int32_t  index)
inline

Definition at line 394 of file glue_buffer.h.

Referenced by glue::PageCacheTracker::Close().

Here is the call graph for this function:

Here is the caller graph for this function:

struct stat glue::StatStore::Get ( int32_t  index) const
inline

Definition at line 402 of file glue_buffer.h.

Referenced by glue::PageCacheTracker::GetInfoIfOpen(), and glue::PageCacheTracker::IsStale().

Here is the call graph for this function:

Here is the caller graph for this function:

Member Data Documentation

BigVector<struct stat> glue::StatStore::store_
private

Definition at line 405 of file glue_buffer.h.

Referenced by Add(), Erase(), and Get().


The documentation for this class was generated from the following file: