//
// Created by sebastian on 02.08.26.
//

#ifndef COLORRACE_INPUTCONTEXTSTACK_H
#define COLORRACE_INPUTCONTEXTSTACK_H
#include <memory>
#include <vector>

#include "InputContext.h"


namespace engine {
    class InputContextStack {
    public:
        void push(std::shared_ptr<InputContext> context);
        void pop();
        [[nodiscard]] bool isActive(const InputContext& context) const;
    private:
        std::vector<std::shared_ptr<InputContext>> m_stack;
    };
}


#endif //COLORRACE_INPUTCONTEXTSTACK_H
