Set_Send_Type (CPI-C)

La llamada Set_Send_Type (nombre de función cmsst) especifica cómo enviarán los datos la siguiente llamada Send_Data . Reemplaza el tipo de envío predeterminado establecido por Initialize_Conversation o Accept_Conversation. El tipo de envío predeterminado es CM_BUFFER_DATA, lo que indica que solo se enviarán datos (y ninguna información de control).

El valor de send_type afecta a todas las llamadas Send_Data posteriores. Se puede cambiar reeditando Set_Send_Type.

Sintaxis

  
CM_ENTRY Set_Send_Type(   
  unsigned char FAR *conversation_ID,    
    CM_INT32 FAR *send_type,               
  CM_INT32 FAR *return_code              
);  

Parámetros

conversation_ID
Parámetro proporcionado. Especifica el identificador de la conversación. El valor de este parámetro lo devolvió Initialize_Conversation o Accept_Conversation.

send_type
Parámetro proporcionado. Especifica cómo envían los datos la siguiente llamada Send_Data . Los valores posibles son:

CM_BUFFER_DATA
Los datos a los que apunta Send_Data se almacenan en un búfer hasta que el búfer se rellena o se vacía.

CM_SEND_AND_FLUSH
Los datos a los que apunta Send_Data se enviarán inmediatamente.

CM_SEND_AND_CONFIRM
Los datos se enviarán inmediatamente con una solicitud de confirmación.

CM_SEND_AND_PREP_TO_RECEIVE
Los datos se enviarán inmediatamente junto con la notificación al programa asociado de que el estado de conversación del programa de envío cambia a RECEIVE.

CM_SEND_AND_DEALLOCATE
Los datos se enviarán inmediatamente junto con la notificación de desasignación.

return_code
Código devuelto de esta llamada. Los códigos de retorno válidos se enumeran más adelante en este tema.

Códigos de retorno

CM_OK
Código de retorno principal; la llamada se ejecutó correctamente.

CM_PROGRAM_PARAMETER_CHECK
Código de retorno principal; se produjo una de las siguientes acciones:

  • El valor especificado por conversation_ID o send_type no es válido.

  • El parámetro send_type se establece en CM_SEND_AND_CONFIRM, pero el nivel de sincronización de conversaciones se establece en CM_NONE.

    CM_PRODUCT_SPECIFIC_ERROR
    Código de retorno principal; se produjo un error específico del producto y se ha registrado en el registro de errores de productos.

    Cambios de estado

    La conversación puede estar en cualquier estado excepto RESET.

    No hay ningún cambio de estado.

Comentarios

Los valores de send_type que hacen que se envíe información adicional con los datos a los que apunta Send_Data le permiten ahorrar en el número de llamadas emitidas. En la tabla siguiente se resumen Send_Data equivalencias.

Send_Data con send_type establecido en este valor Equivale a Send_Data con send_type establecido en CM_BUFFER_DATA seguido de
CM_SEND_AND_FLUSH Vaciar
CM_SEND_AND_CONFIRM Confirm
CM_SEND_AND_PREP_TO_RECEIVE Prepare_To_Receive
CM_SEND_AND_DEALLOCATE Desasignar