Skip to main content

Bind functions to events that can be called from any other script at any time.

Project description

ev-manager (Event Manager)

Useful when working with DCCs like Maya, MotionBuilder, Unreal Engine, etc. and you want different tools/scripts to communicate with each other.

Installation:

pip install ev-manager

Examples:

Using classes:

""" my_module.py """

from typing import Callable
from ev_manager import Event

class ExampleEvent(Event[Callable[[int], None]]):
    pass

def my_callback(value: int):
    print(f"Number: {value}")

ExampleEvent.bind(my_callback)
>>> from my_module import ExampleEvent
>>> ExampleEvent.emit(5)
>>> "Number: 5"

Using functions:

import ev_manager

def hello_world():
    print("Hello World!")

ev_manager.bind("MyEvent", hello_world)
>>> import ev_manager
>>> ev_manager.emit("MyEvent")
>>> "Hello World!"

Available functions:

Function Description
bind(event, function) Bind a function to an event.
unbind(event, function) Unbind a function from an event.
unbind_all(*, event, function) Either unbind all functions from an event or unbind a function from all events.
is_bound(event, function) Check if a function is bound to an event.
emit(event, *args, **kwargs) Call all functions bound to an event.

Limitations:

Events are per Python instance. So they will for example not be communicating between different applications.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ev-manager-0.1.0.tar.gz (4.1 kB view details)

Uploaded Source

Built Distribution

ev_manager-0.1.0-py3-none-any.whl (4.8 kB view details)

Uploaded Python 3

File details

Details for the file ev-manager-0.1.0.tar.gz.

File metadata

  • Download URL: ev-manager-0.1.0.tar.gz
  • Upload date:
  • Size: 4.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.9.18

File hashes

Hashes for ev-manager-0.1.0.tar.gz
Algorithm Hash digest
SHA256 0b96367ac0a36dffafa047ad25bf951d06df845dbd2d6e01eb46ba89dbad7c4a
MD5 cf2a6953a3b05652a9f26cdeded9414e
BLAKE2b-256 f43a0813d86883d05efb19e2fbaf8514ec1d9c4a4170ad0fdd5a1c33920c073b

See more details on using hashes here.

File details

Details for the file ev_manager-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: ev_manager-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 4.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.9.18

File hashes

Hashes for ev_manager-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 994bd3b822b0b7d0e80ed2c75b95a2ed44c9067b73ea58e94d9a5bfab16cc6ea
MD5 dbf5764626c3ca79712e1a1b320fa30b
BLAKE2b-256 c77a1d518ad227c6d30b475d4fd737839a59f7e9ff4aa6f4acc52681001a8c30

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page