Difference between revisions of "Documentation:Aracne atoms"

From The BABEL Development Site
(request-synchronous&blocking)
(request-dynamic&blocking)
Line 94: Line 94:
  
 
request-synchronous&blocking.
 
request-synchronous&blocking.
 +
 +
 +
 +
=== terminateservice ===
 +
 +
This atom makes the current service to end its execution. If the service ouput parameters have not been set, the caller will receive undefined data. The service is terminated even if it is a monitor or monitor+permanent service (or an event or notification handler).
 +
 +
It is useful, for example, when a service shuts down the module. Since the shutdown does not prevent the service from continuing its execution, it should be followed by a terminateservice request.
 +
 +
'''AVAILABILITY'''
 +
 +
Available in:
 +
 +
- Regular Services
 +
- Event Handlers
 +
- Notification Handlers
 +
 +
'''PARAMETERS'''
 +
 +
None.
 +
 +
'''SUPPORTED BY WIZARD'''
 +
 +
No.
 +
 +
'''SEE ALSO'''
 +
 +
shutdown-module
  
 
== Beta Events ==
 
== Beta Events ==

Revision as of 12:07, 22 May 2009

Aracne Atoms Documentation for BABEL

System Engineering and Automation Department.

University of Málaga, Spain.





Communications Platform

Services

request-synchronous&blocking

This atom enables to request a service from a module (maybe from itself), in a blocking manner.

AVAILABILITY

Available in:

- Regular Services - Event Handlers - Notification Handlers - Auxiliary Logic

PARAMETERS

  • Service requested -string-: the name of the service being requested, as a sequence of characters, without quoting.
  • Module name -string-: the name of the module that provides the service,as a sequence of characters, without quoting.
  • Service method -id- (not suitable for filling at hand): the name of the method implemented for serving the service, as a C++ identifier.
  • Module variable -id- (not suitable for filling at hand): the name of the variable that holds the module of the server, as a C++ identifier.
  • Service parameters -list-: the list of parameters passed (either variables or values),separated by commas.
  • Error variable -bool-: the name of a C++ variable already existing for receiving indication of error during the request: true if error.
  • Quickest -float-: minimum time in seconds that the service should last in returning a value.
  • Slowest -float-: maximum time in seconds that the service should last in returning a value.
  • Response seconds variable -long- (optional): a C++ variable already existing to hold the seconds part of the timestamp set by the target of the service request when its logic is finished. Notice that this time is valid only if the requester and the requested are running in the same computer.
  • Response microseconds variable -long- (optional): a C++ variable already existing to hold the microseconds part of the timestamp set by the target of the service request when its logic is finished. Notice that this time is valid only if the requester and the requested are running in the same computer.
  • Repetition of module -literal positive number- (optional): a positive number (greater than 0) to distinguish to which repetition of the given target module we are referring with this request (obviously only for the case that the target module of the request is being executed more than once through the repetition feature).


SUPPORTED BY WIZARD

Yes. You can obtain most of the parameters above through several wizards that read them from existing .ice files or from the module itself.

SEE ALSO

request-dynamic&blocking.



request-dynamic&blocking

This atom enables to request a service from a module (maybe from itself), in a blocking manner.

AVAILABILITY

Available in:

- Regular Services - Event Handlers - Notification Handlers - Auxiliary Logic

PARAMETERS

  • Module name -string or variable-: the name of the module that provides the service,as a sequence of characters, with quoting, or as a variable.
  • Service requested -string or variable-: the name of the service being requested, as a sequence of characters, with quoting, or as a variable.
  • Service parameter 1 -variable-: a variable that contains the first parameter of the service.
  • Service parameter 1 inout -character-: a character that can be 'I' or 'O' (without quoting), for indicating if the first parameter is an input or output parameter.

(Analogously for the rest of parameters)

  • Error variable -bool-: the name of a C++ variable already existing for receiving indication of error during the request: true if no error.
  • Quickest -float-: minimum time in seconds that the service should last in returning a value.
  • Slowest -float-: maximum time in seconds that the service should last in returning a value.
  • Response seconds variable -long- (optional): a C++ variable already existing to hold the seconds part of the timestamp set by the target of the service request when its logic is finished. Notice that this time is valid only if the requester and the requested are running in the same computer.
  • Response microseconds variable -long- (optional): a C++ variable already existing to hold the microseconds part of the timestamp set by the target of the service request when its logic is finished. Notice that this time is valid only if the requester and the requested are running in the same computer.
  • Repetition of module -literal positive number- (optional): a positive number (greater than 0) to distinguish to which repetition of the given target module we are referring with this request (obviously only for the case that the target module of the request is being executed more than once through the repetition feature).

SUPPORTED BY WIZARD

Yes. You can obtain most of the parameters above through a wizard.

SEE ALSO

request-synchronous&blocking.


terminateservice

This atom makes the current service to end its execution. If the service ouput parameters have not been set, the caller will receive undefined data. The service is terminated even if it is a monitor or monitor+permanent service (or an event or notification handler).

It is useful, for example, when a service shuts down the module. Since the shutdown does not prevent the service from continuing its execution, it should be followed by a terminateservice request.

AVAILABILITY

Available in:

- Regular Services - Event Handlers - Notification Handlers

PARAMETERS

None.

SUPPORTED BY WIZARD

No.

SEE ALSO

shutdown-module

Beta Events

Notifications

Execution Platform

Concurrency

Critical zones

Inter-Process Communications

Local Channels

User Interaction

Real-Time Platform

Timing

Fault-Tolerance Platform

Error Discovering

Hardware Platform

Miscellaneous