* eina: Add first version of a Quad Tree data type.

NOTE: consider the API experimental and subject to change.


SVN revision: 48424
This commit is contained in:
Cedric BAIL 2010-04-29 17:21:14 +00:00
parent 49c0a1e6e2
commit 9367b5f7c7
11 changed files with 23 additions and 5 deletions

View File

@ -143,6 +143,7 @@ extern "C" {
#include "eina_matrixsparse.h" #include "eina_matrixsparse.h"
#include "eina_str.h" #include "eina_str.h"
#include "eina_strbuf.h" #include "eina_strbuf.h"
#include "eina_quadtree.h"
#ifdef __cplusplus #ifdef __cplusplus
} }

View File

@ -45,7 +45,8 @@ eina_matrixsparse.h \
eina_inline_tiler.x \ eina_inline_tiler.x \
eina_str.h \ eina_str.h \
eina_inline_str.x \ eina_inline_str.x \
eina_strbuf.h eina_strbuf.h \
eina_quadtree.h
installed_mainheaderdir = $(includedir)/eina-@VMAJ@ installed_mainheaderdir = $(includedir)/eina-@VMAJ@
dist_installed_mainheader_DATA = Eina.h eina_config.h dist_installed_mainheader_DATA = Eina.h eina_config.h

View File

@ -19,6 +19,9 @@
#ifndef EINA_MAIN_H_ #ifndef EINA_MAIN_H_
#define EINA_MAIN_H_ #define EINA_MAIN_H_
#include "eina_types.h"
/** /**
* @addtogroup Eina_Core_Group Core * @addtogroup Eina_Core_Group Core
* *

View File

@ -82,6 +82,9 @@
#define EINA_MAGIC_STRBUF 0x98761250 #define EINA_MAGIC_STRBUF 0x98761250
#define EINA_MAGIC_QUADTREE 0x98761251
#define EINA_MAGIC_QUADTREE_ROOT 0x98761252
#define EINA_MAGIC_QUADTREE_ITEM 0x98761253
/* undef the following, we want out version */ /* undef the following, we want out version */
#undef FREE #undef FREE

View File

@ -38,7 +38,8 @@ eina_tiler.c \
eina_hamster.c \ eina_hamster.c \
eina_safety_checks.c \ eina_safety_checks.c \
eina_str.c \ eina_str.c \
eina_strbuf.c eina_strbuf.c \
eina_quadtree.c
if EINA_STATIC_BUILD_CHAINED_POOL if EINA_STATIC_BUILD_CHAINED_POOL
base_sources += $(top_srcdir)/src/modules/mp/chained_pool/eina_chained_mempool.c base_sources += $(top_srcdir)/src/modules/mp/chained_pool/eina_chained_mempool.c

View File

@ -100,6 +100,7 @@ S(counter);
S(benchmark); S(benchmark);
S(rectangle); S(rectangle);
S(strbuf); S(strbuf);
S(quadtree);
#undef S #undef S
struct eina_desc_setup struct eina_desc_setup
@ -127,7 +128,8 @@ static const struct eina_desc_setup _eina_desc_setup[] = {
S(counter), S(counter),
S(benchmark), S(benchmark),
S(rectangle), S(rectangle),
S(strbuf) S(strbuf),
S(quadtree)
#undef S #undef S
}; };
static const size_t _eina_desc_setup_len = sizeof(_eina_desc_setup) / sizeof(_eina_desc_setup[0]); static const size_t _eina_desc_setup_len = sizeof(_eina_desc_setup) / sizeof(_eina_desc_setup[0]);

View File

@ -56,7 +56,8 @@ eina_test_list.c \
eina_test_matrixsparse.c \ eina_test_matrixsparse.c \
eina_test_tiler.c \ eina_test_tiler.c \
eina_test_strbuf.c \ eina_test_strbuf.c \
eina_test_str.c eina_test_str.c \
eina_test_quadtree.c
eina_suite_LDADD = @CHECK_LIBS@ $(top_builddir)/src/lib/libeina.la eina_suite_LDADD = @CHECK_LIBS@ $(top_builddir)/src/lib/libeina.la
@ -94,7 +95,8 @@ evas_hash.c \
evas_list.c \ evas_list.c \
evas_mempool.c \ evas_mempool.c \
evas_object_list.c \ evas_object_list.c \
evas_stringshare.c evas_stringshare.c \
eina_bench_quad.c
eina_bench_LDADD = @GLIB_LIBS@ $(top_builddir)/src/lib/libeina.la eina_bench_LDADD = @GLIB_LIBS@ $(top_builddir)/src/lib/libeina.la

View File

@ -42,6 +42,7 @@ static const Eina_Benchmark_Case etc[] = {
{ "Sort", eina_bench_sort }, { "Sort", eina_bench_sort },
{ "Mempool", eina_bench_mempool }, { "Mempool", eina_bench_mempool },
{ "Rectangle_Pool", eina_bench_rectangle_pool }, { "Rectangle_Pool", eina_bench_rectangle_pool },
{ "Render Loop", eina_bench_quadtree },
{ NULL, NULL } { NULL, NULL }
}; };

View File

@ -28,6 +28,7 @@ void eina_bench_convert(Eina_Benchmark *bench);
void eina_bench_sort(Eina_Benchmark *bench); void eina_bench_sort(Eina_Benchmark *bench);
void eina_bench_mempool(Eina_Benchmark *bench); void eina_bench_mempool(Eina_Benchmark *bench);
void eina_bench_rectangle_pool(Eina_Benchmark *bench); void eina_bench_rectangle_pool(Eina_Benchmark *bench);
void eina_bench_quadtree(Eina_Benchmark *bench);
/* Specific benchmark. */ /* Specific benchmark. */
void eina_bench_e17(void); void eina_bench_e17(void);

View File

@ -58,6 +58,7 @@ static const Eina_Test_Case etc[] = {
{ "Eina Tiler", eina_test_tiler }, { "Eina Tiler", eina_test_tiler },
{ "Eina Strbuf", eina_test_strbuf }, { "Eina Strbuf", eina_test_strbuf },
{ "String", eina_test_str }, { "String", eina_test_str },
{ "QuadTree", eina_test_quadtree },
{ NULL, NULL } { NULL, NULL }
}; };

View File

@ -45,5 +45,7 @@ void eina_test_matrixsparse(TCase *tc);
void eina_test_tiler(TCase *tc); void eina_test_tiler(TCase *tc);
void eina_test_strbuf(TCase *tc); void eina_test_strbuf(TCase *tc);
void eina_test_str(TCase *tc); void eina_test_str(TCase *tc);
void eina_test_quadtree(TCase *tc);
void eina_test_fp(TCase *tc);
#endif /* EINA_SUITE_H_ */ #endif /* EINA_SUITE_H_ */