cniIsTerminalAttached

Esta función comprueba si un terminal está conectado a otro nodo mediante un conector. Devuelve un valor entero que especifica si el objeto de terminal especificado está conectado a uno o varios terminales en otros nodos de flujos de mensajes. Puede utilizarla para probar si un mensaje puede propagarse a un terminal. No obstante, no es necesario invocar esta función antes de propagar un mensaje con la función de programa de utilidad cniPropagate. Si se utiliza la función cniIsTerminalAttached, un nodo puede modificar su comportamiento cuando un terminal no está conectado.

Sintaxis

int cniIsTerminalAttached(
  int*          returnCode,
  CciTerminal*  terminalObject);

Parámetros

returnCode
Código de retorno de la función (salida).
terminalObject
Dirección del terminal de entrada o salida que debe comprobarse para un conector conectado (entrada). La dirección se devuelve desde cniCreateOutputTerminal.

Valores de retorno

  • Si el terminal está conectado a otro nodo mediante un conector, se devuelve el valor 1.
  • Si el terminal no está conectado, o se ha producido una anomalía, se devuelve el valor 0.
  • Si se ha producido una anomalía, el valor del parámetro returnCode indica la causa de dicho error.

Ejemplo

  if (terminalObject) {
    if (cniIsTerminalAttached(&rc, terminalObject)) {
      if (rc == CCI_SUCCESS) {
        retvalue = cniPropagate(
                                &rc, 
                                terminalObject, 
                                destinationList, 
                                exceptionList, 
                                message);

Conceptos relacionados
Nodos de entrada definidos por el usuario
Nodos de proceso de mensajes definidos por el usuario
Nodos de salida definidos por el usuario

Tareas relacionadas
Creación de un nodo de entrada en C
Creación de un nodo de proceso de mensajes en C

Referencia relacionada
Funciones de programa de utilidad de nodo de lenguaje C
cniCreateOutputTerminal
cniPropagate