Main Page | Namespace List | Class Hierarchy | Class List | File List | Namespace Members | Class Members

esve::kernel::impl::Simple_Kernel_impl Struct Reference

An example application driver. More...

#include <esve/kernel/impl/Simple_Kernel_impl.hxx>

List of all members.

Public Attributes

kernel::Main_Driver main_driver
 See diagram.

kernel::impl::Kernel_Node cached_emitter_node
 See diagram.

kernel::impl::Kernel_Node uncached_emitter_node
 See diagram.

kernel::Caching_Server caching_server
 See diagram.

kernel::Async_Update_Server async_update_server
 See diagram.

kernel::Wake_State_Server wake_state_server
 See diagram.

kernel::impl::Kernel_Node handler_node
 See diagram.

kernel::Sync_Update_Server sync_update_server
 See diagram.

message::impl::Update_Node update_node
 See diagram.


Detailed Description

An example application driver.

This is a starting configuration for implementers building an application from scatch. Of course, one may have any number of servers and nodes, depending on the size and complexity of the application; this is just an example.

The setup looks like this:

   
    handle tree:
   
   
    cached_emitter_node       main_driver
              \                    |
               \                   |
                \                  |
                 +-------+         | handle_driver_start()
                          \        | handle_driver_check_finished()
                           \       | handle_driver_finish()
                 handle_*() \      | handle_check_awake()
                             \     |
                             |     |
                            \|/   \|/
                             *     *
    uncached_emitter_node    caching_server
               \                   |
                \                  |
                 +-------+         |
                          \        |
                           \       | handle_*()  (pass-through)
                 handle_*() \      |
                             \     |
                             |     |
                            \|/   \|/
                             *     *
                          async_update_server
                                   |
                                   |
                                   |
                                   |
                                   | handle_*()  (pass-through)
                                   |
                                   |
                                   |
                                  \|/
                                   *
                           wake_state_server
                                  /|
                                 / |
                        +-------+  |
                       /           |
        handle_wake() /            | handle_*()  (pass-through)
                     /             |
                    /              |
                   |               |
                  \|/             \|/
                   *               *
       sync_update_server     handler_node
   
   
   __________________________________________________________________________
   
    update tree:
   
   
              async_update_server     sync_update_server
                          \                /
                           \              /
                            \            /
                             \          /
                              \        /
                               \      /
                                |    |
                               \|/  \|/
                                *    *
                              update_node
   
   __________________________________________________________________________
   
    tick tree:
   
                              main_driver
                                   |
                                   |
                                   |
                                   | tick()
                                   |
                                   |
                                  \|/
                                   *
                           sync_update_server
   
    


Generated on Tue May 30 11:40:56 2006 for esve by doxygen 1.3.4