mirror of
https://github.com/switchbrew/libnx.git
synced 2025-06-21 20:42:44 +02:00
53 lines
1.4 KiB
C
53 lines
1.4 KiB
C
/**
|
|
* @file result.h
|
|
* @brief Switch result code tools
|
|
*/
|
|
#pragma once
|
|
#include "types.h"
|
|
|
|
/// Checks whether a result code indicates success.
|
|
#define R_SUCCEEDED(res) ((res)==0)
|
|
/// Checks whether a result code indicates failure.
|
|
#define R_FAILED(res) ((res)!=0)
|
|
/// Returns the module ID of a result code.
|
|
#define R_MODULE(res) ((res)&0x1FF)
|
|
/// Returns the description of a result code.
|
|
#define R_DESCRIPTION(res) (((res)>>9)&0x1FFF)
|
|
|
|
/// Builds a result code from its constituent components.
|
|
#define MAKERESULT(module,description) \
|
|
((((module)&0x1FF)) | ((description)&0x1FFF)<<9)
|
|
|
|
#define MODULE_LIBNX 345
|
|
enum {
|
|
LIBNX_BADRELOC=1,
|
|
LIBNX_OUTOFMEM,
|
|
LIBNX_ALREADYMAPPED,
|
|
LIBNX_BADGETINFO_STACK,
|
|
LIBNX_BADGETINFO_HEAP,
|
|
LIBNX_BADQUERYMEMORY,
|
|
LIBNX_ALREADYINITIALIZED,
|
|
LIBNX_NOTINITIALIZED,
|
|
LIBNX_NOTFOUND,
|
|
LIBNX_IOERROR,
|
|
LIBNX_BADINPUT,
|
|
LIBNX_BADREENT,
|
|
LIBNX_BUFFERPRODUCER_ERROR,
|
|
LIBNX_HANDLETOOEARLY,
|
|
LIBNX_HEAPALLOCFAILED,
|
|
LIBNX_TOOMANYOVERRIDES,
|
|
LIBNX_PARCELERROR,
|
|
LIBNX_BADGFXINIT,
|
|
LIBNX_APPLETCMDIDNOTFOUND,
|
|
LIBNX_BADAPPLETRECEIVEMESSAGE,
|
|
LIBNX_BADAPPLETNOTIFYRUNNING,
|
|
LIBNX_BADAPPLETGETCURRENTFOCUSSTATE,
|
|
LIBNX_BADAPPLETGETOPERATIONMODE,
|
|
LIBNX_BADAPPLETGETPERFORMANCEMODE,
|
|
LIBNX_BADUSBCOMMSREAD,
|
|
LIBNX_INITFAIL_SM,
|
|
LIBNX_INITFAIL_AM,
|
|
LIBNX_INITFAIL_HID,
|
|
LIBNX_INITFAIL_FS,
|
|
};
|