2015-01-31 03:57:51 -08:00
|
|
|
#ifndef ${EDI_NAME}_H_
|
|
|
|
# define ${EDI_NAME}_H_
|
|
|
|
|
|
|
|
#include <Elementary.h>
|
|
|
|
|
|
|
|
#ifdef EAPI
|
|
|
|
# undef EAPI
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#ifdef _WIN32
|
|
|
|
# ifdef EFL_${EDI_NAME}_BUILD
|
|
|
|
# ifdef DLL_EXPORT
|
|
|
|
# define EAPI __declspec(dllexport)
|
|
|
|
# else
|
|
|
|
# define EAPI
|
|
|
|
# endif /* ! DLL_EXPORT */
|
|
|
|
# else
|
|
|
|
# define EAPI __declspec(dllimport)
|
|
|
|
# endif /* ! EFL_${EDI_NAME}_BUILD */
|
|
|
|
#else
|
|
|
|
# ifdef __GNUC__
|
|
|
|
# if __GNUC__ >= 4
|
|
|
|
# define EAPI __attribute__ ((visibility("default")))
|
|
|
|
# else
|
|
|
|
# define EAPI
|
|
|
|
# endif
|
|
|
|
# else
|
|
|
|
# define EAPI
|
|
|
|
# endif
|
|
|
|
#endif /* ! _WIN32 */
|
|
|
|
|
|
|
|
#ifdef __cplusplus
|
|
|
|
extern "C" {
|
|
|
|
#endif
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @file
|
2015-02-02 14:07:02 -08:00
|
|
|
* @brief These routines are used for ${Edi_Name} library interaction.
|
2015-01-31 03:57:51 -08:00
|
|
|
*/
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @brief Init / shutdown functions.
|
|
|
|
* @defgroup Init Init / Shutdown
|
|
|
|
*
|
|
|
|
* @{
|
|
|
|
*
|
|
|
|
* Functions of obligatory usage, handling proper initialization
|
|
|
|
* and shutdown routines.
|
|
|
|
*
|
2015-02-02 14:07:02 -08:00
|
|
|
* Before the usage of any other function, ${Edi_Name} should be properly
|
|
|
|
* initialized with @ref ${edi_name}_init() and the last call to ${Edi_Name}'s
|
2015-01-31 03:57:51 -08:00
|
|
|
* functions should be @ref ${edi_name}_shutdown(), so everything will
|
|
|
|
* be correctly freed.
|
|
|
|
*
|
2015-02-02 14:07:02 -08:00
|
|
|
* ${Edi_Name} logs everything with Eina Log, using the "${edi_name}" log domain.
|
2015-01-31 03:57:51 -08:00
|
|
|
*
|
|
|
|
*/
|
|
|
|
|
|
|
|
/**
|
2015-02-02 14:07:02 -08:00
|
|
|
* Initialize ${Edi_Name}.
|
2015-01-31 03:57:51 -08:00
|
|
|
*
|
2015-02-02 14:07:02 -08:00
|
|
|
* Initializes ${Edi_Name}, its dependencies and modules. Should be the first
|
|
|
|
* function of ${Edi_Name} to be called.
|
2015-01-31 03:57:51 -08:00
|
|
|
*
|
|
|
|
* @return The init counter value.
|
|
|
|
*
|
|
|
|
* @see ${edi_name}_shutdown().
|
|
|
|
*
|
|
|
|
* @ingroup Init
|
|
|
|
*/
|
|
|
|
EAPI int ${edi_name}_init(void);
|
|
|
|
|
|
|
|
/**
|
2015-02-02 14:07:02 -08:00
|
|
|
* Shutdown ${Edi_Name}
|
2015-01-31 03:57:51 -08:00
|
|
|
*
|
2015-02-02 14:07:02 -08:00
|
|
|
* Shutdown ${Edi_Name}. If init count reaches 0, all the internal structures will
|
|
|
|
* be freed. Any ${Edi_Name} library call after this point will leads to an error.
|
2015-01-31 03:57:51 -08:00
|
|
|
*
|
2015-02-02 14:07:02 -08:00
|
|
|
* @return ${Edi_Name}'s init counter value.
|
2015-01-31 03:57:51 -08:00
|
|
|
*
|
|
|
|
* @see ${edi_name}_init().
|
|
|
|
*
|
|
|
|
* @ingroup Init
|
|
|
|
*/
|
|
|
|
EAPI int ${edi_name}_shutdown(void);
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @}
|
|
|
|
*/
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @brief Main group API that wont do anything
|
|
|
|
* @defgroup Main Main
|
|
|
|
*
|
|
|
|
* @{
|
|
|
|
*
|
|
|
|
* @brief A function that doesn't do any good nor any bad
|
|
|
|
*
|
|
|
|
* @ingroup Main
|
|
|
|
*/
|
|
|
|
EAPI void ${edi_name}_library_call(void);
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @}
|
|
|
|
*/
|
|
|
|
|
|
|
|
#ifdef __cplusplus
|
|
|
|
}
|
|
|
|
#endif
|
|
|
|
|
|
|
|
#endif /* ${EDI_NAME}_H_ */
|