Code Monkey home page Code Monkey logo

simpleeventmanager's Introduction

Simple Event Manager

Design Goals

While there are quite a few event managers out there, it seemed that most of them were very opinionated about the

  1. Message type
  2. Thread model

This Event Manager was designed to not have an opinion about any of the two. Hence its simplicity.

This does mean that the user of this Event Manager needs to implement the thread model itself. Some might think that this makes this Event Manager not simple. Then again, when you want to mix and match different thread models, it's much simpler with this Event Manager.

Building

Currently tested only with clang 17.0.6 but this is very straight forward C++17 code, so it should compile on any compiler.

cmake -S . -B build -GNinja
cmake --build build

If you don't have ninja dont add the -GNinja flag.

Usage

Please look at the /tests folder for usage examples.

License

Currently distributed under MIT license. This license was chosen because https://choosealicense.com/ recommended it as the most permisive license. If there is a need for an aditional license, please contact me.

simpleeventmanager's People

Contributors

kpeace avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.