add splitter filters to ui
This commit is contained in:
@@ -89,6 +89,22 @@ void BeltSystem::setSplitterFilters(QPoint tile,
|
||||
it->second.filterB = filterB;
|
||||
}
|
||||
|
||||
std::optional<BeltSystem::SplitterInfo> BeltSystem::getSplitterInfo(QPoint tile) const
|
||||
{
|
||||
const std::map<std::pair<int, int>, SplitterTile>::const_iterator it =
|
||||
m_splitters.find(key(tile));
|
||||
if (it == m_splitters.end())
|
||||
{
|
||||
return std::nullopt;
|
||||
}
|
||||
return SplitterInfo{
|
||||
it->second.outputA,
|
||||
it->second.outputB,
|
||||
it->second.filterA,
|
||||
it->second.filterB
|
||||
};
|
||||
}
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
// Port interface
|
||||
// ---------------------------------------------------------------------------
|
||||
|
||||
@@ -52,6 +52,15 @@ public:
|
||||
const std::vector<ItemType>& filterA,
|
||||
const std::vector<ItemType>& filterB);
|
||||
|
||||
struct SplitterInfo
|
||||
{
|
||||
Rotation outputA;
|
||||
Rotation outputB;
|
||||
std::vector<ItemType> filterA;
|
||||
std::vector<ItemType> filterB;
|
||||
};
|
||||
std::optional<SplitterInfo> getSplitterInfo(QPoint tile) const;
|
||||
|
||||
// -- Port interface (buildings <-> belts) --------------------------------
|
||||
// port.tile = the belt tile adjacent to the building
|
||||
// port.direction = direction items flow on that tile
|
||||
|
||||
Reference in New Issue
Block a user