summaryrefslogtreecommitdiffhomepage
path: root/src/nxt_main.h
diff options
context:
space:
mode:
authorIgor Sysoev <igor@sysoev.ru>2017-01-17 20:00:00 +0300
committerIgor Sysoev <igor@sysoev.ru>2017-01-17 20:00:00 +0300
commit16cbf3c076a0aca6d47adaf3f719493674cf2363 (patch)
treee6530480020f62a2bdbf249988ec3e2a751d3927 /src/nxt_main.h
downloadunit-16cbf3c076a0aca6d47adaf3f719493674cf2363.tar.gz
unit-16cbf3c076a0aca6d47adaf3f719493674cf2363.tar.bz2
Initial version.
Diffstat (limited to 'src/nxt_main.h')
-rw-r--r--src/nxt_main.h180
1 files changed, 180 insertions, 0 deletions
diff --git a/src/nxt_main.h b/src/nxt_main.h
new file mode 100644
index 00000000..24fb80cd
--- /dev/null
+++ b/src/nxt_main.h
@@ -0,0 +1,180 @@
+
+/*
+ * Copyright (C) Igor Sysoev
+ * Copyright (C) NGINX, Inc.
+ */
+
+#ifndef _NXT_LIB_H_INCLUDED_
+#define _NXT_LIB_H_INCLUDED_
+
+
+#include <nxt_auto_config.h>
+
+#include <nxt_unix.h>
+#include <nxt_clang.h>
+#include <nxt_types.h>
+#include <nxt_time.h>
+#include <nxt_process.h>
+
+typedef struct nxt_thread_s nxt_thread_t;
+#include <nxt_thread_id.h>
+
+typedef struct nxt_mem_pool_s nxt_mem_pool_t;
+#include <nxt_mem_pool.h>
+
+#include <nxt_errno.h>
+#include <nxt_file.h>
+
+#include <nxt_random.h>
+#include <nxt_string.h>
+#include <nxt_utf8.h>
+#include <nxt_file_name.h>
+
+typedef struct nxt_log_s nxt_log_t;
+#include <nxt_log.h>
+
+
+#include <nxt_atomic.h>
+#include <nxt_queue.h>
+#include <nxt_rbtree.h>
+#include <nxt_sprintf.h>
+#include <nxt_parse.h>
+
+
+/* TODO: remove unused */
+
+typedef struct nxt_event_fd_s nxt_event_fd_t;
+typedef struct nxt_sockaddr_s nxt_sockaddr_t;
+
+
+#include <nxt_malloc.h>
+#include <nxt_mem_map.h>
+#include <nxt_socket.h>
+#include <nxt_spinlock.h>
+#include <nxt_dyld.h>
+
+#include <nxt_work_queue.h>
+
+
+typedef void *(*nxt_mem_proto_alloc_t)(void *pool, size_t size);
+typedef void (*nxt_mem_proto_free_t)(void *pool, void *p);
+
+typedef struct {
+ nxt_mem_proto_alloc_t alloc;
+ nxt_mem_proto_free_t free;
+} nxt_mem_proto_t;
+
+
+#include <nxt_mem_cache_pool.h>
+#include <nxt_mem_zone.h>
+#include <nxt_mem_pool_cleanup.h>
+#include <nxt_thread_time.h>
+
+typedef struct nxt_event_engine_s nxt_event_engine_t;
+#include <nxt_event_timer.h>
+#include <nxt_fiber.h>
+
+typedef struct nxt_thread_pool_s nxt_thread_pool_t;
+#include <nxt_thread.h>
+
+#include <nxt_signal.h>
+#if (NXT_THREADS)
+#include <nxt_semaphore.h>
+#endif
+
+#include <nxt_djb_hash.h>
+#include <nxt_murmur_hash.h>
+#include <nxt_lvlhsh.h>
+#include <nxt_hash.h>
+
+#include <nxt_sort.h>
+#include <nxt_array.h>
+#include <nxt_vector.h>
+#include <nxt_list.h>
+
+#include <nxt_service.h>
+
+typedef struct nxt_buf_s nxt_buf_t;
+#include <nxt_buf.h>
+#include <nxt_buf_pool.h>
+#include <nxt_recvbuf.h>
+
+typedef struct nxt_event_conn_s nxt_event_conn_t;
+#include <nxt_sendbuf.h>
+
+#include <nxt_log_moderation.h>
+
+#if (NXT_SSLTLS)
+#include <nxt_ssltls.h>
+#endif
+
+
+#define \
+nxt_thread() \
+ (nxt_thread_t *) nxt_thread_get_data(nxt_thread_context)
+
+nxt_thread_extern_data(nxt_thread_t, nxt_thread_context);
+
+
+#include <nxt_thread_log.h>
+
+#include <nxt_event_fd.h>
+
+#include <nxt_chan.h>
+#if (NXT_THREADS)
+#include <nxt_thread_pool.h>
+#endif
+
+
+typedef void (*nxt_event_conn_handler_t)(nxt_thread_t *thr,
+ nxt_event_conn_t *c);
+#include <nxt_listen_socket.h>
+
+#include <nxt_event_conn.h>
+
+#include <nxt_event_file.h>
+
+#include <nxt_event_set.h>
+#include <nxt_event_engine.h>
+
+#include <nxt_job.h>
+#include <nxt_job_file.h>
+#include <nxt_buf_filter.h>
+
+#include <nxt_job_resolve.h>
+#include <nxt_sockaddr.h>
+
+#include <nxt_cache.h>
+
+#include <nxt_source.h>
+typedef struct nxt_upstream_source_s nxt_upstream_source_t;
+
+#include <nxt_stream_source.h>
+#include <nxt_upstream.h>
+#include <nxt_upstream_source.h>
+#include <nxt_http_parse.h>
+#include <nxt_http_source.h>
+#include <nxt_fastcgi_source.h>
+
+
+#if (NXT_LIB_UNIT_TEST)
+#include <../test/nxt_lib_unit_test.h>
+#else
+#define NXT_LIB_UNIT_TEST_STATIC static
+#endif
+
+
+/*
+ * The envp argument must be &environ if application may
+ * change its process title with nxt_process_title().
+ */
+NXT_EXPORT nxt_int_t nxt_lib_start(const char *app, char **argv, char ***envp);
+NXT_EXPORT void nxt_lib_stop(void);
+
+
+NXT_EXPORT extern nxt_uint_t nxt_ncpu;
+NXT_EXPORT extern nxt_uint_t nxt_pagesize;
+NXT_EXPORT extern nxt_random_t nxt_random_data;
+
+
+#endif /* _NXT_LIB_H_INCLUDED_ */