Program Listing for File Animator.hpp¶
↰ Return to documentation for file (include/dish2/web/Animator.hpp)
#pragma once
#ifndef DISH2_WEB_ANIMATOR_HPP_INCLUDE
#define DISH2_WEB_ANIMATOR_HPP_INCLUDE
#include <functional>
#include "../../../third-party/Empirical/include/emp/web/Animate.hpp"
namespace dish2 {
class Animator : public emp::web::Animate {
std::function<void(const bool)> update_and_render_callback;
bool render_toggle{ true };
public:
Animator( std::function<void(const bool)> update_and_render_callback_ )
: update_and_render_callback( update_and_render_callback_ )
{}
void ToggleRender() { render_toggle = !render_toggle; }
void DoFrame() override { update_and_render_callback( render_toggle ); }
};
} // namespace dish2
#endif // #ifndef DISH2_WEB_ANIMATOR_HPP_INCLUDE