La función cciOutputMessageCallback se puede registrar como una devolución de llamada y se invoca cada vez que un nodo de salida envía un mensaje.
La función cciOutputMessageCallback se invoca para cada mensaje de salida que se envía satisfactoriamente en el grupo de ejecución o flujo de mensajes en el que se ha registrado la llamada de devolución si el estado de la salida de usuario es activo. Si el nodo proporciona información de WrittenDestination en el árbol Entorno local, la devolución de llamada se invoca después de que se crea esta información.
La llamada de devolución se registra proporcionando un puntero a la función como el campo iFpOutputMessageCallback de la estructura CCI_UE_VFT que se pasa a cciRegisterUserExit. El campo iFpOutputMessageCallback se añadió en la estructura CCI_UE_VFT de versión 2.
Cuando implemente esta devolución de llamada, compruebe el tipo de nodo utilizando cciGetNodeType antes de realizar ninguna operación específica del nodo.
typedef void (*cciOutputMessageCallback) (
CciDataContext* userContext,
CciMessage* message,
CciMessage* localEnvironment,
CciMessage* exceptionList,
CciMessage* environment,
CciNode* node);
Puede actualizar el cuerpo del mensaje. No obstante, debido a que esta devolución de llamada se invoca después de que el mensaje se ha enviado al transporte, los cambios no aparecen en ese mensaje. Los cambios sólo son visibles a los nodos que están conectados en sentido descendente del nodo de salida. La actualización del mensaje puede afectar al rendimiento, en particular si el árbol de mensaje no se cambiaría, en otras circunstancias, en el flujo de mensajes.
Ninguno.
void myOutputMessageCallback(
CciDataContext* userContext,
CciMessage* message,
CciMessage* localEnvironment,
CciMessage* exceptionList,
CciMessage* environment,
CciNode* node){
}