Function pointers are super-slow on some architectures. I don't think it'sa particularly good solution unless the functions you're calling do a lot of work.
If you're working on very specific platforms you can likely determinesuch things at compile time. Alternative approaches are distributing multiple
executables or using template parameterization of whole engines.