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

Include all Libmacro functionality. More...

#include "mcr/context.h"

Go to the source code of this file.

Namespaces

 mcr
 Libmacro, by Jonathan Pelletier, New Paradigm Software. Alpha version.
 

Functions

MCR_API struct mcr_contextmcr_allocate ()
 
MCR_API int mcr_deallocate (struct mcr_context *ctx)
 
MCR_API int mcr_initialize (struct mcr_context *ctx)
 
MCR_API int mcr_deinitialize (struct mcr_context *ctx)
 
MCR_API int mcr_load_contracts (struct mcr_context *ctx)
 
MCR_API void mcr_trim (struct mcr_context *ctx)
 

Detailed Description

Include all Libmacro functionality.

Todo:
Create a list of missing functionality when MCR_NOEXTRAS is defined.

Definition in file libmacro.h.

Function Documentation

§ mcr_allocate()

MCR_API struct mcr_context* mcr_allocate ( )
Todo:
Separate context and functions to context.h?

malloc and mcr_initialize a mcr_context

Will not load contracts. Will set mcr_err.

Returns
Dynamic and initialized Libmacro context, or NULL on error

§ mcr_deallocate()

MCR_API int mcr_deallocate ( struct mcr_context ctx)

mcr_deinitialize and free.

Only use with a context created by malloc or mcr_allocate. Because of threading do not deallocate in a deconstructor or on program exit. Will set mcr_err.

Parameters
ctxLibmacro context
Returns
reterr

§ mcr_deinitialize()

MCR_API int mcr_deinitialize ( struct mcr_context ctx)

Clean all resources used by Libmacro.

Because of threading do not deinitialize in a deconstructor or on program exit. Will set mcr_err.

Parameters
ctxLibmacro context
Returns
reterr

§ mcr_initialize()

MCR_API int mcr_initialize ( struct mcr_context ctx)

Initialize Libmacro resources

Will set mcr_err.

Parameters
ctxLibmacro context
Returns
reterr

§ mcr_load_contracts()

MCR_API int mcr_load_contracts ( struct mcr_context ctx)

Register standard types and map their given names.

Precondition
context must be initialized mcr_base::isignal_registry_pt mcr_base::itrigger_registry_pt
Parameters
ctxLibmacro context
Returns
reterr

§ mcr_trim()

MCR_API void mcr_trim ( struct mcr_context ctx)

Minimize allocation used by Libmacro.

Parameters
ctxLibmacro context