Jump to content

[C/C++] Teilweise unterschiedliche Typen bei "get..." und "set..threshold"


Recommended Posts

Hallo zusammen,

 

mir ist aufgefallen, dass es z.B. beim Distance-IR die Methoden gibt:

int distance_ir_get_distance(DistanceIR *distance_ir, uint16_t *ret_distance);
int distance_ir_set_distance_callback_threshold(DistanceIR *distance_ir, char option, int16_t min, int16_t max);

 

wobei get_distance einen uint16 liefert, aber set_threshold einen int16 als Parameter erwartet. Bei anderen Sensoren nimmt die set_threshold doch den gleichen Typ wie die "get_value" Funktion, z. B. beim Moisture-Sensor und Sound-Intensity-Bricklet.

 

Ist das hier ein Copy/Paste-Fehler oder hat das einen bestimmten Hintergrund?

 

Da macht mir etwas Probleme, die Sensoren einheitlich zu verwenden, wenn die Typen nicht stimmig sind.

Link zu diesem Kommentar
Share on other sites

  • 2 weeks later...

Das ist ein Copy-Paste Fehler. Der betrifft mehrere Bricklets. Aber der gültige Werte Bereich für min/max ist bei allen nicht beeinträchtigt. So dass wir die Stabilität der API höher gewertet haben als die Korrektheit der Typen.

 

Als ich das noch mal durchgegangen bin ist mir allerdings aufgefallen, dass das für das Analog In Bricklet (2.0) nicht stimmt und nicht der vollständige Messbereich als min/max angegeben werden kann.

 

Daher haben wir uns jetzt entschieden alle betroffenen Bricklets zu korrigieren.

Link zu diesem Kommentar
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Gast
Reply to this topic...

×   Du hast formatierten Text eingefügt.   Formatierung jetzt entfernen

  Only 75 emoji are allowed.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Clear editor

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

×
×
  • Neu erstellen...