# NV::Rules::IEvaluator Class Reference
[NvRules Tool lifetime-managed classes.]

Evaluator interface. More...

Inherits NV::Rules::IBaseContext.

## Public Member Functions
virtual void | require_metric (const char *metric)=0
virtual void | require_rule (const char *rule)=0

## Detailed Description

The evaluator is used during rule setup to pass information about rule dependencies to the tool. For most cases, its Python wrapper functions can be used instead for convenience.

## Member Function Documentation

virtual void NV::Rules::IEvaluator::require_metric | ( | const char * | metric | ) | `[pure virtual]`

Define that the specified `metric` must have been collected in order for the calling rule to be applied.

virtual void NV::Rules::IEvaluator::require_rule | ( | const char * | rule | ) | `[pure virtual]`

Define that the specified `rule` must be available and ready to be applied in order for the calling rule to be applied itself.