package edu.cmu.cs.l3.regalloc;

import edu.cmu.cs.l3.graph.*;
import java.util.*;
import edu.cmu.cs.l3.temp.*;

public class InterferenceVertex extends Vertex {

    public InterferenceVertex() {
        m_mlist = new ArrayList();
    }

    public String toString() {
        return m_temp.toString();
    }

    public List getMoveList() {
        return m_mlist;
    }

    public boolean isPrecolored() {
        return m_precolored;
    }

    public void setPrecolored() {
        m_precolored = true;
    }

    public void setColor(Temp c) {
        m_color = c;
        m_colored = true;
    }

    public void unColor() {
        m_colored = false;
    }

    public boolean isColored() {
        return m_colored;
    }

    public Temp getColor() {
        return m_color;
    }

    public Temp getTemp() {
        return m_temp;
    }

    public void setTemp(Temp t) {
        m_temp = t;
    }

    public int getDegreeModifier() {
        return m_degmod;
    }

    public void setDegreeModifier(int d) {
        m_degmod = d;
    }

    private int m_degmod=0;
    private boolean m_precolored = false,m_colored = false;
    private Temp m_color,m_temp;
    private List m_mlist;
}