ACT Namespace Reference


Classes

class  ACT_State
 Generically state of an ACT as a scheduler and other actions see it. More...
class  basic_act
 Base class for specific ACT uses. More...
class  simple_act
 Base class for ACT without background processing and no need for notification. More...
class  autonomous_act
 Base class for ACT that may initiate background activity and require notification. More...
class  act
class  Handle
 A marked, encapsulate ordinal, used as an index in offset operations. More...
class  Vector_with_Handle_Index
 A wrapper around std::vector, with its integral index replaced by a handle. More...
class  Handle_Registry_Leader
 A registry that maps handles to instances of a handled class. More...
class  Handle_Registry_Follower
 A registry indexed by handles issued by a Handle_Registry_Leader. More...
class  Handled
 A base class for handled classes. To use, use the derived class as the template parameter, as follows: class X : public class Handled< X > { ... } ;. More...
class  Null_Aspect_Handled
 Base for aspect classes of Handled. More...
class  Basic_Listen_Monitor
 Base class for monitor service actions. More...
class  Basic_Listening_Task
 Base class for tasks that may suspend themselves and listen for wakeup. More...
class  Pause_Demon
 A service that does nothing for some number of milliseconds if the scheduler has no tasks pending. More...
class  Scheduler
 Abstract interface to scheduler. More...
class  wakeup_listener
 Abstract interface to a function object that wakes up a listener task that's waiting. More...
class  wakeup_listener_allocated
 A managed-storage wrapper for wakeup listener as it's used with the Scheduling_Queue. More...
class  Basic_Wakeup_Listener
 The 'A' in ACT means 'asynchronous', so in general there must be a way of notifying a scheduler that an inactive ACT, one that has a pending sub-action, is ready to proceed. This class is the interface between a scheduler and such an ACT. More...
class  Basic_Scheduled_Item
 Data within the priority queue proper. This data is swapped during priority queue operations, so should remain as small as possible. More...
class  Basic_Scheduler
 A basic implementation of a scheduler. More...
class  Basic_Scheduler_Null_Aspect
 Base class for aspects of Basic_Scheduler. More...
class  Scheduled_Item
 The full data that goes into the scheduling queue. It includes the underlying item plus extra housekeeping information. More...
class  Auxiliary_Item
 The full data that goes into the scheduling queue. It includes the underlying item plus extra housekeeping information. More...
class  Scheduled_Item_Pointer
 A pointer into an item within a scheduling queue. Since items within the underlying container of a queue move around, a pointer is necessary to track such motion and provide a stable reference for outsiders. More...
class  Scheduling_Queue
 A queue responsible for storage allocation, item reference, and heap maintenance. This class is a basis on top of which to implement particular scheduling policies. More...
class  Generator
 A generator of actions, in bursts, used to feed a Service. This class is a base for service implementations. More...
class  Service
 A service is a persistent action whose result to create new actions and to schedule them for execution. More...
class  Service_Null_Aspect
 Null aspect for Service. More...
class  execution_trace
 A wrapper around a string to hold a logging trace of an execution pathway. More...
class  tracking_function
 A function to call once per activation. More...
class  simple_tracker
 Marks operation with a prefix designated at construction time. More...
class  N_to_completion_Monitor
 A monitor for N_to_completion. More...
class  N_to_completion
 Action that completes after N activations. More...
class  single_action
 An action that always completes at its first activation. More...
class  no_action
 An action that starts off completed. More...
class  Supplied_Generator
 A generator whose entries are added manually one by one. More...
class  Supplied_Service_Aspect< Service< Supplied_Service_Aspect > >
 Aspect for class Service that tracks the run function. More...
class  Supplied_Service
 A service whose tasks are manually added one by one. More...

Enumerations

enum  Basic_Priority {
  Urgent = 0, Initial, Ordinary, Background,
  Waiting
}
enum  Action_Category { Task = 0, Demon, Critical_Demon }
 Category of actions within Basic_Scheduler. Distinguishes ordinary tasks from services, which have different scheduling policies. More...


Enumeration Type Documentation

enum ACT::Action_Category

Category of actions within Basic_Scheduler. Distinguishes ordinary tasks from services, which have different scheduling policies.

Enumerator:
Task  An ordinary task, executed until completed, then discarded.
Demon  A demon task, never expected to complete, but which may complete.

A demon executes with background priority in the scheduling queue. It may also have its own autonomous processing. The select() call behind the wakeup listener for network I/O, for example, is somewhere within a certain demon.

Critical_Demon  A critical demon is one that must be run in order for the scheduler to run.

enum ACT::Basic_Priority

Task Priorities.

We don't have issues of persistence with these values at the present. Should we ever want to do so, persisting string representations rather than binary values would be preferable.

Enumerator:
Urgent  Urgent tasks are activated as soon as they're entered. Shutdown notification, for example, is an urgent task.
Initial  The first activation of an action operates at higher priority than subsequent ones.
Ordinary  A task ready for its next activation is ordinary.
Background 
Waiting 


Generated on Thu Mar 6 18:25:09 2008 for Gnash by  doxygen 1.5.4