HAL
module_shader.cpp
Go to the documentation of this file.
1
#include "
gui/graph_widget/shaders/module_shader.h
"
2
3
#include "
hal_core/netlist/module.h
"
4
5
#include "
gui/graph_widget/contexts/graph_context.h
"
6
#include "
gui/gui_globals.h
"
7
8
namespace
hal
9
{
10
QColor
ModuleShader::sDebugNetColor =
QColor
(200, 200, 200);
11
12
ModuleShader::ModuleShader
(
const
GraphContext
*
const
context) :
GraphShader
(context),
13
mColorGates(true)
// INITIALIZE WITH DEFAULT VALUE FROM SETTINGS
14
{
15
}
16
17
void
ModuleShader::debugSetNetColor
(
const
QColor
& color)
18
{
19
sDebugNetColor = color;
20
}
21
22
void
ModuleShader::add
(
const
QSet<u32>
modules,
const
QSet<u32>
gates,
const
QSet<u32>
nets)
23
{
24
Q_UNUSED(modules)
25
Q_UNUSED(gates)
26
Q_UNUSED(nets)
27
}
28
29
void
ModuleShader::remove
(
const
QSet<u32>
modules,
const
QSet<u32>
gates,
const
QSet<u32>
nets)
30
{
31
Q_UNUSED(modules)
32
Q_UNUSED(gates)
33
Q_UNUSED(nets)
34
}
35
36
void
ModuleShader::update
()
37
{
38
mShading
.
mOduleVisuals
.clear();
39
mShading
.
mGateVisuals
.clear();
40
mShading
.
mNetVisuals
.clear();
41
42
for
(
const
u32
&
id
:
mContext
->
modules
())
43
{
44
GraphicsNode::Visuals
v;
45
v.
mMainColor
=
gNetlistRelay
->
getModuleColor
(
id
);
46
v.
mVisible
=
true
;
47
mShading
.
mOduleVisuals
.insert(
id
, v);
48
}
49
50
if
(mColorGates)
51
{
52
for
(
const
u32
&
id
:
mContext
->
gates
())
53
{
54
Gate
*
g
=
gNetlist
->
get_gate_by_id
(
id
);
55
assert(
g
);
56
57
Module
* m =
g
->get_module();
58
assert(m);
59
60
GraphicsNode::Visuals
v;
61
v.
mMainColor
=
gNetlistRelay
->
getModuleColor
(m->
get_id
());
62
v.
mVisible
=
true
;
63
mShading
.
mGateVisuals
.insert(
id
, v);
64
}
65
}
66
67
// DEBUG CODE
68
for
(
const
u32
&
id
:
mContext
->
nets
())
69
{
70
GraphicsNet::Visuals
v{
true
, sDebugNetColor,
Qt::SolidLine
,
true
,
QColor
(100, 100, 100),
Qt::SolidPattern
};
71
mShading
.
mNetVisuals
.insert(
id
, v);
72
}
73
}
74
}
hal::Gate
Definition:
gate.h:58
hal::GraphContext
Logical container for modules, gates, and nets.
Definition:
graph_context.h:55
hal::GraphContext::gates
const QSet< u32 > & gates() const
Definition:
graph_context.cpp:436
hal::GraphContext::modules
const QSet< u32 > & modules() const
Definition:
graph_context.cpp:431
hal::GraphContext::nets
const QSet< u32 > & nets() const
Definition:
graph_context.cpp:441
hal::GraphShader
Base class to store and update visual information about the graph.
Definition:
graph_shader.h:47
hal::GraphShader::mShading
Shading mShading
Definition:
graph_shader.h:68
hal::GraphShader::mContext
const GraphContext *const mContext
Definition:
graph_shader.h:66
hal::Module
Definition:
module.h:66
hal::Module::get_id
u32 get_id() const
Definition:
module.cpp:82
hal::ModuleShader::add
void add(const QSet< u32 > modules, const QSet< u32 > gates, const QSet< u32 > nets) override
Definition:
module_shader.cpp:22
hal::ModuleShader::debugSetNetColor
static void debugSetNetColor(const QColor &color)
Definition:
module_shader.cpp:17
hal::ModuleShader::ModuleShader
ModuleShader(const GraphContext *const context)
Definition:
module_shader.cpp:12
hal::ModuleShader::update
void update() override
Definition:
module_shader.cpp:36
hal::ModuleShader::remove
void remove(const QSet< u32 > modules, const QSet< u32 > gates, const QSet< u32 > nets) override
Definition:
module_shader.cpp:29
hal::Netlist::get_gate_by_id
Gate * get_gate_by_id(const u32 gate_id) const
Definition:
netlist.cpp:193
hal::NetlistRelay::getModuleColor
QColor getModuleColor(const u32 id)
Definition:
netlist_relay.cpp:88
graph_context.h
gui_globals.h
module.h
module_shader.h
hal
Definition:
parser_liberty.cpp:10
hal::gNetlist
Netlist * gNetlist
Definition:
plugin_gui.cpp:80
hal::gNetlistRelay
NetlistRelay * gNetlistRelay
Definition:
plugin_gui.cpp:81
test_plugin.g
g
Definition:
test_plugin.py:32
u32
quint32 u32
Definition:
net_layout_point.h:40
QColor
QSet< u32 >
Qt::SolidPattern
SolidPattern
Qt::SolidLine
SolidLine
hal::GraphShader::Shading::mGateVisuals
QMap< u32, GraphicsNode::Visuals > mGateVisuals
Definition:
graph_shader.h:52
hal::GraphShader::Shading::mNetVisuals
QMap< u32, GraphicsNet::Visuals > mNetVisuals
Definition:
graph_shader.h:53
hal::GraphShader::Shading::mOduleVisuals
QMap< u32, GraphicsNode::Visuals > mOduleVisuals
Definition:
graph_shader.h:51
hal::GraphicsNet::Visuals
Definition:
graphics_net.h:50
hal::GraphicsNode::Visuals
Definition:
graphics_node.h:48
hal::GraphicsNode::Visuals::mMainColor
QColor mMainColor
Definition:
graphics_node.h:51
hal::GraphicsNode::Visuals::mVisible
bool mVisible
Definition:
graphics_node.h:49
plugins
gui
src
graph_widget
shaders
module_shader.cpp
Generated on Fri Feb 14 2025 14:22:43 for HAL by
1.9.1