/[rdesktop]/jpeg/rdesktop/trunk/pstcache.c
This is repository of my old source code which isn't updated any more. Go to git.rot13.org for current projects!
ViewVC logotype

Diff of /jpeg/rdesktop/trunk/pstcache.c

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

sourceforge.net/trunk/rdesktop/pstcache.c revision 1042 by astrand, Tue Jan 24 12:40:24 2006 UTC jpeg/rdesktop/trunk/pstcache.c revision 1507 by dpavlin, Mon Jul 20 16:45:11 2009 UTC
# Line 1  Line 1 
1  /* -*- c-basic-offset: 8 -*-  /* -*- c-basic-offset: 8 -*-
2     rdesktop: A Remote Desktop Protocol client.     rdesktop: A Remote Desktop Protocol client.
3     Persistent Bitmap Cache routines     Persistent Bitmap Cache routines
4     Copyright (C) Jeroen Meijer 2004-2005     Copyright (C) Jeroen Meijer 2004-2008
5    
6     This program is free software; you can redistribute it and/or modify     This program is free software; you can redistribute it and/or modify
7     it under the terms of the GNU General Public License as published by     it under the terms of the GNU General Public License as published by
# Line 25  Line 25 
25  #define IS_PERSISTENT(id) (id < 8 && g_pstcache_fd[id] > 0)  #define IS_PERSISTENT(id) (id < 8 && g_pstcache_fd[id] > 0)
26    
27  extern int g_server_depth;  extern int g_server_depth;
28  extern BOOL g_bitmap_cache;  extern RD_BOOL g_bitmap_cache;
29  extern BOOL g_bitmap_cache_persist_enable;  extern RD_BOOL g_bitmap_cache_persist_enable;
30  extern BOOL g_bitmap_cache_precache;  extern RD_BOOL g_bitmap_cache_precache;
31    
32  int g_pstcache_fd[8];  int g_pstcache_fd[8];
33  int g_pstcache_Bpp;  int g_pstcache_Bpp;
34  BOOL g_pstcache_enumerated = False;  RD_BOOL g_pstcache_enumerated = False;
35  uint8 zero_key[] = { 0, 0, 0, 0, 0, 0, 0, 0 };  uint8 zero_key[] = { 0, 0, 0, 0, 0, 0, 0, 0 };
36    
37    
# Line 50  pstcache_touch_bitmap(uint8 cache_id, ui Line 50  pstcache_touch_bitmap(uint8 cache_id, ui
50  }  }
51    
52  /* Load a bitmap from the persistent cache */  /* Load a bitmap from the persistent cache */
53  BOOL  RD_BOOL
54  pstcache_load_bitmap(uint8 cache_id, uint16 cache_idx)  pstcache_load_bitmap(uint8 cache_id, uint16 cache_idx)
55  {  {
56          uint8 *celldata;          uint8 *celldata;
57          int fd;          int fd;
58          CELLHEADER cellhdr;          CELLHEADER cellhdr;
59          HBITMAP bitmap;          RD_HBITMAP bitmap;
60    
61          if (!g_bitmap_cache_persist_enable)          if (!g_bitmap_cache_persist_enable)
62                  return False;                  return False;
# Line 71  pstcache_load_bitmap(uint8 cache_id, uin Line 71  pstcache_load_bitmap(uint8 cache_id, uin
71          rd_read_file(fd, celldata, cellhdr.length);          rd_read_file(fd, celldata, cellhdr.length);
72    
73          bitmap = ui_create_bitmap(cellhdr.width, cellhdr.height, celldata);          bitmap = ui_create_bitmap(cellhdr.width, cellhdr.height, celldata);
74          DEBUG(("Load bitmap from disk: id=%d, idx=%d, bmp=0x%x)\n", cache_id, cache_idx, bitmap));          DEBUG(("Load bitmap from disk: id=%d, idx=%d, bmp=0x%x)\n", cache_id, cache_idx,
75                   (unsigned int) bitmap));
76          cache_put_bitmap(cache_id, cache_idx, bitmap);          cache_put_bitmap(cache_id, cache_idx, bitmap);
77    
78          xfree(celldata);          xfree(celldata);
# Line 79  pstcache_load_bitmap(uint8 cache_id, uin Line 80  pstcache_load_bitmap(uint8 cache_id, uin
80  }  }
81    
82  /* Store a bitmap in the persistent cache */  /* Store a bitmap in the persistent cache */
83  BOOL  RD_BOOL
84  pstcache_save_bitmap(uint8 cache_id, uint16 cache_idx, uint8 * key,  pstcache_save_bitmap(uint8 cache_id, uint16 cache_idx, uint8 * key,
85                       uint16 width, uint16 height, uint16 length, uint8 * data)                       uint8 width, uint8 height, uint16 length, uint8 * data)
86  {  {
87          int fd;          int fd;
88          CELLHEADER cellhdr;          CELLHEADER cellhdr;
# Line 107  pstcache_save_bitmap(uint8 cache_id, uin Line 108  pstcache_save_bitmap(uint8 cache_id, uin
108  int  int
109  pstcache_enumerate(uint8 id, HASH_KEY * keylist)  pstcache_enumerate(uint8 id, HASH_KEY * keylist)
110  {  {
111          int fd, idx, n;          int fd, n;
112            uint16 idx;
113          sint16 mru_idx[0xa00];          sint16 mru_idx[0xa00];
114          uint32 mru_stamp[0xa00];          uint32 mru_stamp[0xa00];
115          CELLHEADER cellhdr;          CELLHEADER cellhdr;
# Line 159  pstcache_enumerate(uint8 id, HASH_KEY * Line 161  pstcache_enumerate(uint8 id, HASH_KEY *
161  }  }
162    
163  /* initialise the persistent bitmap cache */  /* initialise the persistent bitmap cache */
164  BOOL  RD_BOOL
165  pstcache_init(uint8 cache_id)  pstcache_init(uint8 cache_id)
166  {  {
167          int fd;          int fd;

Legend:
Removed from v.1042  
changed lines
  Added in v.1507

  ViewVC Help
Powered by ViewVC 1.1.26