|
SAGA C++ API 1.5.3
|
The monitorable interface is implemented by those SAGA objects which can be monitored, i.e. which have one or more associated metrics. More...
#include <monitorable.hpp>

Public Types | |
| typedef unsigned int | cookie_handle |
| Brief description starts here. | |
Public Member Functions | |
| monitorable (saga::object rhs) | |
| Brief description starts here. | |
| monitorable (saga::impl::object *impl) | |
| Brief description starts here. | |
| virtual | ~monitorable (void) |
| Brief description starts here. | |
| virtual std::vector< saga::metric > | list_metrics (void) const |
| Brief description starts here. | |
| virtual saga::metric | get_metric (std::string name) const |
| Returns a metric instance, identified by name. | |
| virtual cookie_handle | add_callback (std::string name, saga::callback cb) |
| Adds a callback to the specified metric. | |
| virtual void | remove_callback (std::string name, cookie_handle cookie) |
| Removes a callback from the specified metric. | |
Protected Member Functions | |
| saga::impl::monitorable * | get_monitorable (void) |
| saga::impl::monitorable const * | get_monitorable (void) const |
Protected Attributes | |
| TR1::shared_ptr < saga::impl::object > | impl_ |
| @ /** These methods are not within API scope */ | |
The monitorable interface is implemented by those SAGA objects which can be monitored, i.e. which have one or more associated metrics.
The interface allows introspection of these metrics, and allows to add callbacks to these metrics which get called if these metrics change. Several methods of this interface reflect similar methods on the metric class
| typedef unsigned int saga::monitorable::cookie_handle |
Brief description starts here.
| saga::monitorable::monitorable | ( | saga::object | rhs | ) |
Brief description starts here.
| saga::monitorable::monitorable | ( | saga::impl::object * | impl | ) | [explicit] |
Brief description starts here.
| saga::monitorable::~monitorable | ( | void | ) | [virtual] |
Brief description starts here.
| saga::impl::monitorable * saga::monitorable::get_monitorable | ( | void | ) | [protected] |
References impl_.
Referenced by add_callback(), get_metric(), list_metrics(), and remove_callback().
| saga::impl::monitorable const * saga::monitorable::get_monitorable | ( | void | ) | const [protected] |
References impl_.
| std::vector< saga::metric > saga::monitorable::list_metrics | ( | void | ) | const [virtual] |
Brief description starts here.
References get_monitorable().
| saga::metric saga::monitorable::get_metric | ( | std::string | name | ) | const [virtual] |
Returns a metric instance, identified by name.
| name | Name of the metric to be returned. |
References get_monitorable().
| saga::monitorable::cookie_handle saga::monitorable::add_callback | ( | std::string | name, |
| saga::callback | cb | ||
| ) | [virtual] |
Adds a callback to the specified metric.
| name | Identifies the metric to which the cb is to be added |
| cb | Reference to callback class instance to be registered |
References get_monitorable().
| void saga::monitorable::remove_callback | ( | std::string | name, |
| cookie_handle | cookie | ||
| ) | [virtual] |
Removes a callback from the specified metric.
| name | Identifies the metric for which cb is to be removed |
| cookie | Identifies the cb to be removed. |
References get_monitorable().
TR1::shared_ptr<saga::impl::object> saga::monitorable::impl_ [protected] |
@ /** These methods are not within API scope */
Referenced by get_monitorable(), and saga::steerable::get_steerable().