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
|
#!/usr/bin/env python
from ctypes import *
class drm_api(Structure):
pass
drm_api._fields_ = [
("destroy", CFUNCTYPE(None, POINTER(drm_api))),
("name", c_char_p),
("driver_name", c_char_p),
("create_screen",
CFUNCTYPE(c_void_p, POINTER(drm_api), c_int, c_void_p)),
]
class DrmApi(object):
def __init__(self, handle):
self.drm_api = handle.drm_api_create()
def __del__(self):
self.drm_api[0].destroy(self.drm_api)
def create_screen(self, fd):
screen = self.drm_api[0].create_screen(self.drm_api, fd, None)
print screen
@property
def name(self):
return self.drm_api[0].name
|