dtmf_dolphin_data.h 1.0 KB

123456789101112131415161718192021222324252627282930313233343536
  1. #pragma once
  2. #include <stddef.h>
  3. #include <stdint.h>
  4. #include <stdbool.h>
  5. #define DTMF_DOLPHIN_MAX_TONE_COUNT 16
  6. typedef enum {
  7. DTMF_DOLPHIN_TONE_BLOCK_DIALER,
  8. DTMF_DOLPHIN_TONE_BLOCK_BLUEBOX,
  9. DTMF_DOLPHIN_TONE_BLOCK_REDBOX_US,
  10. DTMF_DOLPHIN_TONE_BLOCK_REDBOX_UK,
  11. DTMF_DOLPHIN_TONE_BLOCK_REDBOX_CA,
  12. DTMF_DOLPHIN_TONE_BLOCK_MISC,
  13. } DTMFDolphinToneSection;
  14. void dtmf_dolphin_data_set_current_section(DTMFDolphinToneSection section);
  15. DTMFDolphinToneSection dtmf_dolphin_data_get_current_section();
  16. bool dtmf_dolphin_data_get_tone_frequencies(float* freq1, float* freq2, uint8_t row, uint8_t col);
  17. bool dtmf_dolphin_data_get_filter_data(
  18. uint16_t* pulses,
  19. uint16_t* pulse_ms,
  20. uint16_t* gap_ms,
  21. uint8_t row,
  22. uint8_t col);
  23. const char* dtmf_dolphin_data_get_tone_name(uint8_t row, uint8_t col);
  24. const char* dtmf_dolphin_data_get_current_section_name();
  25. void dtmf_dolphin_tone_get_max_pos(uint8_t* max_rows, uint8_t* max_cols, uint8_t* max_span);
  26. uint8_t dtmf_dolphin_get_tone_span(uint8_t row, uint8_t col);