23 #ifndef STORAGE_BCACHE_H 24 #define STORAGE_BCACHE_H 27 #include "storage/Devices/Partitionable.h" 28 #include "storage/Devices/Device.h" 29 #include "storage/Devicegraph.h" 30 #include "storage/Utils/Swig.h" 59 WRITETHROUGH, WRITEBACK, WRITEAROUND, NONE
239 const Impl& get_impl()
const;
241 virtual Bcache* clone()
const override;
void remove_bcache_cset()
Removes association with a caching set.
std::string get_bcache_type_name(BcacheType bcache_type)
Convert the BcacheType bcache_type to a string.
static std::vector< Bcache * > get_all(Devicegraph *devicegraph)
Get all bcaches.
static std::string find_free_name(const Devicegraph *devicegraph)
Find a free name for a bcache, e.g.
const BlkDevice * get_backing_device() const
Get the BlkDevice used as backing device.
bool is_bcache(const Device *device)
Checks whether device points to a Bcache.
static bool compare_by_number(const Bcache *lhs, const Bcache *rhs)
Compare (less than) two bcaches by number.
const BlkDevice * get_blk_device() const ST_DEPRECATED
Get the BlkDevice used as backing device.
BcacheType
Bcache types.
Definition: Bcache.h:42
A bcache device.
Definition: Bcache.h:78
static Bcache * create(Devicegraph *devicegraph, const std::string &name)
Create a device of type Bcache.
bool has_bcache_cset() const
Returns true if a caching set is attached.
std::string get_cache_mode_name(CacheMode cache_mode)
Convert the CacheMode cache_mode to a string.
static void reassign_numbers(Devicegraph *devicegraph)
Fix the numeric ids of bcache devices so that there are no holes in the id sequence for in-memory bca...
The main container of the libstorage-ng.
Definition: Devicegraph.h:169
An abstract Block Device.
Definition: BlkDevice.h:48
unsigned get_writeback_percent() const
Returns percent of writeback dirty pages.
const BcacheCset * get_bcache_cset() const
Get the caching set associated with this bcache device.
An abstract base class for storage devices.
Definition: Device.h:81
A bcache cache set.
Definition: BcacheCset.h:41
Bcache * to_bcache(Device *device)
Converts pointer to Device to pointer to Bcache.
unsigned long long get_sequential_cutoff() const
Returns size of sequential_cutoff attribute.
Definition: Partitionable.h:39
The storage namespace.
Definition: Actiongraph.h:39
BcacheType get_type() const
Get the bcache type.
static Bcache * find_by_name(Devicegraph *devicegraph, const std::string &name)
Find a bcache by its name.
unsigned int get_number() const
Get the number of the bcache.
void set_cache_mode(CacheMode mode)
Sets cache mode attribute.
void add_bcache_cset(BcacheCset *bcache_cset)
Associates a caching set to the bcache.
CacheMode
The Cache mode attribute.
Definition: Bcache.h:58
CacheMode get_cache_mode() const
Returns cache mode attribute.