summaryrefslogtreecommitdiff
path: root/py/pykms.i
blob: 0939805b5e788313ff1897d8c9e6eaa27e026635 (plain)
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
%module(directors="1") pykms
%{
#include "kms++.h"

#include "kmstest.h"

using namespace kms;
%}

%include "std_string.i"
%include "stdint.i"
%include "std_vector.i"
%include "std_map.i"

%feature("director") PageFlipHandlerBase;

%include "decls.h"
%include "drmobject.h"
%include "atomicreq.h"
%include "crtc.h"
%include "card.h"
%include "property.h"
%include "framebuffer.h"
%include "dumbframebuffer.h"
%include "plane.h"
%include "connector.h"
%include "encoder.h"
%include "pagefliphandler.h"
%include "videomode.h"

%include "color.h"
%include "kmstest.h"

%template(ConnectorVector) std::vector<kms::Connector*>;
%template(CrtcVector) std::vector<kms::Crtc*>;
%template(EncoderVector) std::vector<kms::Encoder*>;
%template(PlaneVector) std::vector<kms::Plane*>;
/* for some reason uint64_t doesn't compile on 64 bit pc */
/* %template(map_u32_u64) std::map<uint32_t, uint64_t>; */
%template(map_u32_u64) std::map<uint32_t, unsigned long long>;