I want to support multiple mice using one code base.
They do use different HW. They are in different stages of development. I'm not sure what I want to back port/support.
Should I build all variations at the same time - probably to make sure nothing broke for a particular version but I don't necessarily want to test all versions at everytime.
Should I ifdef the HW portion per mouse - seems like the code will get unwieldy quite quickly.
Should I have HW portion figure out which mouse it is running on and then call the appropriate stub routine? If so, then how do I propagate changes between different routines - don't want to do it manually because I know I'll forget something.
Would love to hear ideas.