IODA
c_binding_macros.h File Reference

C bindings interface to templated C++ ioda classes and functions. More...

#include <stdint.h>
Include dependency graph for c_binding_macros.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define C_TRY   try {
 Goes with C_CATCH_AND_TERMINATE. More...
 
#define C_CATCH_AND_TERMINATE
 Catch C++ exceptions before they go across code boundaries. More...
 
#define C_CATCH_AND_RETURN(retval_on_success, retval_on_error)
 This macro catches C++ exceptions. More...
 
#define C_CATCH_RETURN_FREE(retval_on_success, retval_on_error, freeable)
 Like C_CATCH_AND_RETURN, but free any in-function allocated C resource before returning to avoid memory leaks. More...
 
#define C_TEMPLATE_FUNCTION_DEFINITION_NOSTR(funcname, PATTERN)
 
#define C_TEMPLATE_FUNCTION_DECLARATION_4_NOSTR(shortname, basename, PATTERN)
 
#define C_TEMPLATE_FUNCTION_DECLARATION_3_NOSTR(shortname, basename, PATTERN)
 
#define C_TEMPLATE_FUNCTION_DECLARATION_3(shortname, basename, PATTERN)
 
#define C_TEMPLATE_FUNCTION_DECLARATION_NOSTR(funcname, PATTERN)    C_TEMPLATE_FUNCTION_DECLARATION_3_NOSTR(funcname, funcname, PATTERN)
 
#define C_TEMPLATE_FUNCTION_DECLARATION(funcname, PATTERN)
 Used to expand templates to provide bindings for template-deprived languages (C, Fortran). More...
 
#define C_TEMPLATE_FUNCTION_DEFINITION(funcname, PATTERN)
 Used to expand templates to provide bindings for template-deprived languages (C, Fortran). More...
 

Detailed Description

C bindings interface to templated C++ ioda classes and functions.

Definition in file c_binding_macros.h.