From 11db5a2f1df589ea8c5ba3c0b1cbbfaac77e3580 Mon Sep 17 00:00:00 2001 From: gatecat Date: Tue, 9 Feb 2021 10:39:14 +0000 Subject: Add BaseArchRanges for default ArchRanges types Signed-off-by: gatecat --- common/nextpnr.h | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) (limited to 'common') diff --git a/common/nextpnr.h b/common/nextpnr.h index 2ecbaf0e..12462698 100644 --- a/common/nextpnr.h +++ b/common/nextpnr.h @@ -1176,6 +1176,27 @@ template struct ArchAPI : BaseCtx virtual void assignArchInfo() = 0; }; +// This contains the relevant range types for the default implementations of Arch functions +struct BaseArchRanges +{ + // Attributes + using BelAttrsRangeT = std::vector>; + using WireAttrsRangeT = std::vector>; + using PipAttrsRangeT = std::vector>; + // Groups + using AllGroupsRangeT = std::vector; + using GroupBelsRangeT = std::vector; + using GroupWiresRangeT = std::vector; + using GroupPipsRangeT = std::vector; + using GroupGroupsRangeT = std::vector; + // Decals + using DecalGfxRangeT = std::vector; + // Placement validity + using CellTypeRangeT = const std::vector &; + using BelBucketRangeT = const std::vector &; + using BucketBelRangeT = const std::vector &; +}; + template struct BaseArch : ArchAPI { // -------------------------------------------------------------- -- cgit v1.2.3