# WMErrCode

## C Specification

      #include <nitro/wm.h>

      typedef enum WMErrCode
      {
          WM_ERRCODE_SUCCESS              = 0 ,
          WM_ERRCODE_FAILED               = 1 ,
          WM_ERRCODE_OPERATING            = 2 ,
          WM_ERRCODE_ILLEGAL_STATE        = 3 ,
          WM_ERRCODE_WM_DISABLE           = 4 ,
          WM_ERRCODE_NO_KEYSET            = 5 ,
          WM_ERRCODE_NO_DATASET           = 5 ,
          WM_ERRCODE_INVALID_PARAM        = 6 ,
          WM_ERRCODE_NO_CHILD             = 7 ,
          WM_ERRCODE_FIFO_ERROR           = 8 ,
          WM_ERRCODE_TIMEOUT              = 9 ,
          WM_ERRCODE_SEND_QUEUE_FULL      = 10 ,
          WM_ERRCODE_NO_ENTRY             = 11 ,
          WM_ERRCODE_OVER_MAX_ENTRY       = 12 ,
          WM_ERRCODE_INVALID_POLLBITMAP   = 13 ,
          WM_ERRCODE_NO_DATA              = 14 ,
          WM_ERRCODE_SEND_FAILED          = 15 ,

      } WMErrCode;

## Description

This enumerated type indicates process results that are common to WM operation functions. This enumerated type can also be used jointly as the `errcode` member of structures that are passed to the callback functions of asynchronous process functions.

## Arguments

`WM_ERRCODE_SUCCESS` | Indicates that the process completed normally.
`WM_ERRCODE_FAILED` | Generated if an error response is returned from the wireless firmware.
`WM_ERRCODE_OPERATING` | Indicates that an asynchronous process has begun normally.
`WM_ERRCODE_ILLEGAL_STATE` | Indicates that the process could not run because of the internal state of the WM.
`WM_ERRCODE_WM_DISABLE` | Indicates that a process can not run because the WM has not yet been initialized.
`WM_ERRCODE_NO_KEYSET` | Indicates that a keyset that must be read is not shared.
`WM_ERRCODE_NO_DATASET` | Indicates that a dataset that must be read is not shared.
`WM_ERRCODE_INVALID_PARAM` | Is generated if a parameter specified in a function is invalid.
`WM_ERRCODE_NO_CHILD` | Indicates that there is no party to communicate with as a parent because no children are connected.
`WM_ERRCODE_FIFO_ERROR` | Generated when communication to ARM7 via FIFO failed.
`WM_ERRCODE_TIMEOUT` | Generated when the check response of the MP communication cannot be received for a certain period of time.
`WM_ERRCODE_SEND_QUEUE_FULL` | Indicates that the transmission failed because the port's send queue was full.
`WM_ERRCODE_NO_ENTRY` | Indicates that the connection was not permitted by the parent because the entry was already terminated when the child attempted the connection.
`WM_ERRCODE_OVER_MAX_ENTRY` | Indicates that the connection was not permitted by the parent because it exceeds the maximum number of children to be connected.
`WM_ERRCODE_INVALID_POLLBITMAP` | Indicates that self was not included in poll bitmap that the child has received during the MP communication.
`WM_ERRCODE_NO_DATA` | Indicates that the data could not be found. Returned when the header was not included in the MP communication that the child received.
`WM_ERRCODE_SEND_FAILED` | Indicates that the parent and child send/receive sequence in MP communication failed. Resend occurs automatically.

## Revision History

11/02/2004 Added new argument
08/11/2004 Added description for the entry control specifications
08/11/2004 Added description for the WM specifications
07/29/2004 Initial Version