ale_sys/
bindings.rs

1/* automatically generated by rust-bindgen */
2
3#[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}