Set_Send_Type (CPI-C)
L’appel Set_Send_Type (nom de la fonction cmsst) spécifie comment les données seront envoyées d’ici 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, ce qui indique que seules les données (et aucune information de contrôle) doivent être envoyées.
La valeur send_type affecte tous les appels Send_Data suivants. Il peut être modifié en rééditant 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 soit remplie ou 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 une notification au programme partenaire indiquant que l’état de la conversation pour le programme d’envoi passe à RECEIVE.
CM_SEND_AND_DEALLOCATE
Les données doivent être envoyées immédiatement avec une notification de désallocation.
return_code
Code retourné par 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.Changements d’état
La conversation peut être dans n’importe quel état à l’exception de RESET.
Il n’y a aucun changement 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 les équivalences Send_Data .
Send_Data avec send_type définie sur cette valeur | Équivaut à Send_Data avec send_type défini sur CM_BUFFER_DATA suivi de |
---|---|
CM_SEND_AND_FLUSH | Purge |
CM_SEND_AND_CONFIRM | Confirmer |
CM_SEND_AND_PREP_TO_RECEIVE | Prepare_To_Receive |
CM_SEND_AND_DEALLOCATE | Libérer |