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

Commit 277c0d4a authored by Chris Manton's avatar Chris Manton
Browse files

Enum-ify stack::rfcomm::tPORT_RESULT

Bug: 340960360
Test: m .
Flag: EXEMPT, Mechanical Refactor
Change-Id: I7a05c145125347df87eda9a7194aa8938da74ee1
parent e513f9e0
Loading
Loading
Loading
Loading
+68 −30
Original line number Diff line number Diff line
@@ -26,6 +26,7 @@

#include <cstdint>

#include "include/macros.h"
#include "internal_include/bt_target.h"
#include "types/raw_address.h"

@@ -118,36 +119,73 @@ typedef void(tPORT_CALLBACK)(uint32_t code, uint16_t port_handle);
/*
 * Define port result codes
*/
#define PORT_SUCCESS 0

#define PORT_ERR_BASE 0

#define PORT_UNKNOWN_ERROR (PORT_ERR_BASE + 1)
#define PORT_ALREADY_OPENED (PORT_ERR_BASE + 2)
#define PORT_CMD_PENDING (PORT_ERR_BASE + 3)
#define PORT_APP_NOT_REGISTERED (PORT_ERR_BASE + 4)
#define PORT_NO_MEM (PORT_ERR_BASE + 5)
#define PORT_NO_RESOURCES (PORT_ERR_BASE + 6)
#define PORT_BAD_BD_ADDR (PORT_ERR_BASE + 7)
#define PORT_BAD_HANDLE (PORT_ERR_BASE + 9)
#define PORT_NOT_OPENED (PORT_ERR_BASE + 10)
#define PORT_LINE_ERR (PORT_ERR_BASE + 11)
#define PORT_START_FAILED (PORT_ERR_BASE + 12)
#define PORT_PAR_NEG_FAILED (PORT_ERR_BASE + 13)
#define PORT_PORT_NEG_FAILED (PORT_ERR_BASE + 14)
#define PORT_SEC_FAILED (PORT_ERR_BASE + 15)
#define PORT_PEER_CONNECTION_FAILED (PORT_ERR_BASE + 16)
#define PORT_PEER_FAILED (PORT_ERR_BASE + 17)
#define PORT_PEER_TIMEOUT (PORT_ERR_BASE + 18)
#define PORT_CLOSED (PORT_ERR_BASE + 19)
#define PORT_TX_FULL (PORT_ERR_BASE + 20)
#define PORT_LOCAL_CLOSED (PORT_ERR_BASE + 21)
#define PORT_LOCAL_TIMEOUT (PORT_ERR_BASE + 22)
#define PORT_TX_QUEUE_DISABLED (PORT_ERR_BASE + 23)
#define PORT_PAGE_TIMEOUT (PORT_ERR_BASE + 24)
#define PORT_INVALID_SCN (PORT_ERR_BASE + 25)

#define PORT_ERR_MAX (PORT_ERR_BASE + 26)
typedef enum {
  PORT_SUCCESS = 0,
  PORT_UNKNOWN_ERROR = 1,
  PORT_ALREADY_OPENED = 2,
  PORT_CMD_PENDING = 3,
  PORT_APP_NOT_REGISTERED = 4,
  PORT_NO_MEM = 5,
  PORT_NO_RESOURCES = 6,
  PORT_BAD_BD_ADDR = 7,
  PORT_BAD_HANDLE = 9,
  PORT_NOT_OPENED = 10,
  PORT_LINE_ERR = 11,
  PORT_START_FAILED = 12,
  PORT_PAR_NEG_FAILED = 13,
  PORT_PORT_NEG_FAILED = 14,
  PORT_SEC_FAILED = 15,
  PORT_PEER_CONNECTION_FAILED = 16,
  PORT_PEER_FAILED = 17,
  PORT_PEER_TIMEOUT = 18,
  PORT_CLOSED = 19,
  PORT_TX_FULL = 20,
  PORT_LOCAL_CLOSED = 21,
  PORT_LOCAL_TIMEOUT = 22,
  PORT_TX_QUEUE_DISABLED = 23,
  PORT_PAGE_TIMEOUT = 24,
  PORT_INVALID_SCN = 25,
  PORT_ERR_MAX = 26,
} tPORT_RESULT;

inline std::string port_result_text(const tPORT_RESULT& result) {
  switch (result) {
    CASE_RETURN_STRING(PORT_SUCCESS);
    CASE_RETURN_STRING(PORT_UNKNOWN_ERROR);
    CASE_RETURN_STRING(PORT_ALREADY_OPENED);
    CASE_RETURN_STRING(PORT_CMD_PENDING);
    CASE_RETURN_STRING(PORT_APP_NOT_REGISTERED);
    CASE_RETURN_STRING(PORT_NO_MEM);
    CASE_RETURN_STRING(PORT_NO_RESOURCES);
    CASE_RETURN_STRING(PORT_BAD_BD_ADDR);
    CASE_RETURN_STRING(PORT_BAD_HANDLE);
    CASE_RETURN_STRING(PORT_NOT_OPENED);
    CASE_RETURN_STRING(PORT_LINE_ERR);
    CASE_RETURN_STRING(PORT_START_FAILED);
    CASE_RETURN_STRING(PORT_PAR_NEG_FAILED);
    CASE_RETURN_STRING(PORT_PORT_NEG_FAILED);
    CASE_RETURN_STRING(PORT_SEC_FAILED);
    CASE_RETURN_STRING(PORT_PEER_CONNECTION_FAILED);
    CASE_RETURN_STRING(PORT_PEER_FAILED);
    CASE_RETURN_STRING(PORT_PEER_TIMEOUT);
    CASE_RETURN_STRING(PORT_CLOSED);
    CASE_RETURN_STRING(PORT_TX_FULL);
    CASE_RETURN_STRING(PORT_LOCAL_CLOSED);
    CASE_RETURN_STRING(PORT_LOCAL_TIMEOUT);
    CASE_RETURN_STRING(PORT_TX_QUEUE_DISABLED);
    CASE_RETURN_STRING(PORT_PAGE_TIMEOUT);
    CASE_RETURN_STRING(PORT_INVALID_SCN);
    CASE_RETURN_STRING(PORT_ERR_MAX);
    default:
      break;
  }
  RETURN_UNKNOWN_TYPE_STRING(tPORT_RESULT, result);
}

namespace fmt {
template <>
struct formatter<tPORT_RESULT> : enum_formatter<tPORT_RESULT> {};
}  // namespace fmt

/*****************************************************************************
 *  External Function Declarations