Main Page | Modules | Files | Functions | Code Elements | Data Structures | Deprecated

Customization

Defines

Typedefs

Functions


Define Documentation

#define ALL_CUSTOMIZATIONS   2

Definition at line 26 of file custom.h.

#define GM_LIBRARY   "libgm"

Definition at line 27 of file custom.h.

#define NO_CUSTOMIZATION   0

Definition at line 24 of file custom.h.

#define ONLY_CURRENT_CUSTOMIZATION   1

Definition at line 25 of file custom.h.


Typedef Documentation

typedef int(* CUSTOM_EXIT_ftn_t)(int *, va_list)

Definition at line 29 of file custom.h.


Function Documentation

TCCORE_API int CUSTOM_execute_callbacks ( int *  decision,
const char *  ftn_name,
  ... 
)

This function executes the custom callbacks registered for a particular USER_ or USERSERVICE_ exit

For each custom library registered in the site preference file,

  • Get the corresponding custom function pointer
  • Execute the custom function with the arguments passed
This function is called in each of the USER_ and USERSERVICE_ exit functions.

The va_list has to be expanded in the custom function

This function is called in all the USER_ and USERSERVICE_ functions in user_exits and server_exits.

Parameters:
decision  (O) Whether to execute ALL_CUSTOMIZATIONS, ONLY_CURRENT_CUSTOMIZATION or NO_CUSTOMIZATION
ftn_name  (I) Name of the USER_ or USERSERVICE_ exit. The variables that need to be passed to the custom exit (a custom function pointer)

TCCORE_API int CUSTOM_execute_callbacks_from_library ( int *  decision,
const char *  lib_name,
const char *  ftn_name,
  ... 
)

This function executes custom callbacks registered in a particular library for a particular USER_ or USERSERVICE_ exit

  • Get the corresponding custom function pointer
  • Execute the custom function with the arguments passed
The va_list has to be expaned in the custom function
Parameters:
decision  (O) Whether to execute ALL_CUSTOMIZATIONS, ONLY_CURRENT_CUSTOMIZATION or NO_CUSTOMIZATION
lib_name  (I) Name of the customization context (e.g. GM, Ford, Suzuki, etc..)
ftn_name  (I) Name of the USER_ or USERSERVICE_ exit. The variables that need to be passed to the custom exit (a custom function pointer)

TCCORE_API int CUSTOM_register_callbacks ( void   ) 

This function registers customizations for all the customization contexts registered in the site preference file.

It goes through each custom library registered in the site preference file

  • Loads the custom library and
  • Call the entry point function pointer to register custom exits
The entry point function contains the custom registrations for the required USER_ USERSERVICE_ exits

These custom registrations are done using the ITK CUSTOM_register_exit

This ITK should be called only in USER_preint_module in user_init.c. It should not be called anywhere else.

TCCORE_API int CUSTOM_register_exit ( const char *  context,
const char *  base_ftn_name,
CUSTOM_EXIT_ftn_t  custom_ftn 
)

This function registers a custom exit (a custom function pointer) for a given USER_ and USERSERVICE_ exit function

Parameters:
context  (I) The context in which this custom exit has to be registered. It is the name of the customization library (eg GM, Ford, Suzuki, etc..)
base_ftn_name  (I) Name of the USER_ or USERSERVICE_ exit for which the custom exit has to be registered (e.g. USER_new_dataset_name)
custom_ftn  (I) The name of the custom exit (a custom function pointer)