45 namespace GuiApiClasses {
63 static int isolateInNew(
const std::vector<Module*> modules,
const std::vector<Gate*> gates);
81 static bool addTo(
int id,
const std::vector<Module*> modules,
const std::vector<Gate*> gates);
91 static bool removeFrom(
int id,
const std::vector<Module*> modules,
const std::vector<Gate*> gates);
100 static bool setName(
int id,
const std::string&
name);
108 static int getId(
const std::string&
name);
116 static std::string
getName(
int id);
124 static std::vector<Module*>
getModules(
int id);
132 static std::vector<Gate*>
getGates(
int id);
141 static std::vector<u32>
getIds(
const std::vector<Module*> modules,
const std::vector<Gate*> gates);
211 static void moveView(
u32 viewId, std::optional<u32> destinationDirectoryId, std::optional<int> row);
220 static void moveDirectory(
u32 directoryId, std::optional<u32> destinationDirectoryId, std::optional<int> row);
305 std::tuple<std::vector<u32>, std::vector<u32>, std::vector<u32>>
getSelectedItemIds();
334 std::tuple<std::vector<Gate*>, std::vector<Net*>, std::vector<Module*>>
getSelectedItems();
347 void selectGate(
u32 gate_id,
bool clear_current_selection =
true,
bool navigate_to_selection =
true);
360 void selectGate(
const std::vector<u32>& gate_ids,
bool clear_current_selection =
true,
bool navigate_to_selection =
true);
373 void selectGate(
Gate* gate,
bool clear_current_selection =
true,
bool navigate_to_selection =
true);
386 void selectGate(
const std::vector<Gate*>& gates,
bool clear_current_selection =
true,
bool navigate_to_selection =
true);
399 void selectNet(
u32 netId,
bool clear_current_selection =
true,
bool navigate_to_selection =
true);
412 void selectNet(
const std::vector<u32>& net_ids,
bool clear_current_selection =
true,
bool navigate_to_selection =
true);
425 void selectNet(
Net*
net,
bool clear_current_selection =
true,
bool navigate_to_selection =
true);
438 void selectNet(
const std::vector<Net*>& nets,
bool clear_current_selection =
true,
bool navigate_to_selection =
true);
451 void selectModule(
u32 module_id,
bool clear_current_selection =
true,
bool navigate_to_selection =
true);
464 void selectModule(
const std::vector<u32>& module_ids,
bool clear_current_selection =
true,
bool navigate_to_selection =
true);
490 void selectModule(
const std::vector<Module*>& modules,
bool clear_current_selection =
true,
bool navigate_to_selection =
true);
503 void select(
Gate* gate,
bool clear_current_selection =
true,
bool navigate_to_selection =
true);
516 void select(
Net*
net,
bool clear_current_selection =
true,
bool navigate_to_selection =
true);
529 void select(
Module*
module,
bool clear_current_selection =
true,
bool navigate_to_selection =
true);
542 void select(
const std::vector<Gate*>& gates,
bool clear_current_selection =
true,
bool navigate_to_selection =
true);
555 void select(
const std::vector<Net*>& nets,
bool clear_current_selection =
true,
bool navigate_to_selection =
true);
568 void select(
const std::vector<Module*>& modules,
bool clear_current_selection =
true,
bool navigate_to_selection =
true);
583 void select(
const std::vector<u32>& gate_ids,
const std::vector<u32>& net_ids,
const std::vector<u32>& module_ids,
bool clear_current_selection =
true,
bool navigate_to_selection =
true);
598 void select(
const std::vector<Gate*>& gates,
const std::vector<Net*>& nets,
const std::vector<Module*>& modules,
bool clear_current_selection =
true,
bool navigate_to_selection =
true);
715 void deselect(
const std::vector<Gate*>& gates);
722 void deselect(
const std::vector<Net*>& nets);
729 void deselect(
const std::vector<Module*>& modules);
738 void deselect(
const std::vector<u32>& gate_ids,
const std::vector<u32>& net_ids,
const std::vector<u32>& module_ids);
747 void deselect(
const std::vector<Gate*>& gates,
const std::vector<Net*>& nets,
const std::vector<Module*>& modules);
static bool foldModule(int view_id, Module *module)
static void deleteDirectory(u32 id)
static bool unfoldModule(int view_id, Module *module)
static void moveDirectory(u32 directoryId, std::optional< u32 > destinationDirectoryId, std::optional< int > row)
static int getId(const std::string &name)
static bool removeFrom(int id, const std::vector< Module * > modules, const std::vector< Gate * > gates)
static int isolateInNew(const std::vector< Module * > modules, const std::vector< Gate * > gates)
static bool setName(int id, const std::string &name)
static void moveView(u32 viewId, std::optional< u32 > destinationDirectoryId, std::optional< int > row)
static int isolateModuleToModulePathInNewView(u32 fromModId, u32 toModId)
static std::string getName(int id)
static GridPlacement * getGridPlacement(int viewId)
static bool setGridPlacement(int viewId, GridPlacement *gp)
static u32 createNewDirectory(const std::string &name)
static std::vector< Gate * > getGates(int id)
static std::optional< std::vector< u32 > > getChildDirectories(u32 directoryId)
static bool addTo(int id, const std::vector< Module * > modules, const std::vector< Gate * > gates)
static std::optional< std::vector< u32 > > getChildViews(u32 directoryId)
static bool deleteView(int id)
static std::vector< Module * > getModules(int id)
static void setCurrentDirectory(u32 id)
static std::vector< u32 > getIds(const std::vector< Module * > modules, const std::vector< Gate * > gates)
static u32 getCurrentDirectory()
static ModuleGateIdPair getValidObjects(int viewId, const std::vector< Module * >, const std::vector< Gate * >)
Interface to interact with the gui itself.
void deselectNet(u32 netId)
void deselectModule(u32 module_id)
std::vector< u32 > getSelectedNetIds()
std::tuple< std::vector< Gate * >, std::vector< Net * >, std::vector< Module * > > getSelectedItems()
std::vector< u32 > getSelectedModuleIds()
std::vector< Gate * > getSelectedGates()
std::vector< Net * > getSelectedNets()
void deselect(Gate *gate)
void selectNet(u32 netId, bool clear_current_selection=true, bool navigate_to_selection=true)
void navigationRequested()
void select(Gate *gate, bool clear_current_selection=true, bool navigate_to_selection=true)
std::vector< u32 > getSelectedGateIds()
std::vector< Module * > getSelectedModules()
std::tuple< std::vector< u32 >, std::vector< u32 >, std::vector< u32 > > getSelectedItemIds()
void selectModule(u32 module_id, bool clear_current_selection=true, bool navigate_to_selection=true)
void selectGate(u32 gate_id, bool clear_current_selection=true, bool navigate_to_selection=true)
void deselectGate(u32 gate_id)
const Module * module(const Gate *g, const NodeBoxes &boxes)