Set_Send_Type (CPI-C)
Set_Send_Type呼叫 (函式名稱cmsst) 指定下一個Send_Data呼叫傳送資料的方式。 它會覆寫 Initialize_Conversation 或 Accept_Conversation所建立的預設傳送類型。 預設傳送類型為 CM_BUFFER_DATA,表示只 (資料,而且不會傳送任何控制資訊) 。
send_type值會影響所有後續Send_Data呼叫。 您可以藉由重新發出 Set_Send_Type來變更。
語法
CM_ENTRY Set_Send_Type(
unsigned char FAR *conversation_ID,
CM_INT32 FAR *send_type,
CM_INT32 FAR *return_code
);
參數
conversation_ID
提供的參數。 指定交談的識別碼。 此參數的值是由 Initialize_Conversation 或 Accept_Conversation傳回。
send_type
提供的參數。 指定下一個 Send_Data 呼叫傳送資料的方式。 可能的值包括:
CM_BUFFER_DATA
Send_Data所指向的資料會儲存在緩衝區中,直到緩衝區填滿或排清為止。
CM_SEND_AND_FLUSH
Send_Data所指向的資料會立即傳送。
CM_SEND_AND_CONFIRM
資料會立即與確認要求一起傳送。
CM_SEND_AND_PREP_TO_RECEIVE
資料會連同通知立即傳送給合作夥伴計畫,讓傳送程式的交談狀態變更為 RECEIVE。
CM_SEND_AND_DEALLOCATE
資料會連同解除配置通知立即傳送。
return_code
從這個呼叫傳回的程式碼。 本主題稍後會列出有效的傳回碼。
傳回碼
CM_OK
主要傳回碼;已成功執行呼叫。
CM_PROGRAM_PARAMETER_CHECK
主要傳回碼;發生下列其中一項:
conversation_ID或send_type所指定的值無效。
send_type參數會設定為 CM_SEND_AND_CONFIRM,但交談同步處理層級會設定為 CM_NONE。
CM_PRODUCT_SPECIFIC_ERROR
主要傳回碼;發生產品特定的錯誤,並已記錄在產品錯誤記錄檔中。狀態變更
交談可以處於 RESET 以外的任何狀態。
沒有狀態變更。
備註
send_type值,這些值會讓其他資訊隨著Send_Data所指向的資料一起傳送,讓您省去發出的呼叫數目。 下表摘要說明 Send_Data 等價。
Send_Data設定為此值的 send_type | 等於 Send_Data,send_type 設定為 CM_BUFFER_DATA後面接著 |
---|---|
CM_SEND_AND_FLUSH | 清除 |
CM_SEND_AND_CONFIRM | 確認 |
CM_SEND_AND_PREP_TO_RECEIVE | Prepare_To_Receive |
CM_SEND_AND_DEALLOCATE | 解除配置 |