Go to the source code of this file.
|
void | pstcache_touch_bitmap (RDPCLIENT *This, uint8 cache_id, uint16 cache_idx, uint32 stamp) |
|
BOOL | pstcache_load_bitmap (RDPCLIENT *This, uint8 cache_id, uint16 cache_idx) |
|
BOOL | pstcache_save_bitmap (RDPCLIENT *This, uint8 cache_id, uint16 cache_idx, uint8 *key, uint8 width, uint8 height, uint16 length, uint8 *data) |
|
int | pstcache_enumerate (RDPCLIENT *This, uint8 id, HASH_KEY *keylist) |
|
BOOL | pstcache_init (RDPCLIENT *This, uint8 cache_id) |
|
◆ IS_PERSISTENT
#define IS_PERSISTENT |
( |
|
id | ) |
(id < 8 && This->pstcache_fd[id] > 0) |
◆ MAX_CELL_SIZE
◆ pstcache_enumerate()
Definition at line 104 of file pstcache.c.
105{
111
113 return 0;
114
115
116 if (
This->pstcache_enumerated)
117 return 0;
118
119 DEBUG_RDP5((
"Persistent bitmap cache enumeration... "));
121 {
125 break;
126
128 {
130
131
132 if (
This->bitmap_cache_precache && cellhdr.
stamp &&
This->server_depth > 8)
134
135
136 for (
n =
idx;
n > 0 && cellhdr.
stamp < mru_stamp[
n - 1];
n--)
137 {
138 mru_idx[
n] = mru_idx[
n - 1];
139 mru_stamp[
n] = mru_stamp[
n - 1];
140 }
141
143 mru_stamp[
n] = cellhdr.
stamp;
144 }
145 else
146 {
147 break;
148 }
149 }
150
152
156}
int memcmp(void *Buffer1, void *Buffer2, ACPI_SIZE Count)
void cache_rebuild_bmpcache_linked_list(uint8 id, sint16 *idx, int count)
#define BMPCACHE2_NUM_PSTCELLS
int rd_read_file(int fd, void *ptr, int len)
int rd_lseek_file(int fd, int offset)
RD_BOOL pstcache_load_bitmap(uint8 cache_id, uint16 cache_idx)
#define IS_PERSISTENT(id)
#define memcpy(s1, s2, n)
◆ pstcache_init()
Definition at line 160 of file pstcache.c.
161{
164
165 if (
This->pstcache_enumerated)
167
168 This->pstcache_fd[cache_id] = 0;
169
170 if (!(
This->bitmap_cache &&
This->bitmap_cache_persist_enable))
172
174 {
175 DEBUG((
"failed to get/make cache directory!\n"));
177 }
178
179 This->pstcache_Bpp = (
This->server_depth + 7) / 8;
182
186
188 {
189 warning(
"Persistent bitmap caching is disabled. (The file is already in use)\n");
192 }
193
194 This->pstcache_fd[cache_id] =
fd;
196}
void rd_close_file(int fd)
RD_BOOL rd_lock_file(int fd, int start, int len)
RD_BOOL rd_pstcache_mkdir(void)
int rd_open_file(char *filename)
#define sprintf(buf, format,...)
◆ pstcache_load_bitmap()
Definition at line 46 of file pstcache.c.
47{
52
53 if (!
This->bitmap_cache_persist_enable)
55
58
59 fd =
This->pstcache_fd[cache_id];
63
66
68
70 DEBUG((
"Load bitmap from disk: id=%d, idx=%d, bmp=0x%x)\n", cache_id, cache_idx,
bitmap));
72
75}
void cache_put_bitmap(uint8 id, uint16 idx, RD_HBITMAP bitmap)
RD_HBITMAP ui_create_bitmap(int width, int height, uint8 *data)
◆ pstcache_save_bitmap()
Definition at line 79 of file pstcache.c.
81{
84
87
93
94 fd =
This->pstcache_fd[cache_id];
98
100}
int rd_write_file(int fd, void *ptr, int len)
GLint GLenum GLsizei GLsizei GLsizei GLint GLsizei const GLvoid * data
GLint GLint GLsizei GLsizei height
GLint GLint GLsizei width
GLuint GLsizei GLsizei * length
◆ pstcache_touch_bitmap()
Definition at line 32 of file pstcache.c.
33{
35
37 return;
38
39 fd =
This->pstcache_fd[cache_id];
42}
◆ zero_key
const uint8 zero_key[] = { 0, 0, 0, 0, 0, 0, 0, 0 } |