KiCad PCB EDA Suite
Loading...
Searching...
No Matches
drc_test_provider_clearance_base.h
Go to the documentation of this file.
1/*
2 * This program source code file is part of KiCad, a free EDA CAD application.
3 *
4 * Copyright (C) 2004-2019 Jean-Pierre Charras, jp.charras at wanadoo.fr
5 * Copyright (C) 2007 Dick Hollenbeck, [email protected]
6 * Copyright (C) 2019-2020 KiCad Developers, see AUTHORS.txt for contributors.
7 *
8 * This program is free software; you can redistribute it and/or
9 * modify it under the terms of the GNU General Public License
10 * as published by the Free Software Foundation; either version 2
11 * of the License, or (at your option) any later version.
12 *
13 * This program is distributed in the hope that it will be useful,
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 * GNU General Public License for more details.
17 *
18 * You should have received a copy of the GNU General Public License
19 * along with this program; if not, you may find one here:
20 * http://www.gnu.org/licenses/old-licenses/gpl-2.0.html
21 * or you may search the http://www.gnu.org website for the version 2 license,
22 * or you may write to the Free Software Foundation, Inc.,
23 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
24 */
25
26
27#ifndef DRC_TEST_PROVIDER_CLEARANCE_BASE__H
28#define DRC_TEST_PROVIDER_CLEARANCE_BASE__H
29
32#include <drc/drc_engine.h>
33#include <drc/drc_item.h>
35
36class BOARD;
37
38
40{
41public:
44 m_board( nullptr ),
45 m_boardOutlineValid( false )
46 {
47 }
48
50 {
51 }
52
53protected:
56
57 void ReportAndShowPathCuToCu( std::shared_ptr<DRC_ITEM>& aDrce, const VECTOR2I& aMarkerPos,
58 int aMarkerLayer, const BOARD_ITEM* aItem1,
59 const BOARD_ITEM* aItem2, PCB_LAYER_ID layer, int aDistance );
60
61 void ShowPathDRC( const std::vector<PCB_SHAPE>& aShapes, const VECTOR2I& aStart,
62 const VECTOR2I& aEnd, int aLength );
63
64
66};
67
68
69#endif // DRC_TEST_PROVIDER_CLEARANCE_BASE__H
A base class for any item which can be embedded within the BOARD container class, and therefore insta...
Definition: board_item.h:79
Information pertinent to a Pcbnew printed circuit board.
Definition: board.h:290
void ReportAndShowPathCuToCu(std::shared_ptr< DRC_ITEM > &aDrce, const VECTOR2I &aMarkerPos, int aMarkerLayer, const BOARD_ITEM *aItem1, const BOARD_ITEM *aItem2, PCB_LAYER_ID layer, int aDistance)
void ShowPathDRC(const std::vector< PCB_SHAPE > &aShapes, const VECTOR2I &aStart, const VECTOR2I &aEnd, int aLength)
Represent a DRC "provider" which runs some DRC functions over a BOARD and spits out DRC_ITEM and posi...
std::function< void(PCB_MARKER *aMarker)> DRC_GRAPHICS_HANDLER
Definition: drc_engine.h:75
PCB_LAYER_ID
A quick note on layer IDs:
Definition: layer_ids.h:60