Condividi tramite


Set_Send_Type (CPI-C)

La chiamata Set_Send_Type (nome funzione cmsst) specifica come i dati verranno inviati dalla chiamata Send_Data successiva. Esegue l'override del tipo di invio predefinito stabilito da Initialize_Conversation o Accept_Conversation. Il tipo di invio predefinito è CM_BUFFER_DATA, che indica che solo i dati (e non devono essere inviate informazioni di controllo).

Il valore send_type influisce su tutte le chiamate di Send_Data successive. Può essere modificato ripubblicando Set_Send_Type.

Sintassi

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

Parametri

conversation_ID
Parametro fornito. Specifica l'identificatore per la conversazione. Il valore di questo parametro è stato restituito da Initialize_Conversation o Accept_Conversation.

send_type
Parametro fornito. Specifica il modo in cui i dati vengono inviati dalla chiamata Send_Data successiva. I valori possibili sono:

CM_BUFFER_DATA
I dati a cui puntano Send_Data vengono archiviati in un buffer finché il buffer non viene riempito o scaricato.

CM_SEND_AND_FLUSH
I dati indicati da Send_Data devono essere inviati immediatamente.

CM_SEND_AND_CONFIRM
I dati devono essere inviati immediatamente con una richiesta di conferma.

CM_SEND_AND_PREP_TO_RECEIVE
I dati devono essere inviati immediatamente insieme alla notifica al programma partner che lo stato della conversazione per il programma di invio viene modificato in RECEIVE.

CM_SEND_AND_DEALLOCATE
I dati devono essere inviati immediatamente insieme alla notifica deallocation.

return_code
Codice restituito da questa chiamata. I codici restituiti validi sono elencati più avanti in questo argomento.

Codici restituiti

CM_OK
Codice restituito primario; la chiamata eseguita correttamente.

CM_PROGRAM_PARAMETER_CHECK
Codice restituito primario; si è verificato uno dei seguenti:

  • Il valore specificato da conversation_ID o send_type non è valido.

  • Il parametro send_type è impostato su CM_SEND_AND_CONFIRM, ma il livello di sincronizzazione delle conversazioni è impostato su CM_NONE.

    CM_PRODUCT_SPECIFIC_ERROR
    Codice restituito primario; si è verificato un errore specifico del prodotto ed è stato registrato nel log degli errori dei prodotti.

    Modifiche dello stato

    La conversazione può essere in qualsiasi stato tranne RESET.

    Non esiste alcuna modifica dello stato.

Commenti

I valori send_type che causano l'invio di informazioni aggiuntive con i dati a cui puntano Send_Data consentono di risparmiare sul numero di chiamate rilasciate. La tabella seguente riepiloga Send_Data equivalenze.

Send_Data con send_type impostato su questo valore Equivale a Send_Data con send_type impostato su CM_BUFFER_DATA seguito da
CM_SEND_AND_FLUSH Svuotamento
CM_SEND_AND_CONFIRM Confirm
CM_SEND_AND_PREP_TO_RECEIVE Prepare_To_Receive
CM_SEND_AND_DEALLOCATE Dealloca