74 lines
1.7 KiB
C++
74 lines
1.7 KiB
C++
#include "bus.h"
|
|
|
|
namespace domain {
|
|
|
|
Wire::Wire(std::string name, WireType type, int width, bool hidden, bool hasTerminate, Value terminateWith)
|
|
: name(name), type(type), width(width), hidden(hidden), hasTerminate(hasTerminate),
|
|
terminateWith(terminateWith) {}
|
|
|
|
std::string Wire::getName() {
|
|
return name;
|
|
}
|
|
|
|
std::string Bus::getInstanceName() {
|
|
return instanceName;
|
|
}
|
|
|
|
|
|
int Wire::getWidth() {
|
|
return width;
|
|
}
|
|
|
|
bool Wire::isHidden() {
|
|
return hidden;
|
|
}
|
|
|
|
bool Wire::hasTerminateWith() {
|
|
return hasTerminate;
|
|
}
|
|
|
|
Value Wire::getTerminateWith() {
|
|
return terminateWith;
|
|
}
|
|
|
|
Wire::WireType Wire::getType() {
|
|
return type;
|
|
}
|
|
|
|
Bus::Bus(std::string name, std::optional<std::string> displayName, std::string instanceName, std::string tooltip, BusType type, std::pair<int, int> count, std::vector<Wire> wires,
|
|
std::optional<ui::Bus> displayBus)
|
|
: name(name), displayName(displayName), instanceName(instanceName), tooltip(tooltip), type(type), count(count), wires(wires), displayBus(displayBus) {}
|
|
|
|
std::string Bus::getName() {
|
|
return name;
|
|
}
|
|
|
|
std::string Bus::getDisplayName() {
|
|
if(displayName.has_value()) {
|
|
return *displayName;
|
|
}
|
|
return name;
|
|
}
|
|
|
|
std::string Bus::getTooltip() {
|
|
return tooltip;
|
|
}
|
|
|
|
Bus::BusType Bus::getType() {
|
|
return type;
|
|
}
|
|
|
|
std::pair<int, int> Bus::getCount() {
|
|
return count;
|
|
}
|
|
|
|
std::vector<Wire> Bus::getWires() {
|
|
return wires;
|
|
}
|
|
|
|
std::optional<ui::Bus> Bus::getDisplayBus() {
|
|
return displayBus;
|
|
}
|
|
|
|
} // namespace domain
|