You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The current implementation of Mode Select Cluster has some problems:
Over-designed interfaces and iterators that have a lot of virtuals on them, that are not necessary. This results in 24K increase in flash alone, without any of the application bits at all involved here. That is concerning.
Went through a lot of work to design a SupportedModesManager interface, yet the cluster impl only permits a specific concrete realization of that interface, which defeats the point of that interface.
Proposed Solution
This can be done much simpler: creation of a fairly simple 'data provider' interface that hides away the actual list of modes, as well as the methods to interact with that data feels like the appropriate solution here. This would hide away the storage specifics of that data (letting the application decide it), making it more flexible, as well as reducing the complexity of the overall solution.
A suggested provider interface (that would be registered with the cluster impl) could look like this:
Problem
The current implementation of Mode Select Cluster has some problems:
Proposed Solution
This can be done much simpler: creation of a fairly simple 'data provider' interface that hides away the actual list of modes, as well as the methods to interact with that data feels like the appropriate solution here. This would hide away the storage specifics of that data (letting the application decide it), making it more flexible, as well as reducing the complexity of the overall solution.
A suggested provider interface (that would be registered with the cluster impl) could look like this:
This approximates very closely existing provider interfaces (like GroupDataProvider).
The text was updated successfully, but these errors were encountered: