PCB Environment 2
Loading...
Searching...
No Matches
Env.hpp
1
2#ifndef GYM_PCB_ENV_H
3#define GYM_PCB_ENV_H
4
5class Env
6{
7public:
8 Env();
9 virtual ~Env();
10
11 virtual PyObject *reset() = 0;
12
13 virtual PyObject *step(PyObject *action) = 0;
14
15 virtual void render(PyObject *command) = 0;
16
17 virtual void seed(PyObject *) = 0;
18
19 virtual void close() { }
20
21 virtual PyObject *set_task(PyObject *) = 0;
22
23 virtual PyObject *run_agent(PyObject *) = 0;
24
25 virtual PyObject *set_agent(PyObject *) = 0;
26
27 virtual PyObject *get_state(PyObject *spec) = 0;
28
29 virtual PyObject *__str__() const = 0;
30
31 virtual Env *__enter__() { return this; }
32
33 virtual bool __exit__() { close(); return false; }
34};
35
36Env *create_env(PyObject *spec);
37
38#endif // GYM_PCB_ENV_H
Definition Env.hpp:6