#ifndef __CURSES_OUTPUT_H__
#define __CURSES_OUTPUT_H__

#include <utility>
#include <memory>
#include "cursor.h"
#include "output.h"

class curses_output final : public output {
private:
        cursor *curse;
public:
        curses_output(cursor *new_curse);

        void render() override;
        void clear() override;
        void print_char(const position &pos,
                        const char ch, const int attrs) override;
        void print_str(const position &pos,
                       const std::string &str, const int attrs) override;
};

#endif
