use integer enum instead of enum class for VS2010 backward compatibility