Documentation Set for Swarm 2.2
Prev | Reference III. Activity Library | Next

# General

## Name

activity -- Processing control over all levels of Swarm execution

## Description

The activity library is responsible for scheduling actions to occur within a simulated world, and for making these actions actually happen at the right time in the right order. It provides the foundation of dynamic, object-oriented simulation within Swarm.

Actions consist of messages to objects, calls to functions, or groups of actions in some defined order. The activity library guarantees that all these actions, and the state changes they produce, occur at predictable points in time. Time is defined by the relative order of actions, and may also be indexed by the discrete values of a world clock.

## Macros

- `COMPLETEDP(status)`

- DEFINED_timeval_t

- `HOLDINGP(status)`

- `INITIALIZEDP(status)`

- `RELEASEDP(status)`

- `RUNNINGP(status)`

- `STOPPEDP(status)`

- `TERMINATEDP(status)`

- `getCurrentAction()`

- `getCurrentActivity()`

- `getCurrentOwnerActivity()`

- `getCurrentSchedule()`

- `getCurrentScheduleActivity()`

- `getCurrentSwarm()`

- `getCurrentSwarmActivity()`

- `getCurrentTime()`

  Macro to get the time of the current activity - only valid when an activity is actually running. Returns a (timeval_t).

- `getTopLevelActivity()`

  Macro to get id of the current topLevelActivity - only valid when an activity is actually running.

## Functions

- `id _activity_context_error(const char *macroName)`

  Internal error message issued when a current activity is missing.

## Typedefs

- timeval_t

      unsigned long

## Globals

id <Symbol> Initialized

  Values returned by getStatus.

id <Symbol> Running

  Values returned by getStatus.

id <Symbol> Holding

  Values returned by getStatus.

id <Symbol> Released

  Values returned by getStatus.

id <Symbol> Stopped

  Values returned by getStatus.

id <Symbol> Terminated

  Values returned by getStatus.

id <Symbol> Completed

  Values returned by getStatus.

id <Symbol> Concurrent

  values for DefaultOrder

id <Symbol> Sequential

  values for DefaultOrder

id <Symbol> Randomized

  values for DefaultOrder

id <Symbol> HoldStart

  Values returned by getHoldType.

id <Symbol> HoldEnd

  Values returned by getHoldType.

id _activity_current

  Internal variable used by current context macros.

id <Error> InvalidSwarmZone

  Error issued when an internal zone is expected, but absent.

id _activity_zone

  _activity_zone -- zone in which activity objects created

BOOL (*) (id) _activity_trace

  trace function for activity execution global variable for function to be called on every change in the activity tree Note: support for any specific form of this trace facility is not guaranteed in future versions. Some form of trace facility will remain for debug purposes, however, at least until a full form of event history logging has been implemented as an integral part of the Activity type.

Prev | Home | Next
SynchronizationType | Up | Objectbase Library