WWW-www.enlightenment.org pushed a commit to branch master. http://git.enlightenment.org/website/www-content.git/commit/?id=479508c17fcd48ef36272fad27d8fc3e0fe4560f
commit 479508c17fcd48ef36272fad27d8fc3e0fe4560f Author: Nate Drake <[email protected]> Date: Thu Nov 16 10:07:33 2017 -0800 Wiki page about-efl-draft.md changed with summary [created] by Nate Drake --- pages/playgroud/about-efl-draft.md.txt | 94 ++++++++++++++++++++++++++++++++++ 1 file changed, 94 insertions(+) diff --git a/pages/playgroud/about-efl-draft.md.txt b/pages/playgroud/about-efl-draft.md.txt new file mode 100644 index 00000000..b4642aa6 --- /dev/null +++ b/pages/playgroud/about-efl-draft.md.txt @@ -0,0 +1,94 @@ +--- +~~Title: About EFL~~ +~~NOCACHE~~ +--- + +[Download EFL Here](/download) + +Code quality - [EFL Coverity scan status](https://scan.coverity.com/projects/552) + + + +EFL is made up of quite a few libraries that build on top of each other +in layers, steadily becoming higher-level, yet allowing access to +each level as they go. The higher up you go, the less you have to do +yourself. Elementary is about as high up as you get, while you still +access layers below it for day to day things as there is no need for +it to wrap things that work perfectly well as-is. + +All of EFL exposes its APIs by default in C, with several bindings +available. We are now also working on supporting bindings for various +language as first-class-citizens in EFL by auto-generating the +bindings directly from our new object orientation infrastructure for +C. We stick to C mostly because the libraries have been around for a +long time, were originally written in C and the developers who write +the libraries prefer C. We add OO features in C with tools and +infrastructure where needed. Also moving from C would limit the +audience. C programmers won't be able to access a %%C++%% API (whereas a +%%C++%% programmer can access both C and %%C++%%). That is partly why we aim +to auto-generate bindings so programmers of various languages can get +native-like APIs for their chose language from the same core EFL API +set. + +Our components are divided into named libraries or projects. Core EFL +components are: + +^Component ^ Description ^ +|Evas |Core scene graph and rendering | +|Eina |Data structures and low level helpers | +|Edje |UI layout & animation data files for themes | +|Eet |Data (de)serialization and storage | +|Ecore |Core loop and system abstractions like X11 | +|Efreet |Freedesktop.org standards handling | +|Eldbus |D-Bus glue and handling | +|Embryo |Tiny VM and compiler based on Pawn | +|Eeze |Device enumeration and access library | +|Emotion |Video decode wrapping, glue and abstraction | +|Ethumb |Thumbnailing handler | +|Ephysics |Physics (bullet) wrapper and Evas glue | +|EIO |Asynchronous I/O handling | +|Evas Generic Loaders |Extra image loaders for complex image types | +|Emotion Generic Players |Extra video decoders (for VLC) | +|Elementary |Widgets and high level abstractions | + +Binding support exists for several languages such as: + + * Python + * Javascript + * %%C++%% + * Ruby + * Lua + +EFL was originally intended to provide the core for Enlightenment, but +has grown to do much more. In trying to keep EFL lean, it has found a +use for embedded devices all the way up to powerful desktop behemoths. + +These libraries already power millions of systems, from mobile +phones to set top boxes, desktops, laptops, game systems and more. It +is only now being recognized for its forward-thinking approaches, as +products and designers want to do more than the boring functional user +experiences of the past. This is where EFL excels. + +[[http://www.free.fr|Free.fr]] has shipped millions of set top boxes in +France, powered by EFL. The +[[http://wiki.openmoko.org/wiki/Neo_FreeRunner|Openmoko Freerunner]] +sold thousands of devices with EFL and Enlightenment on them. +[[http://www.yellowdoglinux.com/|Yellow Dog Linux]] for the Sony PS3 +ships with Enlightenment as the default. EFL has been used on printers, +netbooks and more. It powers the +[[http://www.samsung.com/us/mobile/wearable-tech|Samsung Galaxy Gear]] +watches (Gear 2, S, S2, S3...), is behind the +[[http://www.samsung.com/in/consumer/mobile-phone/mobile-phone/dual-sim-phone/SM-Z130HZKDINS|Samsung Z1 ]], +[[http://www.samsung.com/in/microsite/z2|Z2]] and +[[http://www.samsung.com/in/microsite/z3|Z3]] mobile phones, +and the +[[http://www.samsung.com/us/video/4k-suhd-tv|Samsung SUHD Smart TVs]] +that run Tizen. Cameras also use Enlightenment and EFL such as the +[[http://www.samsung.com/uk/discover/camera/find-your-signature-with-samsung-nx1/|Samsung NX1]] +and the +[[http://www.samsung.com/global/nx/nx300m/|Samsung NX300M]] smart +Camera. Also GPS units such as models from +[[https://www.moncoyote.com/|Coyote]] Run EFL on a lean and mean RTOS. +Also Web conference cameras such as +[[https://www.biscotti.com/|Biscotti]] use EFL to do their work. + --
