Partager via


Set_Send_Type (CPI-C)

L’appel Set_Send_Type (nom de fonction cmsst) spécifie la façon dont les données seront envoyées par l’appel Send_Data suivant. Il remplace le type d’envoi par défaut établi par Initialize_Conversation ou Accept_Conversation. Le type d’envoi par défaut est CM_BUFFER_DATA, indiquant que les données uniquement (et aucune information de contrôle) doivent être envoyées.

La valeur send_type affecte tous les appels de Send_Data suivants. Elle peut être modifiée en réédition Set_Send_Type.

Syntaxe

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

Paramètres

conversation_ID
Paramètre fourni. Spécifie l’identificateur de la conversation. La valeur de ce paramètre a été retournée par Initialize_Conversation ou Accept_Conversation.

send_type
Paramètre fourni. Spécifie comment les données sont envoyées par l’appel Send_Data suivant. Les valeurs possibles sont les suivantes :

CM_BUFFER_DATA
Les données pointées par Send_Data sont stockées dans une mémoire tampon jusqu’à ce que la mémoire tampon remplisse ou soit vidée.

CM_SEND_AND_FLUSH
Les données pointées par Send_Data doivent être envoyées immédiatement.

CM_SEND_AND_CONFIRM
Les données doivent être envoyées immédiatement avec une demande de confirmation.

CM_SEND_AND_PREP_TO_RECEIVE
Les données doivent être envoyées immédiatement avec la notification au programme partenaire indiquant que l’état de conversation du programme d’envoi passe à RECEIVE.

CM_SEND_AND_DEALLOCATE
Les données doivent être envoyées immédiatement avec la notification de désallocation.

return_code
Code retourné à partir de cet appel. Les codes de retour valides sont répertoriés plus loin dans cette rubrique.

Codes de retour

CM_OK
Code de retour principal ; l’appel a été exécuté avec succès.

CM_PROGRAM_PARAMETER_CHECK
Code de retour principal ; l’une des opérations suivantes s’est produite :

  • La valeur spécifiée par conversation_ID ou send_type n’est pas valide.

  • Le paramètre send_type est défini sur CM_SEND_AND_CONFIRM, mais le niveau de synchronisation des conversations est défini sur CM_NONE.

    CM_PRODUCT_SPECIFIC_ERROR
    Code de retour principal ; une erreur spécifique au produit s’est produite et a été enregistrée dans le journal des erreurs des produits.

    modifications d’état

    La conversation peut être dans n’importe quel état, à l’exception de RESET.

    Il n’y a aucune modification d’état.

Remarques

Les valeurs send_type qui entraînent l’envoi d’informations supplémentaires avec les données pointées par Send_Data vous permettent d’économiser sur le nombre d’appels émis. Le tableau suivant récapitule Send_Data équivalences.

Send_Data avec send_type défini sur cette valeur Équivaut à Send_Data avec send_type défini sur CM_BUFFER_DATA suivi
CM_SEND_AND_FLUSH de vidage
CM_SEND_AND_CONFIRM Confirmer
CM_SEND_AND_PREP_TO_RECEIVE Prepare_To_Receive
CM_SEND_AND_DEALLOCATE Libérer