使用產生的 helper 函數

您可以在 Rational® Rhapsody® 實作區塊 (RIMB) 上使用 Rational Rhapsody 產生的數個 helper 函數。 可以在作用中作業中呼叫 helper 函數。
helper 函數的分類如下:
  • 讀取接收端埠上資料的接收者。 這些函數可隱藏「執行時期環境 (RTE) API」的複雜性。 這些函數可用來變更存取模式而不變更使用者的存取碼,但存在一些限制。
  • 在傳送端埠上傳送資料或事件的寄件者
  • 處理收到的資料或事件的處理者
  • 讀取並處理資料或事件的接收者及處理者
  • 呼叫必要(用戶端)服務的呼叫者

除處理者之外,所有 helper 函數都會傳回狀態,這個狀態是從它們在實作中呼叫的「執行時期環境」函數傳回。

下表列出每個 helper 函數及其作用。

表 1. helper 函數
helper 函數 說明
receiveData_p_x (int* const x) 讀取接收端埠 p 上屬性 x 的值,並將其放入參數 x 中。 僅限 p.x 是由 C 類型而不是事件輸入時,才會產生此函數。
receiveEvent_p_x (int* const x) 讀取接收端埠 p 上屬性 x 的值,並將其放入參數 x 中。 僅限 p.x 是由 Rational Rhapsody 事件輸入時,才會產生此函數。 通常會直接呼叫 receiveAndHandleEvent,而不是此函數。
handleData_p_x (int x) 僅限 p.x 是由 C 類型而不是事件輸入時,才會產生此函數:
  • 如果 Rational Rhapsody 實作區塊具有觸發的作業 evP_x,則呼叫該觸發的作業。
  • 如果 Rational Rhapsody 實作區塊具有屬性 p_x,則將該屬性 p_x 設為參數值。
    • 此外,如果 Rational Rhapsody 實作區塊變更了名為 chP_xx 的接收,則會產生 chP_x 的實例,並將其排入管理程式的佇列。
handleEvent_p_x() 僅限 p.x 是由事件 ev 輸入時,才會產生此函數:
  • 如果 Rational Rhapsody 實作區塊具有接收 ev,則產生 ev 的實例,並將其排入管理程式的佇列。
  • 如果輸入 p.x 的事件具有參數,則 handleEvent 將具有複製到該事件的參數。
receiveAndHandleData_p_x() 接收資料並立即進行處理。
receiveAndHandleEvent_p_x() 接收事件並立即進行處理。
sendData_p_x(int x) 將參數值傳送至傳送端埠 p 上的屬性 x。僅限 p.x 是由 C 類型而不是事件輸入時,才會產生此函數。
sendEvent_p_x() 僅限 p.x 是由事件 ev 輸入時,才會產生此函數:
  • 將任意值傳送給傳送端埠 p 上的屬性 x
  • 如果事件 ev 具有參數,sendEvent 也會有參數,且會傳送這個值(不是任意值)。
call_p_f 呼叫用戶端埠 p 上必要的作業 f

意見回饋