Make this a class.

Clang complains when this is a struct since the macro expects a class.
We fix this by making it a class and make the members public like the
struct for it to work.