Librairie SensorCurrent

Bonjour à tous,

Bien qu'il existe de très bonne librairie sur la gestion des capteurs de courant, et toujours dans un but de défi et de partage, je vous propose ma librairie :

https://github.com/boby15000/SensorCurrent

N'hésitez pas faire des pulls request pour l'améliorer. Cette lbrairie est loin d'être parfaite malgré son bon fonctionnement.

Bonne journée à tous.

Bonjour,

Merci pour le partage mais je permets une petite remarque quant à l'utilisation du pointeur this ici et ailleurs:

sensorCurrent::sensorCurrent(uint8_t pin_Capt, double sensibilite_Capt, double tensionAlim, double frequence){
    this->_PinSensor = pin_Capt;
    this->_sensibilite_Capt = sensibilite_Capt;
    this->_tensionAlimMilliVolt = tensionAlim*1000; // tension d'alimention en MilliVolt.
    this->_tensionAlimADC = round(tensionAlim*RESOLUTION_ADC)/TENSION_ALIM; // calcul la tension d'alimention en ADC (par défaut 5V soit 1023).
    this->_tensionMoyenneADC = round(this->_tensionAlimADC/2); // calcul la tension moyenne en ADC (par défaut 2.5V soit 512).
    this->_TpsDeMesure = (1000000.0 / max(frequence, FREQUENCE_RESEAU))*2; // Conversion en µs de la période x 2 , pour deux périodes (réseau minimum 50Hz).    
}

Sauf erreur de ma part, les attributs (privés) comme _PinSensor de la classe sensorCurrent sont accessibles directement et sans ambiguïté avec la simple affectation:

_PinSensor = pin_Capt;

NB1: Par expérience, j'ai tendance à n'utiliser le pointeur this que dans des cas bien précis (cf. par exemple: When should I make explicit use of the this pointer? :wink: )

NB2: Par contre, l'adoption du nommage des attributs avec un '_' (underscore prefix) est une très bonne idée pour la lecture du code et surtout lever toute ambiguïté quant à l'accès aux attributs

Donc, dès lors que l'on adopte une règle de nommage (préfixe '_' ou autre pour les attributs d'une classe), il n'y a pas de raison d'utiliser le pointeur this pour garantir:

When to use this pointer in C++?

The 'this' Pointer In C++ | Syntax, Uses & More (+Examples ...
The 'this' pointer in C++ can be used to resolve ambiguity whenever there is a shadowing issue in C++. That is, whenever a local variable or parameter has the same name as a member variable, the 'this' pointer can be used to explicitly refer to the member variable.

A suivre...

Tout d’abord, merci pour l’intérêt que tu portes à ma librairie.
Il est vrai que l’utilisation de "this" peut être omise. Cependant, j’ai personnellement pris l’habitude de l’inclure afin de conserver une certaine cohérence dans mon style de code.
Je n’ai pas de justification particulière à te donner, si ce n’est celle-ci.

Bonne journée à toi !