Files
XCEngine/editor/src/Core/ISelectionManager.h

28 lines
763 B
C
Raw Normal View History

#pragma once
#include <vector>
#include <cstdint>
namespace XCEngine {
namespace Editor {
class ISelectionManager {
public:
virtual ~ISelectionManager() = default;
virtual void SetSelectedEntity(uint64_t entityId) = 0;
virtual void SetSelectedEntities(const std::vector<uint64_t>& entityIds) = 0;
virtual void AddToSelection(uint64_t entityId) = 0;
virtual void RemoveFromSelection(uint64_t entityId) = 0;
virtual void ClearSelection() = 0;
virtual uint64_t GetSelectedEntity() const = 0;
virtual const std::vector<uint64_t>& GetSelectedEntities() const = 0;
virtual bool HasSelection() const = 0;
virtual size_t GetSelectionCount() const = 0;
virtual bool IsSelected(uint64_t entityId) const = 0;
};
}
}