Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 52298692 authored by Chris Manton's avatar Chris Manton
Browse files

Enum-ify bta/include/bta_ag_api::tBTA_AG_RES

Also add bta_ag_result_text

Towards readable and loggable code

Bug: 163134718
Tag: #refactor
Test: gd/cert/run --host

Change-Id: I192fd3060cbf0ab739af37b8ebda29edab87c3c5
parent df83ef27
Loading
Loading
Loading
Loading
+68 −31
Original line number Original line Diff line number Diff line
@@ -120,37 +120,74 @@ typedef uint8_t tBTA_AG_STATUS;


#define BTA_AG_HANDLE_SCO_NO_CHANGE 0xFFFF
#define BTA_AG_HANDLE_SCO_NO_CHANGE 0xFFFF


#define CASE_RETURN_TEXT(code) \
  case code:                   \
    return #code

typedef enum : uint8_t {
  /* AG result codes used with BTA_AgResult */
  /* AG result codes used with BTA_AgResult */
#define BTA_AG_SPK_RES 0         /* Update speaker volume */
  BTA_AG_SPK_RES = 0,         /* Update speaker volume */
#define BTA_AG_MIC_RES 1         /* Update microphone volume */
  BTA_AG_MIC_RES = 1,         /* Update microphone volume */
#define BTA_AG_INBAND_RING_RES 2 /* Update inband ring state */
  BTA_AG_INBAND_RING_RES = 2, /* Update inband ring state */
#define BTA_AG_CIND_RES 3        /* Send indicator response for AT+CIND */
  BTA_AG_CIND_RES = 3,        /* Send indicator response for AT+CIND */
#define BTA_AG_BINP_RES 4     /* Send phone number for voice tag for AT+BINP */
  BTA_AG_BINP_RES = 4,        /* Send phone number for voice tag for AT+BINP */
#define BTA_AG_IND_RES 5      /* Update an indicator value */
  BTA_AG_IND_RES = 5,         /* Update an indicator value */
#define BTA_AG_BVRA_RES 6     /* Update voice recognition state */
  BTA_AG_BVRA_RES = 6,        /* Update voice recognition state */
#define BTA_AG_CNUM_RES 7     /* Send subscriber number response for AT+CNUM */
  BTA_AG_CNUM_RES = 7,        /* Send subscriber number response for AT+CNUM */
#define BTA_AG_BTRH_RES 8     /* Send CCAP incoming call hold */
  BTA_AG_BTRH_RES = 8,        /* Send CCAP incoming call hold */
#define BTA_AG_CLCC_RES 9     /* Query list of calls */
  BTA_AG_CLCC_RES = 9,        /* Query list of calls */
#define BTA_AG_COPS_RES 10    /* Read network operator */
  BTA_AG_COPS_RES = 10,       /* Read network operator */
#define BTA_AG_IN_CALL_RES 11 /* Indicate incoming phone call */
  BTA_AG_IN_CALL_RES = 11,    /* Indicate incoming phone call */
#define BTA_AG_IN_CALL_CONN_RES 12  /* Incoming phone call connected */
  BTA_AG_IN_CALL_CONN_RES = 12,  /* Incoming phone call connected */
#define BTA_AG_CALL_WAIT_RES 13     /* Call waiting notification */
  BTA_AG_CALL_WAIT_RES = 13,     /* Call waiting notification */
#define BTA_AG_OUT_CALL_ORIG_RES 14 /* Outgoing phone call origination */
  BTA_AG_OUT_CALL_ORIG_RES = 14, /* Outgoing phone call origination */


  /* Outgoing phone call alerting remote party */
  /* Outgoing phone call alerting remote party */
#define BTA_AG_OUT_CALL_ALERT_RES 15
  BTA_AG_OUT_CALL_ALERT_RES = 15,
#define BTA_AG_OUT_CALL_CONN_RES 16 /* Outgoing phone call connected */
  BTA_AG_OUT_CALL_CONN_RES = 16, /* Outgoing phone call connected */


/* Incoming/outgoing 3-way canceled before connected */
  /* Incoming/outgoing =  3,-way canceled before connected */
#define BTA_AG_CALL_CANCEL_RES 17
  BTA_AG_CALL_CANCEL_RES = 17,
#define BTA_AG_END_CALL_RES 18     /* End call */
  BTA_AG_END_CALL_RES = 18,      /* End call */
#define BTA_AG_IN_CALL_HELD_RES 19 /* Incoming call held */
  BTA_AG_IN_CALL_HELD_RES = 19,  /* Incoming call held */
#define BTA_AG_UNAT_RES 20         /* Response to unknown AT command event */
  BTA_AG_UNAT_RES = 20,          /* Response to unknown AT command event */
#define BTA_AG_MULTI_CALL_RES 21   /* SLC at three way call */
  BTA_AG_MULTI_CALL_RES = 21,    /* SLC at three way call */
#define BTA_AG_BIND_RES 22         /* Activate/Deactivate HF indicator */
  BTA_AG_BIND_RES = 22,          /* Activate/Deactivate HF indicator */
#define BTA_AG_IND_RES_ON_DEMAND 33 /* Update an indicator value forcible */
  BTA_AG_IND_RES_ON_DEMAND = 33, /* Update an indicator value forcible */

  BTA_AG_UNKNOWN = 0xff,         // Should be unset
typedef uint8_t tBTA_AG_RES;
} tBTA_AG_RES;

