public:
LayerState();
~LayerState() = default;
+ const std::unordered_map<std::string, std::string> getCurrentState();
const std::vector<unsigned> getIviIdList();
void addLayer(unsigned layer);
void removeLayer(unsigned layer);
+ bool hasLayer(unsigned layer);
void attachAppToArea(const std::string& app, const std::string& area);
// Debug
unsigned idBegin() { return this->id_begin; }
unsigned idEnd() { return this->id_end; }
unsigned getWMLayerID() { return this->wm_layer_id; }
+ unsigned getScreenID() { return this->screen; }
const std::string& layerName();
void appendArea(const std::string& area);
LayerState& getLayerState() { return tmp_state; }
// Manipulation
void addLayerToState(unsigned layer);
void removeLayerFromState(unsigned layer);
+ bool hasLayerFromState(unsigned layer);
void attachAppToArea(const std::string& app, const std::string& area);
+ std::string attachedApp(const std::string& area);
void update();
void undo();
std::string role_list;
std::vector<std::string> area_list;
std::vector<unsigned> id_list;
+ unsigned screen;
unsigned id_begin;
unsigned id_end;
};