# WMErrCode

## Definition

  `#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;

## Elements

`WM_ERRCODE_SUCCESS` | The process completed normally.
`WM_ERRCODE_FAILED` | An error response was returned from the wireless firmware.
`WM_ERRCODE_OPERATING` | An asynchronous process has begun normally.
`WM_ERRCODE_ILLEGAL_STATE` | The process could not run because of the internal state of the WM.
`WM_ERRCODE_WM_DISABLE` | A process could not run because the WM has not yet been initialized. Also, this value is returned when attempting to execute this process on a system that has had wireless communications prohibited.
`WM_ERRCODE_NO_KEYSET` | When using key sharing, there is no keyset that has completed sharing that can be read. Do not treat this as a fatal error since communications continue normally.
`WM_ERRCODE_NO_DATASET` | When using data sharing, there is no data set that has completed sharing that can be read. Do not treat this as a fatal error since communications continue normally.
`WM_ERRCODE_INVALID_PARAM` | A parameter specified in a function is invalid.
`WM_ERRCODE_NO_CHILD` | There is no party to communicate with as a parent because no children are connected. Do not treat this as a fatal error since processing continues normally.
`WM_ERRCODE_FIFO_ERROR` | Communication to ARM7 through FIFO failed, and the working FIFO in the ARM7 overflowed.
`WM_ERRCODE_TIMEOUT` | The check response of the MP communication cannot be received for a certain period of time. Do not treat this error as fatal because communications continue normally.
`WM_ERRCODE_SEND_QUEUE_FULL` | The transmission failed because the port's send queue was full. Do not treat this error as fatal because communications continue normally.
`WM_ERRCODE_NO_ENTRY` | 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` | The connection was not permitted by the parent because it exceeds the maximum number of children to be connected. During a callback for `WM_StartConnect`, this error code may be issued after notification of `WM_ERRCODE_SUCCESS` is made.
`WM_ERRCODE_INVALID_POLLBITMAP` | The local host (the child) was not included in the poll bitmap that the child received during the MP communications. Do not treat this error as fatal because communications continue normally.
`WM_ERRCODE_NO_DATA` | The data could not be found. Returned when even the header was not included in the MP communication that the child received. In the current implementation, this error code is not returned as long as the library is running as expected.
`WM_ERRCODE_SEND_FAILED` | The parent and child send/receive sequence in MP communication failed. Do not treat this error as fatal because communications continue normally.

## 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.

These values include some that should be handled as fatal errors and some that should not. To read about the error codes received by various functions and callbacks and about handling the error codes, see "Error Codes Returned by the Wireless Communications Library" list in A Description of the Wireless Communications Library.

## Revision History

2007/11/13 Added descriptions for error codes that should not be handled as fatal errors.
2007/07/18 Added text mentioning the Wireless Communications library description.
2004/11/02 Added text to go along with the additions to specifications.
2004/08/20 Added text to go along with the additions to the Entry control specifications.
2004/08/11 Added text to go along with the additions to the WM specifications.
2004/07/29 Initial version.

CONFIDENTIAL