#pragma once

#include <cstdint>
#include <string>
#include <vector>
#include<array>
using namespace std;
namespace input_dev{
    class InputCfg{
    public:
        InputCfg() = default;
        InputCfg(const string& source, const string& type,const string& position,const string& itopic){
                this->source = source;
                this->type = type;
                this->position = position;
                this->input_topic = itopic;
                this->arr_copy=0;
            };
        InputCfg(const InputCfg& other) = default;
        InputCfg(InputCfg&& other) = default;
        InputCfg& operator=(const InputCfg& other) = default;
        InputCfg& operator=(InputCfg&& other) = default;
        string str() const{
            return "soure:"+source+",topic:"+input_topic;
        }
        string getInputTopic() const{
            return input_topic; 
        }
        string getPosition() const{
            return position;
        }
        string getType() const{
            return type;
        }
        string getSource() const{
            return source;
        }
        int arr_copy;
    private:
        string source;
        string position;
        string type;
        string input_topic;
        
    };
}