HAL
v4.5.0-124-g47ab54673
The Hardware Analyzer - a comprehensive reverse engineering and manipulation framework for gate-level netlists.
graphics_net.h
Go to the documentation of this file.
1
// MIT License
2
//
3
// Copyright (c) 2019 Ruhr University Bochum, Chair for Embedded Security. All Rights reserved.
4
// Copyright (c) 2019 Marc Fyrbiak, Sebastian Wallat, Max Hoffmann ("ORIGINAL AUTHORS"). All rights reserved.
5
// Copyright (c) 2021 Max Planck Institute for Security and Privacy. All Rights reserved.
6
// Copyright (c) 2021 Jörn Langheinrich, Julian Speith, Nils Albartus, René Walendy, Simon Klix ("ORIGINAL AUTHORS"). All Rights reserved.
7
//
8
// Permission is hereby granted, free of charge, to any person obtaining a copy
9
// of this software and associated documentation files (the "Software"), to deal
10
// in the Software without restriction, including without limitation the rights
11
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
12
// copies of the Software, and to permit persons to whom the Software is
13
// furnished to do so, subject to the following conditions:
14
//
15
// The above copyright notice and this permission notice shall be included in all
16
// copies or substantial portions of the Software.
17
//
18
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
19
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
20
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
21
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
22
// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
23
// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
24
// SOFTWARE.
25
26
#pragma once
27
28
#include "
gui/graph_widget/items/graphics_item.h
"
29
30
#include <memory>
31
32
namespace
hal
33
{
34
class
Net
;
35
42
class
GraphicsNet
:
public
GraphicsItem
43
{
44
public
:
49
struct
Visuals
50
{
51
bool
mVisible
;
52
QColor
color
;
53
Qt::PenStyle
mPenStyle
;
54
bool
mFillIcon
;
55
QColor
mFillColor
;
56
Qt::BrushStyle
mBrushStyle
;
57
};
58
62
static
void
loadSettings
();
63
69
GraphicsNet
(
Net
* n);
70
76
QRectF
boundingRect
()
const override
;
77
83
QPainterPath
shape
()
const override
;
84
90
virtual
void
setVisuals
(
const
Visuals
& v);
91
92
protected
:
94
static
qreal
sLineWidth
;
95
static
qreal
sShapeWidth
;
96
97
static
QPen
sPen
;
98
static
QBrush
sBrush
;
99
100
QRectF
mRect
;
101
QPainterPath
mShape
;
102
103
Qt::PenStyle
mPenStyle
;
104
105
bool
mFillIcon
;
106
QColor
mFillColor
;
107
Qt::BrushStyle
mBrushStyle
;
108
};
109
}
hal::GraphicsItem
Superclass for all graphic items used ins the GraphicsScene. It contains information about the underl...
Definition:
graphics_item.h:44
hal::GraphicsNet
The basic net class all other nets inherit from.
Definition:
graphics_net.h:43
hal::GraphicsNet::loadSettings
static void loadSettings()
Definition:
graphics_net.cpp:15
hal::GraphicsNet::setVisuals
virtual void setVisuals(const Visuals &v)
Definition:
graphics_net.cpp:38
hal::GraphicsNet::mFillColor
QColor mFillColor
Definition:
graphics_net.h:106
hal::GraphicsNet::shape
QPainterPath shape() const override
Definition:
graphics_net.cpp:33
hal::GraphicsNet::mShape
QPainterPath mShape
Definition:
graphics_net.h:101
hal::GraphicsNet::GraphicsNet
GraphicsNet(Net *n)
Definition:
graphics_net.cpp:24
hal::GraphicsNet::mPenStyle
Qt::PenStyle mPenStyle
Definition:
graphics_net.h:103
hal::GraphicsNet::mFillIcon
bool mFillIcon
Definition:
graphics_net.h:105
hal::GraphicsNet::sLineWidth
static qreal sLineWidth
Definition:
graphics_net.h:94
hal::GraphicsNet::sPen
static QPen sPen
Definition:
graphics_net.h:97
hal::GraphicsNet::sBrush
static QBrush sBrush
Definition:
graphics_net.h:98
hal::GraphicsNet::sShapeWidth
static qreal sShapeWidth
Definition:
graphics_net.h:95
hal::GraphicsNet::boundingRect
QRectF boundingRect() const override
Definition:
graphics_net.cpp:28
hal::GraphicsNet::mBrushStyle
Qt::BrushStyle mBrushStyle
Definition:
graphics_net.h:107
hal::GraphicsNet::mRect
QRectF mRect
Definition:
graphics_net.h:100
hal::Net
Definition:
net.h:58
graphics_item.h
hal::ItemType::Net
@ Net
hal
Definition:
defines.h:45
QBrush
QColor
QPainterPath
QPen
QRectF
Qt::BrushStyle
BrushStyle
Qt::PenStyle
PenStyle
hal::GraphicsNet::Visuals
Definition:
graphics_net.h:50
hal::GraphicsNet::Visuals::mFillIcon
bool mFillIcon
Definition:
graphics_net.h:54
hal::GraphicsNet::Visuals::color
QColor color
Definition:
graphics_net.h:52
hal::GraphicsNet::Visuals::mBrushStyle
Qt::BrushStyle mBrushStyle
Definition:
graphics_net.h:56
hal::GraphicsNet::Visuals::mFillColor
QColor mFillColor
Definition:
graphics_net.h:55
hal::GraphicsNet::Visuals::mPenStyle
Qt::PenStyle mPenStyle
Definition:
graphics_net.h:53
hal::GraphicsNet::Visuals::mVisible
bool mVisible
Definition:
graphics_net.h:51
plugins
gui
include
gui
graph_widget
items
nets
graphics_net.h
Generated by
1.9.1