#include <apibase.h>

This helper class is a work-around for an MSVC bug in the type std::enable_if<(A & B) != FLAGS::NONE, T>. If A & B is not zero, EnableIfFlag<T, FLAGS, A, B, true> has a type alias member pointing to T, otherwise there is no such type alias member.
| T | Type used for the result. |
| FLAGS | Type of the flags. |
| A | First flag value. |
| B | Second flag value. |