#pragma once

/*
	ApplicationFramework
	by John Ryland
	Copyright (c) 2023
*/

////////////////////////////////////////////////////////////////////////////////////
//	System Interface

namespace ApplicationFramework {

class ISystem
{
public:
    virtual ~ISystem() {}

    virtual void Initialize() = 0;
    virtual void Shutdown() = 0;

    virtual void Update() = 0;
};

} // ApplicationFramework namespace
