Download Latest Version open_event_machine-1.3.0.zip (533.2 kB)
Email in envelope

Get an email when there's a new version of Open Event Machine

Home / Open Event Machine API
Name Modified Size InfoDownloads / Week
Parent folder
README_API 2017-08-31 3.8 kB
open_event_machine_API_v1.3.zip 2017-08-31 66.8 kB
open_event_machine_API_v1.2.zip 2015-08-25 52.2 kB
open_event_machine_API_v1.1.zip 2014-12-22 31.9 kB
open_event_machine_API_v1.0.zip 2012-06-20 28.5 kB
Totals: 5 Items   183.1 kB 0
-------------------------------------------------------------------------------
OpenEM API Release Notes
-------------------------------------------------------------------------------

-------------------------------------------------------------------------------
API 1.3 (EM_API_VERSION_MAJOR=1, EM_API_VERSION_MINOR=3)
-------------------------------------------------------------------------------
 1. Enhancement and clarification of ordered queue behavior. New clarified
    ordering concept is similar to what ODP currently defines. See queue
    documentation for details.
 2. Added add-ons - directory for extra APIs not part of the standard base
    definition. See README at add-ons/
 3. Clarification of event group behavior for exceptional situations. See
    event group documentation.
 4. New API to send multiple events (em_send_multi, em_send_group_multi) for
    potential performance gain.
 5. New API to receive multiple events from unscheduled queues.
 6. Event timer API (add-on). See add-ons/event_machine_timer.h
 7. Added API to change event type (if compatible). See event_machine_event.h
 8. UNDEF - values of -1 (FFFFFFFF) deprecated. Implementation should use
    value 0 for any UNDEF. This makes it safer to initialize data to 0.
	
Backwards compatible.

-------------------------------------------------------------------------------
API 1.2 (EM_API_VERSION_MAJOR=1, EM_API_VERSION_MINOR=2)
-------------------------------------------------------------------------------
 1. Introduced a slightly modified header structure (headers by service group).
    Application only needs to include event_machine.h. Event group is now also
    part of the standard API.
 2. Added possibility to explicitly signal end of event group handling,
    see em_event_group_processing_end()
 3. Added possibility to assign a received event to an event group,
    see em_event_group_assign()
 4. Added recovery to event groups,
    see em_event_group_abort(), em_event_group_get_notif()
 5. Added a hint to the scheduler, see em_preschedule()
 6. Added common dispatcher callbacks for debug, statistics or new services,
    see em_dispatch_register_enter_cb(), em_dispatch_unregister_enter_cb(),
        em_dispatch_register_exit_cb(),  em_dispatch_unregister_exit_cb()
 7. Added APIs for unscheduled queues along with a new queue type,
    see em_queue_dequeue(), EM_QUEUE_TYPE_UNSCHEDULED(arg to em_queue_create())
 8. Added API call to ask for the event size, see em_event_get_size()
 9. Added missing APIs to ask for the names of objects (like queue groups)
10. Clarified documentation

Backwards compatible.

-------------------------------------------------------------------------------
API 1.1 (EM_API_VERSION_MAJOR=1, EM_API_VERSION_MINOR=1)
-------------------------------------------------------------------------------
1. Atomic Group concept added (see event_machine_atomic_group.h)
2. Option to send notifications to an event group added.
   See declaration of em_notif_t (moved to event_machine_hw_types.h)
3. em_event_group_is_ready() added and
   clarified usage rules of em_event_group_apply()
4. Minor documentation clarifications

Backwards compatible with one EXCEPTION (item 2):
  Introducing a new input field to an existing structure is potentially
  dangerous to existing code behavior as it is not initialized unless the
  application initialized the structure with 0 using e.g. memset() with
  sizeof(em_notif_t).
  EM_EVENT_GROUP_UNDEF or value 0 as .egroup should cause the legacy behaviour
  in all implementations.

-------------------------------------------------------------------------------
API 1.0 (EM_API_VERSION_MAJOR=1, EM_API_VERSION_MINOR=0)
-------------------------------------------------------------------------------
Initial API
Source: README_API, updated 2017-08-31