25 #ifndef MCR_BASE_DISPATCH_H_ 26 #define MCR_BASE_DISPATCH_H_ 105 struct mcr_Signal *interceptPt,
void *receiver,
121 struct mcr_Signal *interceptPt,
void *receiver,
145 unsigned int *modifiersPt);
MCR_API void mcr_dispatch_modify(struct mcr_context *ctx, struct mcr_Signal *sigPt, unsigned int *modifiersPt)
Modify modifiers without dispatching.
Forward declaration of types.
bool(* mcr_dispatch_receive_fnc)(struct mcr_DispatchReceiver *dispatchReceiver, struct mcr_Signal *dispatchSignal, unsigned int mods)
MCR_API void mcr_dispatch_set_enabled(struct mcr_context *ctx, struct mcr_ISignal *typePt, bool enableFlag)
MCR_API void mcr_dispatch_remove_all(struct mcr_context *ctx, void *remReceiver)
MCR_API void mcr_dispatch_set_generic_dispatcher(struct mcr_context *ctx, struct mcr_IDispatcher *dispatcherPt)
MCR_API void mcr_dispatch_trim(struct mcr_context *ctx, struct mcr_ISignal *isigPt)
MCR_API void mcr_dispatch_set_enabled_all(struct mcr_context *ctx, bool enableFlag)
MCR_API void mcr_dispatch_clear(struct mcr_context *ctx, struct mcr_ISignal *isigPt)
MCR_API int mcr_dispatch_unlock(struct mcr_context *ctx)
MCR_API size_t mcr_dispatch_count(struct mcr_context *ctx)
MCR_API bool mcr_dispatch(struct mcr_context *ctx, struct mcr_Signal *sigPt)
Blocking signal intercept.
MCR_API int mcr_dispatch_add(struct mcr_context *ctx, struct mcr_Signal *interceptPt, void *receiver, mcr_dispatch_receive_fnc receiveFnc)
MCR_API int mcr_dispatch_lock(struct mcr_context *ctx)
MCR_API void mcr_dispatch_clear_all(struct mcr_context *ctx)
MCR_API bool mcr_dispatch_enabled(struct mcr_context *ctx, struct mcr_ISignal *isigPt)
MCR_API void mcr_dispatch_remove(struct mcr_context *ctx, struct mcr_ISignal *typePt, void *remReceiver)
MCR_API int mcr_dispatch_set_dispatchers(struct mcr_context *ctx, struct mcr_IDispatcher **dispatchers, size_t count)
MCR_API void mcr_dispatch_trim_all(struct mcr_context *ctx)
MCR_API int mcr_dispatch_add_generic(struct mcr_context *ctx, struct mcr_Signal *interceptPt, void *receiver, mcr_dispatch_receive_fnc receiveFnc)