Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

Latest commit

 

History

History
History
54 lines (45 loc) · 1.77 KB

File metadata and controls

54 lines (45 loc) · 1.77 KB
Copy raw file
Download raw file
Open symbols panel
Edit and raw actions
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
# Copyright (c) 2012-2014 The CEF Python authors. All rights reserved.
# License: New BSD License.
# Website: http://code.google.com/p/cefpython/
cdef PaintBuffer CreatePaintBuffer(const void* buffer, int width, int height):
cdef PaintBuffer paintBuffer = PaintBuffer()
paintBuffer.buffer = buffer
paintBuffer.width = width
paintBuffer.height = height
paintBuffer.length = width*height*4
return paintBuffer
cdef class PaintBuffer:
cdef const void* buffer
cdef int width
cdef int height
cdef Py_ssize_t length
cpdef long long GetIntPointer(self) except *:
return <long long>self.buffer
cpdef object GetString(self, str mode="bgra", str origin="top-left"):
cdef void* dest
cdef py_bool dest_alloced = False
cdef object ret
origin = origin.lower()
mode = mode.lower()
assert origin in ("top-left", "bottom-left"), "Invalid origin"
assert mode in ("bgra", "rgba"), "Invalid mode"
# To get rid of a Cython warning:
# | ‘__pyx_v_dest’ may be used uninitialized in this function
dest = <void*>malloc(0)
if mode == "rgba":
if not dest_alloced:
dest = <void*>malloc(self.length)
dest_alloced = True
SwapBufferFromBgraToRgba(dest, self.buffer, self.width,
self.height)
if origin == "bottom-left":
if not dest_alloced:
dest = <void*>malloc(self.length)
dest_alloced = True
FlipBufferUpsideDown(dest, self.buffer, self.width, self.height)
if dest_alloced:
ret = (<char*>dest)[:self.length]
free(dest)
return ret
else:
return (<char*>self.buffer)[:self.length]
Morty Proxy This is a proxified and sanitized view of the page, visit original site.