3 #include "combined/model/hover.h" 4 #include "combined/model/min_size_vector.h" 6 #include "core/geo/box.h" 8 #include "cereal/types/base_class.hpp" 18 explicit source(std::string name =
"new source",
19 glm::vec3 position = glm::vec3{0});
21 void set_name(std::string name);
22 std::string get_name()
const;
24 void set_position(
const glm::vec3& position);
25 glm::vec3 get_position()
const;
28 const auto&
hover_state()
const {
return get<0>(); }
31 template <
typename Archive>
32 void serialize(Archive& archive) {
33 archive(name_, position_);
36 NOTIFYING_COPY_ASSIGN_DECLARATION(
source)
38 inline void swap(
source& other) noexcept {
40 swap(name_, other.name_);
41 swap(position_, other.position_);
Definition: capsule_base.h:9
A vector which must hold some minimum number of elements.
Definition: min_size_vector.h:11