arduino / arduino/ArduinoCore-API
[Feature Request] Make Wire library methods virtual
- Lenguaje dominante
- C++
- Estrellas
- 306
- Forks
- 150
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Descripción
I suggest making the public methods of the TwoWire class virtual in order to allow polymorphism when subclassing it.
**Use case**: Have another library that utilizes the Wire library and takes a refrence to a TwoWire instance in constructor. Want to use it on pins without hardware I2C (or other reason for not wanting to use the standard Wire implementation). So I want to pass another class instance that inherits from TwoWire and implements the same methods (but uses software I2C). This does not work with current implementation because of early binding (the base class functions will be called instead of the ones in subclass).
Moved from: https://github.com/arduino/Arduino/issues/8734
Guía de contribución
No hay ninguna guía de contribución indexada para este repositorio
Línea de trabajo
Comienza localizando la declaración de la clase TwoWire en ArduinoCore-API y revisando sus métodos públicos y los usos existentes de estos mediante referencias. Evalúa las implicaciones para la API y la compatibilidad de hacer virtuales esos métodos y, a continuación, verifica que una subclase que implemente los mismos métodos pueda pasarse donde se espera una instancia de TwoWire y reciba las llamadas.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- cpp
- Área
- embedded-iot
- Tipo de issue
- Nueva funcionalidad
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Estado de actividad
- Estancado
- Claridad
- Bastante claro
- Aptitud para principiantes
- 35/100