CAPIO-CL 1.2.0
CAPIO-CL: Cross Application Programmable I/O - Coordination Language
Loading...
Searching...
No Matches
capiocl::monitor::Monitor Class Reference

Class to monitor runtime dependent information on CAPIO-CL related paths, such as commitment status and Home Node Policies. More...

#include <monitor.h>

Public Member Functions

bool isCommitted (const std::filesystem::path &path) const
void setCommitted (std::filesystem::path path) const
void registerMonitorBackend (const MonitorInterface *interface)
void setHomeNode (const std::filesystem::path &path) const
std::set< std::string > getHomeNode (const std::filesystem::path &path) const

Friends

class Engine
class MonitorInterface

Detailed Description

Class to monitor runtime dependent information on CAPIO-CL related paths, such as commitment status and Home Node Policies.

Member Function Documentation

◆ getHomeNode()

std::set< std::string > capiocl::monitor::Monitor::getHomeNode ( const std::filesystem::path & path) const
nodiscard

Get set of home nodes from all registered backends

Parameters
path
Returns

◆ isCommitted()

bool capiocl::monitor::Monitor::isCommitted ( const std::filesystem::path & path) const
nodiscard

Check whether a file is committed or not. First look into _committed_files. If not found then look into the file system for a committed token. If the committed token is not found then return false.

Parameters
pathpath to check for the commit status
Returns

◆ registerMonitorBackend()

void capiocl::monitor::Monitor::registerMonitorBackend ( const MonitorInterface * interface)

Add a new backend for monitor. Must be a derived class from MonitorInterface

Parameters
interface

◆ setCommitted()

void capiocl::monitor::Monitor::setCommitted ( std::filesystem::path path) const

Set a file to be committed. First send a multicast message, and then generate a commit token

Parameters
pathPath of file to commit

◆ setHomeNode()

void capiocl::monitor::Monitor::setHomeNode ( const std::filesystem::path & path) const

set the home node for given path to the current hostname, by calling the setHomeNode method for all registered Monitor backends.

Parameters
path

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