Flow-IPC 3.0.0
Flow-IPC project: Full implementation reference.
Classes | Namespaces | Functions
shm_stats.hpp File Reference
#include <flow/util/stat/stat_set.hpp>
#include <cstdint>
#include <string>
#include <atomic>

Go to the source code of this file.

Classes

struct  ipc::shm::stat::Owner_obj_stats
 Flow-IPC SHM-module: SHM-provider-agnostic stats about an arena object if viewed as solely a memory-manager or heap, at the construct()ed a/k/a first-class object level. More...
 
struct  ipc::shm::stat::Lender_obj_stats
 Flow-IPC SHM-module: SHM-provider-agnostic stats about an arena if viewed as being capable or lending to (sharing with) other process(es); otherwise like Owner_obj_stats. More...
 
struct  ipc::shm::stat::Borrower_obj_stats
 Flow-IPC SHM-module: SHM-provider-agnostic stats about borrowing objects, typically across a process boundary, from a SHM arena. More...
 
struct  ipc::shm::stat::Live_obj_stats
 Stats struct thematically relevant to gauging outstanding (not-yet-garbage-collected) first-class objects in a given in-SHM arena. More...
 
struct  ipc::shm::stat::Shared_arena_obj_stats
 Stats struct tracking quantities applicable only to the arena-sharing SHM-provider type (at least SHM-classic) but otherwise thematically similar to Owner_obj_stats, Lender_obj_stats, Borrower_obj_stats. More...
 

Namespaces

namespace  ipc
 Catch-all namespace for the Flow-IPC project: A library/API in modern C++17 providing high-performance communication between processes.
 
namespace  ipc::shm
 Modules for SHared Memory (SHM) support.
 
namespace  ipc::shm::stat
 Stats-related sub-namespace, for ADL segregation and general organization.
 

Functions

template<typename Visitor >
void ipc::shm::stat::declare_stats (const flow::util::stat::Stat_name &name_prefix, const Owner_obj_stats *src_stats, Owner_obj_stats *target_stats, Visitor &&visitor)
 Declares the stats for Owner_obj_stats. More...
 
template<typename Visitor >
void ipc::shm::stat::declare_stats (const flow::util::stat::Stat_name &name_prefix, const Lender_obj_stats *src_stats, Lender_obj_stats *target_stats, Visitor &&visitor)
 Declares the stats for Lender_obj_stats. More...
 
template<typename Visitor >
void ipc::shm::stat::declare_stats (const flow::util::stat::Stat_name &name_prefix, const Borrower_obj_stats *src_stats, Borrower_obj_stats *target_stats, Visitor &&visitor)
 Declares the stats for Borrower_obj_stats. More...
 
template<typename Visitor >
void ipc::shm::stat::declare_stats (const flow::util::stat::Stat_name &name_prefix, const Live_obj_stats *src_stats, Live_obj_stats *target_stats, Visitor &&visitor)
 Declares the stats for Live_obj_stats. More...
 
template<typename Visitor >
void ipc::shm::stat::declare_stats (const flow::util::stat::Stat_name &name_prefix, const Shared_arena_obj_stats *src_stats, Shared_arena_obj_stats *target_stats, Visitor &&visitor)
 Declares the stats for Shared_arena_obj_stats. More...