ARC SDK
Public Member Functions | Protected Attributes | Static Protected Attributes

Base class for BrokerPlugins implementing different brokering algorithms. More...

#include <arc/compute/BrokerPlugin.h>

Inheritance diagram for Arc::BrokerPlugin:

Public Member Functions

 BrokerPlugin (BrokerPluginArgument *arg)
 Should never be called directly - instead use BrokerPluginLoader.load(). More...
 
virtual bool operator() (const ExecutionTarget &lhs, const ExecutionTarget &rhs) const
 Sorting operator - returns true if lhs a better target than rhs. More...
 
virtual bool match (const ExecutionTarget &et) const
 Returns true if the target is acceptable for the BrokerPlugin. More...
 
virtual void set (const JobDescription &_j) const
 Set the JobDescription to be used for brokering. More...
 

Protected Attributes

const UserConfiguc
 
const JobDescriptionj
 

Static Protected Attributes

static Logger logger
 

Detailed Description

Base class for BrokerPlugins implementing different brokering algorithms.

Sub-classes implement their own version of a brokering algorithm based on certain attributes of the job or targets. match() is called for each ExecutionTarget and sub-classes should in general first call BrokerPlugin::match(), which calls Broker::genericMatch(), to check that basic requirements are satisfied, and then do their own additional checks. In order for the targets to be ranked using operator() the sub-class should store appropriate data about each target during match().

Constructor & Destructor Documentation

◆ BrokerPlugin()

Arc::BrokerPlugin::BrokerPlugin ( BrokerPluginArgument arg)
inline

Should never be called directly - instead use BrokerPluginLoader.load().

Member Function Documentation

◆ match()

virtual bool Arc::BrokerPlugin::match ( const ExecutionTarget et) const
virtual

Returns true if the target is acceptable for the BrokerPlugin.

◆ operator()()

virtual bool Arc::BrokerPlugin::operator() ( const ExecutionTarget lhs,
const ExecutionTarget rhs 
) const
virtual

Sorting operator - returns true if lhs a better target than rhs.

◆ set()

virtual void Arc::BrokerPlugin::set ( const JobDescription _j) const
virtual

Set the JobDescription to be used for brokering.


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