package synthesijer.hdl;
import java.util.Enumeration;
import java.util.Hashtable;
public abstract class HDLSignalBinding {
public final String name;
public HDLSignalBinding(String name){
this.name = name;
}
public String getName(){
return name;
}
public abstract HDLSignalBinding export(String prefix);
private final Hashtable<HDLPort, String> list = new Hashtable<>();
public void set(HDLPort key, String value){
list.put(key, value);
key.setSignalBinding(this);
}
public String get(HDLPort key){
return list.get(key);
}
public void dump(){
System.out.println(list);
}
public Enumeration<HDLPort> getKeys(){
return list.keys();
}
public abstract String getVendor();
public abstract String getLibrary();
public abstract String getBusTypeName();
public abstract String getBusAbstractionTypeName();
public abstract String getVersion();
public abstract boolean isMaster();
public abstract boolean hasAddressSpace();
public abstract boolean hasMemoryMap();
public abstract String getAddressBlockName();
public abstract long getRange();
}