#pragma once #include "datatypes/signal.h" #include "objects/annotation.h" #include "objects/base/service.h" #include #include class DEF_INST_SERVICE_(hidden) Selection : public Service { AUTOGEN_PREAMBLE private: std::vector> selection; protected: void InitService() override; bool initialized = false; public: Selection(); ~Selection(); static inline std::shared_ptr Create() { return std::make_shared(); }; std::vector> Get(); void Set(std::vector> newSelection); void Add(std::vector> instances); void Remove(std::vector> instances); SignalSource SelectionChanged; };