AT-NFC 2.1 (win) AT-NFC kernel set

Macros
HAL Context Management

HAL Context declarations. More...

## Macros
#define | KER_CTX
#define | KER_CTX_SINGLE
#define | KER_CTX_INIT
#define | KER_CTX_TYPE
#define | KER_CTX_PARAM
#define | KER_CTX_SINGLE_PARAM void
#define | KER_CTX_INIT_PARAM
#define | KER_CTX_INIT_DECL()
#define | KER_CTX_INIT_SET()

## Detailed Description

HAL Context declarations.

This declarations can be overridden by terminal application in emv_custom.h

## Macro Definition Documentation

## ◆ KER_CTX

#define KER_CTX

When using KER_CTX_CUSTOM, this needs to be defined as the name of the context data followed by a comma, e.g.:

#define KER_CTX pTerminalContext,

This should always be included in the parameter list when calling a function that has KER_CTX_PARAM defined in the parameter list, e.g.:

ulResult = kerFunction(KER_CTX EMV_TR 100, 0);
KER_CTX
#define KER_CTX
Definition: emv_context.h:31

## ◆ KER_CTX_INIT

#define KER_CTX_INIT

When using KER_CTX_CUSTOM, this needs to be defined as the name of the pointer to obtain context data , e.g.:

#define KER_CTX_INIT ppTerminalContext

This should always be included in the parameter list when calling a function that has KER_CTX_INIT_PARAM defined in the parameter list.

## ◆ KER_CTX_INIT_DECL

#define KER_CTX_INIT_DECL | ( |  | ) |

When using KER_CTX_CUSTOM, this needs to be defined as a statement that declares empty context as local variable , e.g.:

#define KER_CTX_INIT_DECL() void* pTerminalContext = KER_NULL;

## ◆ KER_CTX_INIT_PARAM

#define KER_CTX_INIT_PARAM

When using KER_CTX_CUSTOM, this needs to be defined as the name and type of the context data , e.g.:

#define KER_CTX_INIT_PARAM void** ppTerminalContext

## ◆ KER_CTX_INIT_SET

#define KER_CTX_INIT_SET | ( |  | ) |

When using KER_CTX_CUSTOM, this needs to be defined as a set of statements that assignes allocated context to local variable , e.g.:

#define KER_CTX_INIT_SET() do {if (ppTerminalContext != KER_NULL) pTerminalContext = *ppTerminalContext;}while(0)

## ◆ KER_CTX_PARAM

#define KER_CTX_PARAM

When using KER_CTX_CUSTOM, this needs to be defined as the name and type of the context data followed by a comma , e.g.:

#define KER_CTX_PARAM void* pTerminalContext,

## ◆ KER_CTX_SINGLE

#define KER_CTX_SINGLE

When using KER_CTX_CUSTOM, this needs to be defined as the name of the context data , e.g.:

#define KER_CTX_SINGLE pTerminalContext

This should always be included in the parameter list when calling a function that has KER_CTX_SINGLE_PARAM defined in the parameter list.

## ◆ KER_CTX_SINGLE_PARAM

#define KER_CTX_SINGLE_PARAM void

When using KER_CTX_CUSTOM, this needs to be defined as the name and type of the context data , e.g.:

#define KER_CTX_SINGLE_PARAM void* pTerminalContext

## ◆ KER_CTX_TYPE

#define KER_CTX_TYPE

When using KER_CTX_CUSTOM, this needs to be defined as the type of the context data , e.g.:

#define KER_CTX_TYPE void*