1#[allow(non_snake_case, non_camel_case_types, non_upper_case_globals)]
4pub mod root {
5 #[allow(unused_imports)] use self::super::root;
6 pub mod std {
7 #[allow(unused_imports)]
8 use self::super::super::root;
9 }
10 pub mod ale {
11 #[allow(unused_imports)]
12 use self::super::super::root;
13 #[repr(C)]
14 #[repr(align(8))]
15 #[derive(Debug, Copy, Clone)]
16 pub struct ALEState {
17 pub _bindgen_opaque_blob: [u64; 8usize],
18 }
19 #[test]
20 fn bindgen_test_layout_ALEState() {
21 assert_eq!(::std::mem::size_of::<ALEState>(), 64usize, concat!("Size of: ", stringify!(ALEState)));
22 assert_eq!(::std::mem::align_of::<ALEState>(), 8usize, concat!("Alignment of ", stringify!(ALEState)));
23 }
24 #[doc = "This class interfaces ALE with external code for controlling agents."]
25 #[repr(C)]
26 #[repr(align(8))]
27 #[derive(Debug, Copy, Clone)]
28 pub struct ALEInterface {
29 pub _bindgen_opaque_blob: [u64; 5usize],
30 }
31 #[test]
32 fn bindgen_test_layout_ALEInterface() {
33 assert_eq!(::std::mem::size_of::<ALEInterface>(), 40usize, concat!("Size of: ", stringify!(ALEInterface)));
34 assert_eq!(
35 ::std::mem::align_of::<ALEInterface>(),
36 8usize,
37 concat!("Alignment of ", stringify!(ALEInterface))
38 );
39 }
40 }
41 extern "C" {
42 pub fn ALE_new() -> *mut root::ale::ALEInterface;
43 }
44 extern "C" {
45 pub fn ALE_del(ale: *mut root::ale::ALEInterface);
46 }
47 extern "C" {
48 pub fn getString(
49 ale: *mut root::ale::ALEInterface,
50 key: *const ::std::os::raw::c_char,
51 ) -> *const ::std::os::raw::c_char;
52 }
53 extern "C" {
54 pub fn getInt(ale: *mut root::ale::ALEInterface, key: *const ::std::os::raw::c_char) -> ::std::os::raw::c_int;
55 }
56 extern "C" {
57 pub fn getBool(ale: *mut root::ale::ALEInterface, key: *const ::std::os::raw::c_char) -> bool;
58 }
59 extern "C" {
60 pub fn getFloat(ale: *mut root::ale::ALEInterface, key: *const ::std::os::raw::c_char) -> f32;
61 }
62 extern "C" {
63 pub fn setString(
64 ale: *mut root::ale::ALEInterface,
65 key: *const ::std::os::raw::c_char,
66 value: *const ::std::os::raw::c_char,
67 );
68 }
69 extern "C" {
70 pub fn setInt(
71 ale: *mut root::ale::ALEInterface,
72 key: *const ::std::os::raw::c_char,
73 value: ::std::os::raw::c_int,
74 );
75 }
76 extern "C" {
77 pub fn setBool(ale: *mut root::ale::ALEInterface, key: *const ::std::os::raw::c_char, value: bool);
78 }
79 extern "C" {
80 pub fn setFloat(ale: *mut root::ale::ALEInterface, key: *const ::std::os::raw::c_char, value: f32);
81 }
82 extern "C" {
83 pub fn loadROM(ale: *mut root::ale::ALEInterface, rom_file: *const ::std::os::raw::c_char);
84 }
85 extern "C" {
86 pub fn act(ale: *mut root::ale::ALEInterface, action: ::std::os::raw::c_int) -> ::std::os::raw::c_int;
87 }
88 extern "C" {
89 pub fn game_over(ale: *mut root::ale::ALEInterface) -> bool;
90 }
91 extern "C" {
92 pub fn reset_game(ale: *mut root::ale::ALEInterface);
93 }
94 extern "C" {
95 pub fn getAvailableModes(ale: *mut root::ale::ALEInterface, availableModes: *mut ::std::os::raw::c_int);
96 }
97 extern "C" {
98 pub fn getAvailableModesSize(ale: *mut root::ale::ALEInterface) -> ::std::os::raw::c_int;
99 }
100 extern "C" {
101 pub fn setMode(ale: *mut root::ale::ALEInterface, mode: ::std::os::raw::c_int);
102 }
103 extern "C" {
104 pub fn getAvailableDifficulties(
105 ale: *mut root::ale::ALEInterface,
106 availableDifficulties: *mut ::std::os::raw::c_int,
107 );
108 }
109 extern "C" {
110 pub fn getAvailableDifficultiesSize(ale: *mut root::ale::ALEInterface) -> ::std::os::raw::c_int;
111 }
112 extern "C" {
113 pub fn setDifficulty(ale: *mut root::ale::ALEInterface, difficulty: ::std::os::raw::c_int);
114 }
115 extern "C" {
116 pub fn getLegalActionSet(ale: *mut root::ale::ALEInterface, actions: *mut ::std::os::raw::c_int);
117 }
118 extern "C" {
119 pub fn getLegalActionSize(ale: *mut root::ale::ALEInterface) -> ::std::os::raw::c_int;
120 }
121 extern "C" {
122 pub fn getMinimalActionSet(ale: *mut root::ale::ALEInterface, actions: *mut ::std::os::raw::c_int);
123 }
124 extern "C" {
125 pub fn getMinimalActionSize(ale: *mut root::ale::ALEInterface) -> ::std::os::raw::c_int;
126 }
127 extern "C" {
128 pub fn getFrameNumber(ale: *mut root::ale::ALEInterface) -> ::std::os::raw::c_int;
129 }
130 extern "C" {
131 pub fn lives(ale: *mut root::ale::ALEInterface) -> ::std::os::raw::c_int;
132 }
133 extern "C" {
134 pub fn getEpisodeFrameNumber(ale: *mut root::ale::ALEInterface) -> ::std::os::raw::c_int;
135 }
136 extern "C" {
137 pub fn getScreen(ale: *mut root::ale::ALEInterface, screen_data: *mut ::std::os::raw::c_uchar);
138 }
139 extern "C" {
140 pub fn getRAM(ale: *mut root::ale::ALEInterface, ram: *mut ::std::os::raw::c_uchar);
141 }
142 extern "C" {
143 pub fn getRAMSize(ale: *mut root::ale::ALEInterface) -> ::std::os::raw::c_int;
144 }
145 extern "C" {
146 pub fn getScreenWidth(ale: *mut root::ale::ALEInterface) -> ::std::os::raw::c_int;
147 }
148 extern "C" {
149 pub fn getScreenHeight(ale: *mut root::ale::ALEInterface) -> ::std::os::raw::c_int;
150 }
151 extern "C" {
152 pub fn getScreenRGB(ale: *mut root::ale::ALEInterface, output_buffer: *mut ::std::os::raw::c_uchar);
153 }
154 extern "C" {
155 pub fn getScreenGrayscale(ale: *mut root::ale::ALEInterface, output_buffer: *mut ::std::os::raw::c_uchar);
156 }
157 extern "C" {
158 pub fn saveState(ale: *mut root::ale::ALEInterface);
159 }
160 extern "C" {
161 pub fn loadState(ale: *mut root::ale::ALEInterface);
162 }
163 extern "C" {
164 pub fn cloneState(ale: *mut root::ale::ALEInterface) -> *mut root::ale::ALEState;
165 }
166 extern "C" {
167 pub fn restoreState(ale: *mut root::ale::ALEInterface, state: *mut root::ale::ALEState);
168 }
169 extern "C" {
170 pub fn cloneSystemState(ale: *mut root::ale::ALEInterface) -> *mut root::ale::ALEState;
171 }
172 extern "C" {
173 pub fn restoreSystemState(ale: *mut root::ale::ALEInterface, state: *mut root::ale::ALEState);
174 }
175 extern "C" {
176 pub fn deleteState(state: *mut root::ale::ALEState);
177 }
178 extern "C" {
179 pub fn saveScreenPNG(ale: *mut root::ale::ALEInterface, filename: *const ::std::os::raw::c_char);
180 }
181 extern "C" {
182 pub fn encodeState(
183 state: *mut root::ale::ALEState,
184 buf: *mut ::std::os::raw::c_char,
185 buf_len: ::std::os::raw::c_int,
186 );
187 }
188 extern "C" {
189 pub fn encodeStateLen(state: *mut root::ale::ALEState) -> ::std::os::raw::c_int;
190 }
191 extern "C" {
192 pub fn decodeState(
193 serialized: *const ::std::os::raw::c_char,
194 len: ::std::os::raw::c_int,
195 ) -> *mut root::ale::ALEState;
196 }
197 extern "C" {
198 pub fn setLoggerMode(mode: ::std::os::raw::c_int);
199 }
200}