VCSAgRegister
void
VCSAgRegister(const char *notify_res_name,
const char *res_name,
const char *attr_name);
This primitive requests that the VCS agent framework notify the resource notify_res_name when the value of the attribute attr_name of the resource res_name is modified. The notification is made by calling the attr_changed entry point for notify_res_name. Note that notify_res_name can be the same as res_name. This primitive can be called from any entry point, but it is useful only when the attr_changed entry point is implemented.
For example:
#include "VCSAgApi.h"
...
void res_open(const char *res_name, void **attr_val) {
// Register to get notified when the
// "CriticalAttr" of this resource is modified.
VCSAgRegister(res_name, res_name, "CriticalAttr");
// Register to get notified when the
// "CriticalAttr" of "CentralRes" is modified.
VCSAgRegister(res_name, "CentralRes", "CriticalAttr");
// Register to get notified when the
// "CriticalAttr" of another resource is modified.
// It is assumed that the name of the other resource
// is given as the first ArgList attribute.
VCSAgRegister(res_name, (const char *)attr_val[0],
"CriticalAttr");
}
|