Switch branches/tags
Nothing to show
Find file
Fetching contributors…
Cannot retrieve contributors at this time
120 lines (99 sloc) 3.58 KB
| PHP Version 5 |
| Copyright (c) 1997-2012 The PHP Group |
| This source file is subject to version 3.01 of the PHP license, |
| that is bundled with this package in the file LICENSE, and is |
| available through the world-wide-web at the following url: |
| |
| If you did not receive a copy of the PHP license and are unable to |
| obtain it through the world-wide-web, please send a note to |
| so we can mail you a copy immediately. |
| Author: |
/* $Id$ */
#define PHP_GRAPHDAT_VERSION "1.0.4"
#include <sys/time.h>
#include "timers.h"
extern zend_module_entry graphdat_module_entry;
#define phpext_graphdat_ptr &graphdat_module_entry
#ifdef PHP_WIN32
# define PHP_GRAPHDAT_API __declspec(dllexport)
#elif defined(__GNUC__) && __GNUC__ >= 4
# define PHP_GRAPHDAT_API __attribute__ ((visibility("default")))
typedef int (*pfnAvail)(TSRMLS_D);
typedef char* (*pfnGetPath)(size_t *slen TSRMLS_DC);
struct graphdat_plugin
pfnAvail isAvailable;
pfnGetPath getPath;
struct graphdat_plugin_list
int count;
struct graphdat_plugin *array;
Declare any global variables you may need between the BEGIN
and END macros here:
// items for settings
long socketPort;
char *socketFile;
int debug;
// items that are used when running
int socketFD;
int isDirty;
struct timeval requestStart;
struct graphdat_timer_list timers;
struct graphdat_plugin_list plugins;
// ini file items for plugins
int enable_joomla;
int enable_drupal;
int enable_magento;
int enable_cakephp;
int enable_zend;
int all_plugins_enabled;
/* In every utility function you add that needs to use variables
in php_graphdat_globals, call TSRMLS_FETCH(); after declaring other
variables used by that function, or better yet, pass in TSRMLS_CC
after the last function argument and declare your utility function
with TSRMLS_DC after the last declared argument. Always refer to
the globals in your function as GRAPHDAT_G(variable). You are
encouraged to rename these macros something shorter, see
examples in any other php module directory.
#ifdef ZTS
#define GRAPHDAT_GLOBALS(v) TSRMG(graphdat_globals_id, zend_graphdat_globals *, v)
#define GRAPHDAT_GLOBALS(v) (graphdat_globals.v)
#define PRINTDEBUG(str, ...) if(GRAPHDAT_GLOBALS(debug)) zend_error(E_NOTICE, str, ##__VA_ARGS__)
// #define PRINTDEBUG(str, ...) zend_printf(str, ##__VA_ARGS__)
#endif /* PHP_GRAPHDAT_H */
* Local variables:
* tab-width: 4
* c-basic-offset: 4
* End:
* vim600: noet sw=4 ts=4 fdm=marker
* vim<600: noet sw=4 ts=4