Due to a bug in MSVC, an enum value cannot be accessed out of a template parameter until the template class opens. In order for templated classes to access the dimension of an image template parameter in defining their own dimension, this class is needed as a work-around.