Revision dd31cb03 doc/activitydiagrams/service/urtServiceCall.uml
| doc/activitydiagrams/service/urtServiceCall.uml | ||
|---|---|---|
| 35 | 35 |
Optional argument for the service call. |
| 36 | 36 |
May be ""NULL"" if the service expects no arguments. |
| 37 | 37 |
-- **ret** : void* -- |
| 38 |
Pointer to an optional return value.
|
|
| 38 |
Pointer to an optional output value.
|
|
| 39 | 39 |
May be ""NULL"". |
| 40 | 40 |
-- **timeout** : urt_delay_t -- |
| 41 | 41 |
Timeout delay to be propagated to the callback function. |
| ... | ... | |
| 48 | 48 |
/'### PROCEDURE ##############################################################'/ |
| 49 | 49 |
|
| 50 | 50 |
start |
| 51 |
#EEEEEE:..//URT_CFG_RPC_PROFILING == true//..\nincrement call counter; |
|
| 51 | 52 |
:execute the service ""callback"" function; |
| 53 |
partition "//URT_CFG_RPC_PROFILING == true//" #EEEEEE {
|
|
| 54 |
fork |
|
| 55 |
#EEEEEE:accumulate sum of durations; |
|
| 56 |
fork again |
|
| 57 |
if (Calback returned ""URT_STATUS_SERVICE_TIMEOUT""?) then (yes) |
|
| 58 |
#EEEEEE:increment timeout counter; |
|
| 59 |
else (no) |
|
| 60 |
endif |
|
| 61 |
fork again |
|
| 62 |
if (Duration was shorter than ""minDuration""?) then (yes) |
|
| 63 |
#EEEEEE:update ""minDuration"" value; |
|
| 64 |
elseif (Duration was longer than ""maxDuration""?) then (yes) |
|
| 65 |
#EEEEEE:update ""maxDuration"" value; |
|
| 66 |
else (no) |
|
| 67 |
endif |
|
| 68 |
endfork |
|
| 69 |
} |
|
| 52 | 70 |
stop |
| 53 | 71 |
note |
| 54 | 72 |
Returns the return value of the callback. |
Also available in: Unified diff