From: Enlightenment C. <no...@cv...> - 2007-04-22 21:02:09
|
Enlightenment CVS committal Author : andreas Project : web Module : www Dir : web/www/p/about/libs/eet Modified Files: en-body Log Message: lib about pages =================================================================== RCS file: /cvs/e/web/www/p/about/libs/eet/en-body,v retrieving revision 1.1 retrieving revision 1.2 diff -u -3 -r1.1 -r1.2 --- en-body 15 Apr 2007 11:32:19 -0000 1.1 +++ en-body 22 Apr 2007 21:01:37 -0000 1.2 @@ -1 +1,88 @@ -<p>Body</p> +<table class='main'> +<tr> +<td class='main'><div class="main"> + +<center><h1>Eet</h1></center> + +<p></p> + +<span class="contentmain"><br /> + + +<p>EET is a tiny library designed to write an arbitary set of chunks of +data to a file and optionally compress each chunk (very much like a zip +file) and allow fast random-access reading of the file later on. It +does not do zip as a zip itself has more complexity than is needed, and +it was much simpler to impliment this once here.</p> + +<p>Eet is extremely fast, small and simple. Eet files can be very small +and highly compressed, making them very optimal for just sending across +the internet without having to archive, compress or decompress and +install them. They allow for lightning-fast random-acess reads once +created, making them perfect for storing data that is written once (or +rarely) and read many times, but the program does not want to have to +read it all in at once.</p> + +<p>It also can encode and decode data structures in memory, as well as +image data for saving to Eet files or sending across the network to +other machines, or just writing to arbitary files on the system. All +data is encoded in a platform independant way and can be written and +read by any architecture.</p> + +<p>Code Example:</p> + +<div class="fragment"> +<pre>#include <Eet.h> + +int main(int argc, char **argv) { + Eet_File *ef; + char buf[1024], *ret, **list; + int size, num, i; + + strcpy(buf, "Here is a string of data to save!"); + + ef = eet_open("/tmp/my_file.eet, EET_FILE_MODE_WRITE); + if (!ef) return -1; + if (!eet_write(ef, "/key/to_store/at", buf, 1024, 1)) + fprintf("Error writing data!n"); + eet_close(ef); + + ef = eet_open("/tmp/my_file.eet, EET_FILE_MODE_READ); + if (!ef) return -1; + list = eet_list(ef, "*", "num); + if (list) + { + for (i = 0; i < num; i++) + printf("Key stored: %sn", list[i]); + free(list); + } + ret = eet_read(ef, "/key/to_store/at", "size); + if (ret) + { + printf("Data read (%i bytes):n%sn", size, ret); + free(ret); + } + eet_close(ef); + + return 0; +}</pre> +</div> + +<p>This code is compiled in the following manner: gcc `eet-config --libs --cflags` eet_example.c -o eet_example</p> + +<p> +EET also provides the CLI "eet" tool which allows for easy EET +management and creation. Supported operations with the tool include +listing the contents of an eet file, and both packing and unpacking +of an eet file, as well as some compression control over files to +be packed. +</p> + + + + +<p class="manager">EET's project manager is <a target="_self" class="lite" href="http://enlightenment.sourceforge.net/Main/The_Team/">Carsten "Rasterman" Haitzler</a>.</p></span> + +</div></td> +</tr> +</table> |