Abstract event manager

sharing event manager API
Detailed description.