Moved ICS related API to the ICSAPI abstract class.
Variants implement all ICS-related functions in a concrete subclass
of ICSAPI, returned from the VariantInfo::icsAPI function.
Variants using the template wrapper framework, should define a static const
bool "hasICS" variable inside their VariantInfo structure, depending on whether
they want to support ICS or not. The framework will create a ICSAPI subclass
automagically when the variable is set to true.
If the "hasICS" variable is set to true, then the variant position should have
a constructor that takes the style12 data, and a PieceFactory specialization.
18 files changed: