Pin
Typedefs | Functions
PIN callbacks manipulation API

Typedefs

typedef COMPLEX_CALLBACKVAL_BASE * PIN_CALLBACK
 

Functions

const PIN_CALLBACK PIN_CALLBACK_INVALID (0)
 
VOID CALLBACK_SetExecutionOrder (PIN_CALLBACK callback, CALL_ORDER order)
 
CALL_ORDER CALLBACK_GetExecutionOrder (PIN_CALLBACK callback)
 

Detailed Description

This API allows the user to retrieve and modify properties of the registered callback functions that were registered in Pin.

To identify the callback on which the manipulation is done, the user has to provide the API function with a PIN_CALLBACK object. This PIN_CALLBACK object is returned from any of the callback registering functions (e.g. PIN_AddFiniFunction ()) as a return value.

Typedef Documentation

◆ PIN_CALLBACK

typedef COMPLEX_CALLBACKVAL_BASE* PIN_CALLBACK

Container for a PIN callback

Function Documentation

◆ CALLBACK_GetExecutionOrder()

CALL_ORDER CALLBACK_GetExecutionOrder ( PIN_CALLBACK  callback)

Gets the execution order of a registered callback function. See CALL_ORDER. The the lower the order, the sooner it will be called relative to other similar callbacks

Parameters
callbackRegistered Callback function returned from *_Add*Function()
Returns
CALL_ORDER The current order value of the callback
Availability:
Mode: JIT
O/S: Linux, Windows & macOS*
CPU: All

◆ CALLBACK_SetExecutionOrder()

VOID CALLBACK_SetExecutionOrder ( PIN_CALLBACK  callback,
CALL_ORDER  order 
)

Sets the execution order of a registered callback function. See CALL_ORDER. The the lower the order, the sooner it will be called relative to other similar callbacks.

Parameters
callbackRegistered Callback function returned from *_Add*Function()
orderNew order to assign to the callback (relative to the other callbacks). See CALL_ORDER for usage details.
Note
The pin client lock is obtained during the call of this API.
Availability:
Mode: JIT
O/S: Linux, Windows & macOS*
CPU: All

◆ PIN_CALLBACK_INVALID()

const PIN_CALLBACK PIN_CALLBACK_INVALID ( )

Invalid value for PIN callback