1 #ifndef BLOBS_APP_APPLICATION_HPP_
2 #define BLOBS_APP_APPLICATION_HPP_
19 Application(Window &, graphics::Viewport &);
22 Application(const Application &) = delete;
23 Application &operator =(const Application &) = delete;
25 Application(Application &&) = delete;
26 Application &operator =(Application &&) = delete;
29 void PushState(State *);
31 State *SwitchState(State *);
33 bool HasState() const noexcept;
35 /// Loop until states is empty.
37 /// Evaluate a single frame of dt milliseconds.
39 /// Process all events in queue.
44 graphics::Viewport &viewport;
45 std::stack<State *> states;