summaryrefslogtreecommitdiff
path: root/Examples/test-suite/enum_missing.i
blob: 8a436ba3695ad3d81bc2c4bc05423868c78071f3 (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
%module enum_missing

// Test when SWIG does not parse the enum definition
%{
enum AVPixelFormat {
    AV_PIX_FMT_NONE = -1,
    AV_PIX_FMT_YUV420P
};
enum AVPixelFormat2 {
    AV_PIX_FMT_NONE2 = -1,
    AV_PIX_FMT_YUV420P2
};

%}

%inline %{
typedef struct AVCodecCtx {
  enum AVPixelFormat pix_fmt;
  enum AVPixelFormat2 pix_fmt2;
} AVCodecCtx;

enum AVPixelFormat global_fmt;
enum AVPixelFormat2 global_fmt2;

enum AVPixelFormat use_pixel_format(enum AVPixelFormat px) {
  return px;
}
enum AVPixelFormat * use_pixel_format_ptr(enum AVPixelFormat *px) {
  return px;
}

enum AVPixelFormat2 use_pixel_format2(const enum AVPixelFormat2 px) {
  return px;
}
const enum AVPixelFormat2 * use_pixel_format_ptr2(const enum AVPixelFormat2 *px) {
  return px;
}
%}