light/modules/app/public/system.hpp

26 lines
382 B
C++
Raw Normal View History

#pragma once
namespace lt::app {
class ISystem
{
public:
ISystem() = default;
virtual ~ISystem() = default;
ISystem(ISystem &&) = default;
ISystem(const ISystem &) = delete;
auto operator=(ISystem &&) -> ISystem & = default;
auto operator=(const ISystem &) -> ISystem & = delete;
virtual void init() = 0;
virtual auto tick() -> bool = 0;
};
} // namespace lt::app