Commit Graph

20 Commits

Author SHA1 Message Date
Rafael Antognolli 665cffc165 evas/cserve2: Set image->flags.loaded on loaded_handle.
The flag and pixel data will be set on this callback, avoiding new
image_load_data() to create a new request or wait for the LOADED
message.



SVN revision: 73999
2012-07-17 15:14:54 +00:00
Rafael Antognolli 0efde61fef evas/cserve2: Don't set image loaded if we didn't get
pixel data yet.



SVN revision: 73998
2012-07-17 15:14:01 +00:00
Iván Briano 39040ba07a Set load options in the SETOPTS message
SVN revision: 73990
2012-07-17 14:24:08 +00:00
Iván Briano 0e2294db55 Move image opening/loading to the new requests system
A lot going on here:
 - Request callbacks were adapted to fit the new scheme
 - The old requests systems in the cache was wiped out
 - Old slave handling in evas_cserve2_main.c is dead too
 - PRELOAD commands are responded with LOADED now



SVN revision: 73984
2012-07-17 14:23:09 +00:00
Rafael Antognolli 8ef623d3b5 evas/cserve2: The slave should measure the time spent
loading glyphs.
Instead of measuring the time spent by the server between asking and
receiving the glyphs rendered, we measure now the time spent by the
slave to load the glyph, and then to render it, and then we report this
time to the server.



SVN revision: 73373
2012-07-05 18:42:22 +00:00
Iván Briano d744044de7 Don't block waiting for response to font_load before
requesting glyphs, the server can handle dependencies
 now.



SVN revision: 73059
2012-06-29 22:04:13 +00:00
Rafael Antognolli a6a92632b0 evas/cserve2: Calculate average time saved on glyph
rendering.



SVN revision: 72829
2012-06-25 20:06:50 +00:00
Rafael Antognolli 2234422dab evas/cserve2: Add entries loading saved time.
Still must add glyphs loading saved time.



SVN revision: 72828
2012-06-25 20:06:44 +00:00
Rafael Antognolli 6a3abcaa89 evas/cserve2: Add image size and loading time stats.
SVN revision: 72812
2012-06-25 14:40:30 +00:00
Rafael Antognolli 6aace19c0d evas/cserve2: Silent some warnings (and also fix wrong
code).



SVN revision: 72705
2012-06-22 21:54:26 +00:00
Rafael Antognolli e09a542403 evas/cserve2: Rename some stats and add some more for font
loading.



SVN revision: 72704
2012-06-22 21:43:50 +00:00
Rafael Antognolli 0b675aae17 evas/cserve2: Change our fash implemenation name.
So the names won't clash.



SVN revision: 72701
2012-06-22 20:56:53 +00:00
Rafael Antognolli 2f3426b67c evas/cserve2: CServe2 client side lib modifications.
Add the calls to request font loading and glyphs on the client lib.



SVN revision: 72700
2012-06-22 20:31:31 +00:00
Rafael Antognolli 64fecc2fab evas/cserve2: Add font and glyphs loading implementation
to cserve2.
Big commit that implements the entire functionality. Besides loading
fonts and glyphs, and sharing the glyph bitmaps with clients, it also
adds:
- new request system, with a much better abstraction;
- new working slaves management;
- slaves can be threads or process now;
- started a debugging and statistics implementation on server.

The image caching part still uses the old request and slaves system, but
should be changed to use the new one soon and get more easily
maintainable.



SVN revision: 72699
2012-06-22 20:31:17 +00:00
Rafael Antognolli de28f1ed31 evas/cserve2: Add common fash for glyphs.
Fash was made available on a common file, so its implementation is
shared between server and client.



SVN revision: 72698
2012-06-22 20:31:09 +00:00
Rafael Antognolli 9398a60c22 evas/cserve2: Adding message structs for font rendering
communication.



SVN revision: 71360
2012-05-23 18:09:57 +00:00
Carsten Haitzler 69bd9ce72e let's make server work out of the box if u set:
export EVAS_CSERVE2=1

(and run cserve2)



SVN revision: 71274
2012-05-21 08:44:55 +00:00
Iván Briano b0907e89b8 LEAKS! GONE!
- Cleanup cache2 things on shutdown
 - Use Eina_File instead of straight shm_open + mmap when loading things from cserve2
 - Do free the mapped images when we don't need them


SVN revision: 70936
2012-05-11 20:12:56 +00:00
Iván Briano c97f25128b cserve2 warnings begone
SVN revision: 70845
2012-05-07 17:22:06 +00:00
Iván Briano 15328efb85 evas/cserve2: fix typo that kept cserve2 disabled
now seriously...

Introducing Cache Serve 2.

This cache server will initially load images for clients connected to
it. It starts slave processes to load these images, and share the loaded
images through shm with the clients. All the connection done between
clients and the server goes through sockets.

The cserve2 build option is turned on by default, while the old cserve
was disabled, but in order to make clients use it, the environment
variable EVAS_CSERVE2 must be set, and a server must be running.

Clients will try to find the socket on a specified location using the
environment variable EVAS_CSERVE2_SOCKET. If it's not defined, then the
XDG_RUNTIME_DIR path should be used, and finally HOME, TMPDIR and /tmp.



SVN revision: 70699
2012-05-03 21:01:31 +00:00