Program Listing for File Scene.h#
↰ Return to documentation for file (src/main/cpp/lib/Scene.h)
#ifndef SCENE_H_
#define SCENE_H_
#include <algorithm>
#include "CairoDrawer.h"
#include "DataSet.h"
#include "Configuration.h"
#include "IOVector.h"
class Scene
{
private:
DefDataSet m_set;
std::unique_ptr<Drawer> m_drawer;
OutputGrid m_grid;
std::vector<InputAxis> m_axis;
std::vector<IOVector> m_iov;
public:
Scene ();
void
update (void);
std::vector<DefVariable>
get_input_variables () const;
std::vector<DefVariable>
get_output_variables () const;
void
toggle_input (std::size_t index, bool mode);
void
toggle_output (std::size_t index, bool mode);
void
swap_inputs (std::size_t from_index, std::size_t to_index);
void
swap_outputs (std::size_t from_index, std::size_t to_index);
void
restrict_input (std::size_t index, double lower_restr, double upper_restr);
void
restrict_output (std::size_t index, double lower_restr, double upper_restr);
void
save_data (std::string file_path);
private:
void
draw_components (void);
void
initialize (void);
};
#endif /* SCENE_H_ */