26 lines
382 B
C++
26 lines
382 B
C++
|
#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
|