> 1) Why this enum should be a part of public API?

Because in future we can have numerous vendors and it's not planned to have `is*()` for each of them

> 2) It is better to add enum name, and use name instead of int below.

it's inconsistent with the code of `ocl::Device` that already exists