Tizen Native API
|
- Date:
- 2008 (created)
Table of Contents
Introduction
The Eina library is a library that implements an API for data types in an efficient way. It also provides some useful tools like opening shared libraries, errors management, type conversion, time accounting and memory pool.
This library is cross-platform and can be compiled and used on Linux, BSD, Opensolaris and Windows (XP and CE).
The data types that are available are (see Data Types):
- Eina_Fp_Group standard floating point numbers.
- Inline Array standard array of inlined members.
- Array standard array of
void*
data. - Hash Table standard hash of
void*
data. - Inline List list with nodes inlined into user type.
- Compact List Compact List.
- List standard list of
void*
data. - Iterator Functions Iterator functions.
- Sparse Matrix sparse matrix of
void*
data. - Red-Black tree red-black tree with nodes inlined into user type.
- String Buffer mutable string to prepend, insert or append strings to a buffer.
- Stringshare saves memory by sharing read-only string references.
- Tiler split, merge and navigates into 2D tiled regions.
- Trash container of unused but allocated data.
- Eina_Value_Group container for generic value storage and access.
- Eina_Model_Group container for data with user defined hierarchy/structure.
The tools that are available are (see Tools):
- Eina_Benchmark_Group helper to write benchmarks.
- Convert faster conversion from strings to integers, double, etc.
- Counter measures number of calls and their time.
- Eina_Cpu_Group Cpu and architecture related helpers.
- Error error identifiers.
- Eina_File_Group simple file list and path split.
- Lazy allocator simple lazy allocator.
- Eina_Log_Group full-featured logging system.
- Eina_Magic_Group provides runtime type checking.
- Eina_Memory_Pool_Group abstraction for various memory allocators.
- Module lists, loads and share modules using Eina_Module standard.
- Rectangle rectangle structure and standard manipulation methods.
- Eina_Safety_Checks_Group extra checks that will report unexpected conditions and can be disabled at compile time.
- String a set of functions that manages C strings.
How to compile
Eina is a library your application links to. The procedure for this is very simple. You simply have to compile your application with the appropriate compiler flags that the pkg-config
script outputs. For example:
Compiling C or C++ files into object files:
gcc -c -o main.o main.c `pkg-config --cflags eina`
Linking object files into a binary executable:
gcc -o my_application main.o `pkg-config --libs eina`
See pkgconfig
Next Steps
After you understood what Eina is and installed it in your system you should proceed understanding the programming interface.
Recommended reading:
- Data Types to find about implemented types and how to use them.
- Tools to find about helper tools provided by eina.
Introductory Example
More examples can be found at Eina Examples.