inline std::string bta_ag_result_text(const tBTA_AG_RES& result) {
  switch (result) {
    CASE_RETURN_TEXT(BTA_AG_SPK_RES);
    CASE_RETURN_TEXT(BTA_AG_MIC_RES);
    CASE_RETURN_TEXT(BTA_AG_INBAND_RING_RES);
    CASE_RETURN_TEXT(BTA_AG_CIND_RES);
    CASE_RETURN_TEXT(BTA_AG_BINP_RES);
    CASE_RETURN_TEXT(BTA_AG_IND_RES);
    CASE_RETURN_TEXT(BTA_AG_BVRA_RES);
    CASE_RETURN_TEXT(BTA_AG_CNUM_RES);
    CASE_RETURN_TEXT(BTA_AG_BTRH_RES);
    CASE_RETURN_TEXT(BTA_AG_CLCC_RES);
    CASE_RETURN_TEXT(BTA_AG_COPS_RES);
    CASE_RETURN_TEXT(BTA_AG_IN_CALL_RES);
    CASE_RETURN_TEXT(BTA_AG_IN_CALL_CONN_RES);
    CASE_RETURN_TEXT(BTA_AG_CALL_WAIT_RES);
    CASE_RETURN_TEXT(BTA_AG_OUT_CALL_ORIG_RES);
    CASE_RETURN_TEXT(BTA_AG_OUT_CALL_ALERT_RES);
    CASE_RETURN_TEXT(BTA_AG_OUT_CALL_CONN_RES);
    CASE_RETURN_TEXT(BTA_AG_CALL_CANCEL_RES);
    CASE_RETURN_TEXT(BTA_AG_END_CALL_RES);
    CASE_RETURN_TEXT(BTA_AG_IN_CALL_HELD_RES);
    CASE_RETURN_TEXT(BTA_AG_UNAT_RES);
    CASE_RETURN_TEXT(BTA_AG_MULTI_CALL_RES);
    CASE_RETURN_TEXT(BTA_AG_BIND_RES);
    CASE_RETURN_TEXT(BTA_AG_IND_RES_ON_DEMAND);
    CASE_RETURN_TEXT(BTA_AG_UNKNOWN);
    default:
      return std::string("UNKNOWN");
  }
}


/* HFP peer features */
/* HFP peer features */
#define BTA_AG_PEER_FEAT_ECNR 0x0001   /* Echo cancellation/noise reduction */
#define BTA_AG_PEER_FEAT_ECNR 0x0001   /* Echo cancellation/noise reduction */
+1 −1
Original line number Original line Diff line number Diff line
@@ -1111,7 +1111,7 @@ bt_status_t HeadsetInterface::PhoneStateChange(
            << ", call_state=" << dump_hf_call_state(call_setup_state)
            << ", call_state=" << dump_hf_call_state(call_setup_state)
            << ", prev_call_state="
            << ", prev_call_state="
            << dump_hf_call_state(control_block.call_setup_state);
            << dump_hf_call_state(control_block.call_setup_state);
  tBTA_AG_RES res = 0xFF;
  tBTA_AG_RES res = BTA_AG_UNKNOWN;
  bt_status_t status = BT_STATUS_SUCCESS;
  bt_status_t status = BT_STATUS_SUCCESS;
  bool active_call_updated = false;
  bool active_call_updated = false;