subghz_threshold_rssi.h 1.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. #pragma once
  2. #include <furi.h>
  3. typedef struct {
  4. float rssi; /**< Current RSSI */
  5. bool is_above; /**< Exceeded threshold level */
  6. } SubGhzThresholdRssiData;
  7. typedef struct SubGhzThresholdRssi SubGhzThresholdRssi;
  8. /** Allocate SubGhzThresholdRssi
  9. *
  10. * @return SubGhzThresholdRssi*
  11. */
  12. SubGhzThresholdRssi* subghz_threshold_rssi_alloc(void);
  13. /** Free SubGhzThresholdRssi
  14. *
  15. * @param instance Pointer to a SubGhzThresholdRssi
  16. */
  17. void subghz_threshold_rssi_free(SubGhzThresholdRssi* instance);
  18. /** Set threshold
  19. *
  20. * @param instance Pointer to a SubGhzThresholdRssi
  21. * @param rssi RSSI threshold
  22. */
  23. void subghz_threshold_rssi_set(SubGhzThresholdRssi* instance, float rssi);
  24. /** Get threshold
  25. *
  26. * @param instance Pointer to a SubGhzThresholdRssi
  27. * @return float RSSI threshold
  28. */
  29. float subghz_threshold_rssi_get(SubGhzThresholdRssi* instance);
  30. /** Check threshold
  31. *
  32. * @param instance Pointer to a SubGhzThresholdRssi
  33. * @return SubGhzThresholdRssiData
  34. */
  35. SubGhzThresholdRssiData subghz_threshold_get_rssi_data(SubGhzThresholdRssi* instance);