From 22558704460b19425d28cc91b2565c7964ed7a19 Mon Sep 17 00:00:00 2001 From: Clifford Wolf Date: Wed, 23 May 2018 17:58:57 +0200 Subject: Create compile-able demo that doesn't do anything Signed-off-by: Clifford Wolf --- apidraft.h | 143 ------------------------------------------------------------- 1 file changed, 143 deletions(-) delete mode 100644 apidraft.h (limited to 'apidraft.h') diff --git a/apidraft.h b/apidraft.h deleted file mode 100644 index b14ddfee..00000000 --- a/apidraft.h +++ /dev/null @@ -1,143 +0,0 @@ -#include -#include - -// replace with proper IdString later -typedef std::string IdString; - -// ------------------------------------------------------- -// Arch-specific declarations - -#ifdef ARCH_ICE40 -struct ObjId -{ - uint8_t tile_x = 0, tile_y = 0; - uint16_t index = 0; - - bool nil() const { - return !tile_x && !tile_y && !index; - } -} __attribute__((packed)); - -struct ObjIterator -{ - // ... - ObjId operator*() const; -}; - -struct ObjRange -{ - ObjIterator begin(); - ObjIterator end(); -}; - -struct BelPin -{ - ObjId bel; - IdString pin; -}; - -struct BelPinIterator -{ - // ... - BelPin operator*() const; -}; - -struct BelPinRange -{ - BelPinIterator begin(); - BelPinIterator end(); -}; - -struct GuiLine -{ - float x1, y1, x2, y2; -}; - -struct Chip -{ - // ... - - Chip(std::string cfg); - - void setBelActive(ObjId bel, bool active); - bool getBelActive(ObjId bel); - - ObjId getObjByName(IdString name) const; - IdString getObjName(ObjId obj) const; - - ObjRange getBels() const; - ObjRange getBelsByType(IdString type) const; - IdString getBelType(ObjId bel) const; - - void getObjPosition(ObjId obj, float &x, float &y) const; - vector getGuiLines(ObjId obj) const; - - ObjRange getWires() const; - ObjRange getWiresUphill(ObjId wire) const; - ObjRange getWiresDownhill(ObjId wire) const; - ObjRange getWiresBidir(ObjId wire) const; - ObjRange getWireAliases(ObjId wire) const; - - // the following will only operate on / return "active" BELs - // multiple active uphill BELs for a wire will cause a runtime error - ObjId getWireBelPin(ObjId bel, IdString pin) const; - BelPin getBelPinUphill(ObjId wire) const; - BelPinRange getBelPinsDownhill(ObjId wire) const; -}; -#endif - -// ------------------------------------------------------- -// Generic declarations - -struct PortRef -{ - IdString cell_name; - IdString port_name; -}; - -struct NetInfo -{ - IdString name; - PortRef driver; - vector users; - dict attrs; - - // wire -> delay - dict wires; -}; - -enum PortType -{ - PORT_IN = 0, - PORT_OUT = 1, - PORT_INOUT = 2 -}; - -struct PortInfo -{ - IdString name, net; - PortType type; -}; - -struct CellInfo -{ - IdString name, type; - dict ports; - dict attrs, params; - - ObjId bel; - // cell_port -> bel_pin - dict pins; -}; - -struct Design -{ - struct Chip; - - Design(std::string chipCfg) : Chip(chipCfg) { - // ... - } - - dict nets; - dict cells; -}; -- cgit v1.2.3