ar_set_isr_function

int ar_set_isr_function (int board, void * function);

Purpose

This function allows the host application to define a custom interrupt service routine to be referenced by the operating system-specific hardware interrupt initialization.  It assigns the host-supplied function pointer to an array of pointers indexed by the board parameter value.  The function referenced by this pointer is invoked from the internal function cei_utl_interrupt_handler() instead of executing the default API-supplied "flush the h/w interrupt queue" processing.


The function declaration for the supplied interrupt service routine should be defined as follows for the respective operating system:

Any Windows:

   void _stdcall host_interrupt_handler (int deviceIndex );

Any Linux distribution:

   void host_interrupt_handler (int deviceIndex );

Any VxWorks or Integrity distribution:

   void host_interrupt_handler (int deviceIndex, unsigned int data );

 

Parameters

Input

Name

Type

Description

board

int

(input) Device Number of the board to reference, (valid range is 0-15).

function

void *

(input) Function pointer to the host specified interrupt service routine.

Return Value

Name

Type

Description

status

int

status of the function call, with valid values of:
ARS_NORMAL         Success.                    
ARS_INVBOARD     The board parameter value is invalid.
ARS_INVARG         A NULL function reference was supplied.

References

Interrupt Functions
Alphabetical Function Index
Hierarchical Function Index

CEI-x30 API Description