What about using enum class instead identifiers in global namespace
Old:
enum MouseMode
{
MM_ABSOLUTE = 0,
MM_RELATIVE,
MM_WRAP,
MM_FREE,
MM_INVALID
};
input->SetMouseMode(MM_FREE);
New:
enum class MouseMode
{
Absolute = 0,
Relative,
Wrap,
Free,
Invalid
};
input->SetMouseMode(MouseMode::Free);