Libmacro  0.2
Libmacro is an extensible macro and hotkey library.
isignal.h File Reference

mcr_ISignal - Interface for signals. More...

Go to the source code of this file.

Classes

struct  mcr_ISignal
 

Typedefs

typedef int(* mcr_signal_fnc) (struct mcr_Signal *signalPt)
 

Functions

MCR_API void mcr_ISignal_init (struct mcr_ISignal *isigPt)
 
MCR_API void mcr_ISignal_ctor (struct mcr_ISignal *isigPt, struct mcr_context *context, size_t dataSize, void *(*allocate)(), void(*deallocate)(void *), mcr_data_fnc init, mcr_data_fnc deinit, mcr_compare_fnc compare, mcr_copy_fnc copy, struct mcr_IDispatcher *dispPt, mcr_signal_fnc sender)
 
MCR_API void mcr_ISignal_deinit (struct mcr_ISignal *isigPt)
 
MCR_API struct mcr_IRegistrymcr_ISignal_registry (struct mcr_context *ctx)
 
MCR_API size_t mcr_ISignal_id (const struct mcr_ISignal *isigPt)
 
MCR_API struct mcr_ISignalmcr_ISignal_from_id (struct mcr_context *ctx, size_t id)
 
MCR_API const char * mcr_ISignal_name (struct mcr_context *ctx, struct mcr_ISignal *isigPt)
 
MCR_API struct mcr_ISignalmcr_ISignal_from_name (struct mcr_context *ctx, const char *name)
 

Detailed Description

mcr_ISignal - Interface for signals.

Use signals with mcr_send.

Definition in file isignal.h.

Typedef Documentation

§ mcr_signal_fnc

typedef int(* mcr_signal_fnc) (struct mcr_Signal *signalPt)

Function on signal

Parameters
signalPtSignal to send
Returns
reterr for actions with errors, 0 for no error

Definition at line 39 of file isignal.h.

Function Documentation

§ mcr_ISignal_ctor()

MCR_API void mcr_ISignal_ctor ( struct mcr_ISignal isigPt,
struct mcr_context context,
size_t  dataSize,
void *(*)()  allocate,
void(*)(void *)  deallocate,
mcr_data_fnc  init,
mcr_data_fnc  deinit,
mcr_compare_fnc  compare,
mcr_copy_fnc  copy,
struct mcr_IDispatcher dispPt,
mcr_signal_fnc  sender 
)

§ mcr_ISignal_deinit()

MCR_API void mcr_ISignal_deinit ( struct mcr_ISignal isigPt)

dtor

Removes self from registry, if the registry is set.

Parameters
isigPtopt

§ mcr_ISignal_from_id()

MCR_API struct mcr_ISignal* mcr_ISignal_from_id ( struct mcr_context ctx,
size_t  id 
)

Get a mcr_ISignal from its id

Parameters
idId of the signal interface
Returns
Signal interface, or null if not found

§ mcr_ISignal_from_name()

MCR_API struct mcr_ISignal* mcr_ISignal_from_name ( struct mcr_context ctx,
const char *  name 
)

Get a mcr_ISignal from its name

Parameters
nameopt Name of the signal interface
Returns
Signal interface, or null if not found

§ mcr_ISignal_id()

MCR_API size_t mcr_ISignal_id ( const struct mcr_ISignal isigPt)

Get the id of a mcr_ISignal.

Parameters
isigPtopt
Returns
retid

§ mcr_ISignal_init()

MCR_API void mcr_ISignal_init ( struct mcr_ISignal isigPt)

ctor

Parameters
isigPtopt

§ mcr_ISignal_name()

MCR_API const char* mcr_ISignal_name ( struct mcr_context ctx,
struct mcr_ISignal isigPt 
)

Get the name of a mcr_ISignal.

Parameters
isigPtopt
Returns
Name of the mcr_ISignal, or null if not found

§ mcr_ISignal_registry()

MCR_API struct mcr_IRegistry* mcr_ISignal_registry ( struct mcr_context ctx)