# NV::Rules::IRange Class Reference
[NvRules Python garbage-collected classes.]

Range interface. More...

## Public Member Functions
virtual PYRETURN IAction * | action_by_idx (size_t idx)=0
| Get a single action by index.
virtual std::set< long long unsigned > | actions_by_nvtx (const std::vector< std::string > &includes, const std::vector< std::string > &excludes)=0
| Get a set of actions by their NVTX state.
virtual size_t | num_actions ()=0
| Get the number of actions.

## Detailed Description

Represents a serial, ordered stream of execution, such as a CUDA stream. It holds one or more actions that were logically executing in this range

## Member Function Documentation

virtual PYRETURN IAction* NV::Rules::IRange::action_by_idx | ( | size_t | idx | ) | `[pure virtual]`

Get a single IAction by index `idx`.

virtual std::set<long long unsigned> NV::Rules::IRange::actions_by_nvtx | ( | const std::vector< std::string > & | includes,
|  | const std::vector< std::string > & | excludes |
| ) |  |  | `[pure virtual]`

Get a set of indizes to IAction objects by their NVTX state. The state is defined using a series of `includes` and `excludes` .

virtual size_t NV::Rules::IRange::num_actions | ( |  | ) | `[pure virtual]`

Get the number of available actions in this range