DitsPutForwardMonSetupHandler - Put a routine to be invoked when another a forward monitor path is being

Function

Put a routine to be invoked when another a forward monitor path is being setup.

Description

This function inserts a function which will be invoked whenever another task is attempting forward monitor parameters from this task to another task and the path is being established. It allows the current task to modify the space to be allowed for the messages to that task.

Language

C

Call

(void) = DitsPutForwardMonSetupHandler(routine,client_data, old_routine,old_c_data,status)

Parameters

(">" input, "!" modified, "W" workspace, "<" output)

>routineDitsForwardMonSetupRoutineTypeThe new routine.
>client_dataVoid *Passed directly to the routine as its client_data argument.
!old_routineDitsForwardMonSetupRoutineType *If non-null, return the previous connect handler address here. This address may be null.
!old_c_dataVoid **If non-null, return the previous connect handlers client data here.
!statusStatusType *Modified status.

Function Prototypes Used

typedef DVOUD (*DitsForwardMonSetupRoutineType)( DVOIDP client_data, DCONSTV char * taskname, DCONSTV char * action, DCONSTV SdsIdType parameters, int * bufferSize, StatusType * status);

Parameters

(">" input, "!" modified, "W" workspace, "<" output)

>client_datavoid *The value passed to DitsPutForwardMonSetupHandler().
>tasknameconst char *The name of the task to forward monitor is directed to.
>actionconst char *The name of the action the forward monitor is directed to.
>parametersSdsIdType arginArgument to the message. The first item is the target task name, the second the target action and any subsequent items are the names of parameters to be monitored.
!bufferSizeint *On input, the number of bytes being suggested by the monitor function to allow space for writing messages into the target task (normally the size of the largest parameters + 1000. To override this value, set the new value here.
!statusStatusType *Modified status.

Include files

DitsSys.h

External functions used

None

External values used

DitsTask

Prior requirements

DitsAppInit should have been called.

See Also

The Dits Specification Document, DitsPutConnectHandler(3), DitsInitiateMessage(3).

Support

Tony Farrell, AAO

Click here for the DRAMA home page and here for the AAO home page.

 For more information, contact tjf@aao.gov.au