KiCad PCB EDA Suite
DRC_ITEM Class Reference

#include <drc_item.h>

Inheritance diagram for DRC_ITEM:
RC_ITEM

Public Types

typedef std::vector< KIIDKIIDS
 

Public Member Functions

void SetViolatingRule (DRC_RULE *aRule)
 
DRC_RULEGetViolatingRule () const
 
wxString GetViolatingRuleDesc () const override
 
void SetViolatingTest (DRC_TEST_PROVIDER *aProvider)
 
DRC_TEST_PROVIDERGetViolatingTest () const
 
KIID GetAuxItem2ID () const override
 
KIID GetAuxItem3ID () const override
 
void SetErrorMessage (const wxString &aMessage)
 
void SetItems (const KIIDS &aIds)
 
void SetItems (const EDA_ITEM *aItem, const EDA_ITEM *bItem=nullptr, const EDA_ITEM *cItem=nullptr, const EDA_ITEM *dItem=nullptr)
 
void SetItems (const KIID &aItem, const KIID &bItem=niluuid, const KIID &cItem=niluuid, const KIID &dItem=niluuid)
 
void AddItem (EDA_ITEM *aItem)
 
virtual KIID GetMainItemID () const
 
virtual KIID GetAuxItemID () const
 
std::vector< KIIDGetIDs () const
 
void SetParent (MARKER_BASE *aMarker)
 
MARKER_BASEGetParent () const
 
virtual wxString ShowReport (UNITS_PROVIDER *aUnitsProvider, SEVERITY aSeverity, const std::map< KIID, EDA_ITEM * > &aItemMap) const
 Translate this object into a text string suitable for saving to disk in a report. More...
 
int GetErrorCode () const
 
void SetErrorCode (int aCode)
 
virtual wxString GetErrorMessage () const
 
wxString GetErrorText () const
 
wxString GetSettingsKey () const
 

Static Public Member Functions

static std::shared_ptr< DRC_ITEMCreate (int aErrorCode)
 Constructs a DRC_ITEM for the given error code. More...
 
static std::shared_ptr< DRC_ITEMCreate (const wxString &aErrorKey)
 Constructs a DRC item from a given error settings key. More...
 
static std::vector< std::reference_wrapper< RC_ITEM > > GetItemsWithSeverities ()
 

Protected Attributes

int m_errorCode
 The error code's numeric value. More...
 
wxString m_errorMessage
 A message describing the details of this specific error. More...
 
wxString m_errorTitle
 The string describing the type of error. More...
 
wxString m_settingsKey
 The key used to describe this type of error in settings. More...
 
MARKER_BASEm_parent
 The marker this item belongs to, if any. More...
 
KIIDS m_ids
 

Private Member Functions

 DRC_ITEM (int aErrorCode=0, const wxString &aTitle="", const wxString &aSettingsKey="")
 

Private Attributes

DRC_RULEm_violatingRule = nullptr
 
DRC_TEST_PROVIDERm_violatingTest = nullptr
 

Static Private Attributes

static std::vector< std::reference_wrapper< RC_ITEM > > allItemTypes
 A list of all DRC_ITEM types which are valid error codes. More...
 
static DRC_ITEM heading_electrical
 
static DRC_ITEM heading_DFM
 
static DRC_ITEM heading_schematic_parity
 
static DRC_ITEM heading_signal_integrity
 
static DRC_ITEM heading_readability
 
static DRC_ITEM heading_misc
 
static DRC_ITEM unconnectedItems
 
static DRC_ITEM shortingItems
 
static DRC_ITEM itemsNotAllowed
 
static DRC_ITEM textOnEdgeCuts
 
static DRC_ITEM clearance
 
static DRC_ITEM tracksCrossing
 
static DRC_ITEM edgeClearance
 
static DRC_ITEM zonesIntersect
 
static DRC_ITEM isolatedCopper
 
static DRC_ITEM starvedThermal
 
static DRC_ITEM viaDangling
 
static DRC_ITEM trackDangling
 
static DRC_ITEM holeNearHole
 
static DRC_ITEM holesCoLocated
 
static DRC_ITEM holeClearance
 
static DRC_ITEM connectionWidth
 
static DRC_ITEM trackWidth
 
static DRC_ITEM annularWidth
 
static DRC_ITEM drillTooSmall
 
static DRC_ITEM viaDiameter
 
static DRC_ITEM padstack
 
static DRC_ITEM microviaDrillTooSmall
 
static DRC_ITEM courtyardsOverlap
 
static DRC_ITEM missingCourtyard
 
static DRC_ITEM malformedCourtyard
 
static DRC_ITEM pthInsideCourtyard
 
static DRC_ITEM npthInsideCourtyard
 
static DRC_ITEM itemOnDisabledLayer
 
static DRC_ITEM invalidOutline
 
static DRC_ITEM duplicateFootprints
 
static DRC_ITEM missingFootprint
 
static DRC_ITEM extraFootprint
 
static DRC_ITEM netConflict
 
static DRC_ITEM libFootprintIssues
 
static DRC_ITEM libFootprintMismatch
 
static DRC_ITEM unresolvedVariable
 
static DRC_ITEM assertionFailure
 
static DRC_ITEM copperSliver
 
static DRC_ITEM silkClearance
 
static DRC_ITEM silkEdgeClearance
 
static DRC_ITEM solderMaskBridge
 
static DRC_ITEM silkOverlaps
 
static DRC_ITEM textHeightOutOfRange
 
static DRC_ITEM textThicknessOutOfRange
 
static DRC_ITEM lengthOutOfRange
 
static DRC_ITEM skewOutOfRange
 
static DRC_ITEM tooManyVias
 
static DRC_ITEM diffPairGapOutOfRange
 
static DRC_ITEM diffPairUncoupledLengthTooLong
 
static DRC_ITEM footprint
 
static DRC_ITEM footprintTypeMismatch
 
static DRC_ITEM footprintTHPadhasNoHole
 

Detailed Description

Definition at line 105 of file drc_item.h.

Member Typedef Documentation

◆ KIIDS

typedef std::vector<KIID> RC_ITEM::KIIDS
inherited

Definition at line 77 of file rc_item.h.

Constructor & Destructor Documentation

◆ DRC_ITEM()

DRC_ITEM::DRC_ITEM ( int  aErrorCode = 0,
const wxString &  aTitle = "",
const wxString &  aSettingsKey = "" 
)
inlineprivate

Definition at line 139 of file drc_item.h.

140 {
141 m_errorCode = aErrorCode;
142 m_errorTitle = aTitle;
143 m_settingsKey = aSettingsKey;
144 m_parent = nullptr;
145 }
wxString m_settingsKey
The key used to describe this type of error in settings.
Definition: rc_item.h:168
int m_errorCode
The error code's numeric value.
Definition: rc_item.h:165
MARKER_BASE * m_parent
The marker this item belongs to, if any.
Definition: rc_item.h:169
wxString m_errorTitle
The string describing the type of error.
Definition: rc_item.h:167

References RC_ITEM::m_errorCode, RC_ITEM::m_errorTitle, RC_ITEM::m_parent, and RC_ITEM::m_settingsKey.

Member Function Documentation

◆ AddItem()

void RC_ITEM::AddItem ( EDA_ITEM aItem)
inherited

Definition at line 55 of file rc_item.cpp.

56{
57 m_ids.push_back( aItem->m_Uuid );
58}
const KIID m_Uuid
Definition: eda_item.h:492
KIIDS m_ids
Definition: rc_item.h:171

References RC_ITEM::m_ids, and EDA_ITEM::m_Uuid.

◆ Create() [1/2]

std::shared_ptr< DRC_ITEM > DRC_ITEM::Create ( const wxString &  aErrorKey)
static

Constructs a DRC item from a given error settings key.

Parameters
aErrorKeyis a settings key for an error code (the untranslated string that is used to represent a given error code in settings files and for storing ignored DRC items)
Returns
the created item

Definition at line 388 of file drc_item.cpp.

389{
390 for( const RC_ITEM& item : allItemTypes )
391 {
392 if( aErrorKey == item.GetSettingsKey() )
393 return std::make_shared<DRC_ITEM>( static_cast<const DRC_ITEM&>( item ) );
394 }
395
396 // This can happen if a project has old-format exclusions. Just drop these items.
397 return nullptr;
398}
static std::vector< std::reference_wrapper< RC_ITEM > > allItemTypes
A list of all DRC_ITEM types which are valid error codes.
Definition: drc_item.h:148
A holder for a rule check item, DRC in Pcbnew or ERC in Eeschema.
Definition: rc_item.h:75

References allItemTypes.

◆ Create() [2/2]

std::shared_ptr< DRC_ITEM > DRC_ITEM::Create ( int  aErrorCode)
static

Constructs a DRC_ITEM for the given error code.

See also
DRCE_T

Definition at line 325 of file drc_item.cpp.

326{
327 switch( aErrorCode )
328 {
329 case DRCE_UNCONNECTED_ITEMS: return std::make_shared<DRC_ITEM>( unconnectedItems );
330 case DRCE_SHORTING_ITEMS: return std::make_shared<DRC_ITEM>( shortingItems );
331 case DRCE_ALLOWED_ITEMS: return std::make_shared<DRC_ITEM>( itemsNotAllowed );
332 case DRCE_TEXT_ON_EDGECUTS: return std::make_shared<DRC_ITEM>( textOnEdgeCuts );
333 case DRCE_CLEARANCE: return std::make_shared<DRC_ITEM>( clearance );
334 case DRCE_TRACKS_CROSSING: return std::make_shared<DRC_ITEM>( tracksCrossing );
335 case DRCE_EDGE_CLEARANCE: return std::make_shared<DRC_ITEM>( edgeClearance );
336 case DRCE_ZONES_INTERSECT: return std::make_shared<DRC_ITEM>( zonesIntersect );
337 case DRCE_ISOLATED_COPPER: return std::make_shared<DRC_ITEM>( isolatedCopper );
338 case DRCE_STARVED_THERMAL: return std::make_shared<DRC_ITEM>( starvedThermal );
339 case DRCE_DANGLING_VIA: return std::make_shared<DRC_ITEM>( viaDangling );
340 case DRCE_DANGLING_TRACK: return std::make_shared<DRC_ITEM>( trackDangling );
341 case DRCE_DRILLED_HOLES_TOO_CLOSE: return std::make_shared<DRC_ITEM>( holeNearHole );
342 case DRCE_DRILLED_HOLES_COLOCATED: return std::make_shared<DRC_ITEM>( holesCoLocated );
343 case DRCE_HOLE_CLEARANCE: return std::make_shared<DRC_ITEM>( holeClearance );
344 case DRCE_CONNECTION_WIDTH: return std::make_shared<DRC_ITEM>( connectionWidth );
345 case DRCE_TRACK_WIDTH: return std::make_shared<DRC_ITEM>( trackWidth );
346 case DRCE_ANNULAR_WIDTH: return std::make_shared<DRC_ITEM>( annularWidth );
347 case DRCE_DRILL_OUT_OF_RANGE: return std::make_shared<DRC_ITEM>( drillTooSmall );
348 case DRCE_VIA_DIAMETER: return std::make_shared<DRC_ITEM>( viaDiameter );
349 case DRCE_PADSTACK: return std::make_shared<DRC_ITEM>( padstack );
350 case DRCE_MICROVIA_DRILL_OUT_OF_RANGE: return std::make_shared<DRC_ITEM>( microviaDrillTooSmall );
351 case DRCE_OVERLAPPING_FOOTPRINTS: return std::make_shared<DRC_ITEM>( courtyardsOverlap );
352 case DRCE_MISSING_COURTYARD: return std::make_shared<DRC_ITEM>( missingCourtyard );
353 case DRCE_MALFORMED_COURTYARD: return std::make_shared<DRC_ITEM>( malformedCourtyard );
354 case DRCE_PTH_IN_COURTYARD: return std::make_shared<DRC_ITEM>( pthInsideCourtyard );
355 case DRCE_NPTH_IN_COURTYARD: return std::make_shared<DRC_ITEM>( npthInsideCourtyard );
356 case DRCE_DISABLED_LAYER_ITEM: return std::make_shared<DRC_ITEM>( itemOnDisabledLayer );
357 case DRCE_INVALID_OUTLINE: return std::make_shared<DRC_ITEM>( invalidOutline );
358 case DRCE_MISSING_FOOTPRINT: return std::make_shared<DRC_ITEM>( missingFootprint );
359 case DRCE_DUPLICATE_FOOTPRINT: return std::make_shared<DRC_ITEM>( duplicateFootprints );
360 case DRCE_NET_CONFLICT: return std::make_shared<DRC_ITEM>( netConflict );
361 case DRCE_EXTRA_FOOTPRINT: return std::make_shared<DRC_ITEM>( extraFootprint );
362 case DRCE_LIB_FOOTPRINT_ISSUES: return std::make_shared<DRC_ITEM>( libFootprintIssues );
363 case DRCE_LIB_FOOTPRINT_MISMATCH: return std::make_shared<DRC_ITEM>( libFootprintMismatch );
364 case DRCE_UNRESOLVED_VARIABLE: return std::make_shared<DRC_ITEM>( unresolvedVariable );
365 case DRCE_ASSERTION_FAILURE: return std::make_shared<DRC_ITEM>( assertionFailure );
366 case DRCE_COPPER_SLIVER: return std::make_shared<DRC_ITEM>( copperSliver );
367 case DRCE_OVERLAPPING_SILK: return std::make_shared<DRC_ITEM>( silkOverlaps );
368 case DRCE_SILK_CLEARANCE: return std::make_shared<DRC_ITEM>( silkClearance );
369 case DRCE_SILK_EDGE_CLEARANCE: return std::make_shared<DRC_ITEM>( silkEdgeClearance );
370 case DRCE_SOLDERMASK_BRIDGE: return std::make_shared<DRC_ITEM>( solderMaskBridge );
371 case DRCE_TEXT_HEIGHT: return std::make_shared<DRC_ITEM>( textHeightOutOfRange );
372 case DRCE_TEXT_THICKNESS: return std::make_shared<DRC_ITEM>( textThicknessOutOfRange );
373 case DRCE_LENGTH_OUT_OF_RANGE: return std::make_shared<DRC_ITEM>( lengthOutOfRange );
374 case DRCE_SKEW_OUT_OF_RANGE: return std::make_shared<DRC_ITEM>( skewOutOfRange );
375 case DRCE_TOO_MANY_VIAS: return std::make_shared<DRC_ITEM>( tooManyVias );
376 case DRCE_DIFF_PAIR_GAP_OUT_OF_RANGE: return std::make_shared<DRC_ITEM>( diffPairGapOutOfRange );
377 case DRCE_DIFF_PAIR_UNCOUPLED_LENGTH_TOO_LONG: return std::make_shared<DRC_ITEM>( diffPairUncoupledLengthTooLong );
378 case DRCE_FOOTPRINT: return std::make_shared<DRC_ITEM>( footprint );
379 case DRCE_FOOTPRINT_TYPE_MISMATCH: return std::make_shared<DRC_ITEM>( footprintTypeMismatch );
380 case DRCE_PAD_TH_WITH_NO_HOLE: return std::make_shared<DRC_ITEM>( footprintTHPadhasNoHole );
381 default:
382 wxFAIL_MSG( wxT( "Unknown DRC error code" ) );
383 return nullptr;
384 }
385}
static DRC_ITEM lengthOutOfRange
Definition: drc_item.h:201
static DRC_ITEM viaDiameter
Definition: drc_item.h:176
static DRC_ITEM silkEdgeClearance
Definition: drc_item.h:196
static DRC_ITEM trackWidth
Definition: drc_item.h:173
static DRC_ITEM annularWidth
Definition: drc_item.h:174
static DRC_ITEM pthInsideCourtyard
Definition: drc_item.h:182
static DRC_ITEM netConflict
Definition: drc_item.h:189
static DRC_ITEM copperSliver
Definition: drc_item.h:194
static DRC_ITEM holeNearHole
Definition: drc_item.h:169
static DRC_ITEM courtyardsOverlap
Definition: drc_item.h:179
static DRC_ITEM textThicknessOutOfRange
Definition: drc_item.h:200
static DRC_ITEM tooManyVias
Definition: drc_item.h:203
static DRC_ITEM connectionWidth
Definition: drc_item.h:172
static DRC_ITEM footprint
Definition: drc_item.h:206
static DRC_ITEM unresolvedVariable
Definition: drc_item.h:192
static DRC_ITEM assertionFailure
Definition: drc_item.h:193
static DRC_ITEM npthInsideCourtyard
Definition: drc_item.h:183
static DRC_ITEM textOnEdgeCuts
Definition: drc_item.h:160
static DRC_ITEM zonesIntersect
Definition: drc_item.h:164
static DRC_ITEM starvedThermal
Definition: drc_item.h:166
static DRC_ITEM shortingItems
Definition: drc_item.h:158
static DRC_ITEM tracksCrossing
Definition: drc_item.h:162
static DRC_ITEM missingCourtyard
Definition: drc_item.h:180
static DRC_ITEM skewOutOfRange
Definition: drc_item.h:202
static DRC_ITEM trackDangling
Definition: drc_item.h:168
static DRC_ITEM viaDangling
Definition: drc_item.h:167
static DRC_ITEM drillTooSmall
Definition: drc_item.h:175
static DRC_ITEM holesCoLocated
Definition: drc_item.h:170
static DRC_ITEM missingFootprint
Definition: drc_item.h:187
static DRC_ITEM textHeightOutOfRange
Definition: drc_item.h:199
static DRC_ITEM diffPairGapOutOfRange
Definition: drc_item.h:204
static DRC_ITEM padstack
Definition: drc_item.h:177
static DRC_ITEM itemOnDisabledLayer
Definition: drc_item.h:184
static DRC_ITEM itemsNotAllowed
Definition: drc_item.h:159
static DRC_ITEM extraFootprint
Definition: drc_item.h:188
static DRC_ITEM diffPairUncoupledLengthTooLong
Definition: drc_item.h:205
static DRC_ITEM unconnectedItems
Definition: drc_item.h:157
static DRC_ITEM clearance
Definition: drc_item.h:161
static DRC_ITEM libFootprintMismatch
Definition: drc_item.h:191
static DRC_ITEM edgeClearance
Definition: drc_item.h:163
static DRC_ITEM invalidOutline
Definition: drc_item.h:185
static DRC_ITEM silkOverlaps
Definition: drc_item.h:198
static DRC_ITEM isolatedCopper
Definition: drc_item.h:165
static DRC_ITEM malformedCourtyard
Definition: drc_item.h:181
static DRC_ITEM holeClearance
Definition: drc_item.h:171
static DRC_ITEM libFootprintIssues
Definition: drc_item.h:190
static DRC_ITEM microviaDrillTooSmall
Definition: drc_item.h:178
static DRC_ITEM solderMaskBridge
Definition: drc_item.h:197
static DRC_ITEM footprintTypeMismatch
Definition: drc_item.h:207
static DRC_ITEM footprintTHPadhasNoHole
Definition: drc_item.h:208
static DRC_ITEM silkClearance
Definition: drc_item.h:195
static DRC_ITEM duplicateFootprints
Definition: drc_item.h:186
@ DRCE_DISABLED_LAYER_ITEM
Definition: drc_item.h:67
@ DRCE_SKEW_OUT_OF_RANGE
Definition: drc_item.h:96
@ DRCE_DIFF_PAIR_GAP_OUT_OF_RANGE
Definition: drc_item.h:98
@ DRCE_HOLE_CLEARANCE
Definition: drc_item.h:53
@ DRCE_SILK_EDGE_CLEARANCE
Definition: drc_item.h:90
@ DRCE_ZONES_INTERSECT
Definition: drc_item.h:46
@ DRCE_TOO_MANY_VIAS
Definition: drc_item.h:97
@ DRCE_VIA_DIAMETER
Definition: drc_item.h:58
@ DRCE_UNCONNECTED_ITEMS
Definition: drc_item.h:39
@ DRCE_TRACK_WIDTH
Definition: drc_item.h:54
@ DRCE_PADSTACK
Definition: drc_item.h:59
@ DRCE_LIB_FOOTPRINT_ISSUES
Definition: drc_item.h:76
@ DRCE_OVERLAPPING_FOOTPRINTS
Definition: drc_item.h:61
@ DRCE_INVALID_OUTLINE
Definition: drc_item.h:68
@ DRCE_TEXT_ON_EDGECUTS
Definition: drc_item.h:42
@ DRCE_OVERLAPPING_SILK
Definition: drc_item.h:93
@ DRCE_DRILL_OUT_OF_RANGE
Definition: drc_item.h:57
@ DRCE_EDGE_CLEARANCE
Definition: drc_item.h:45
@ DRCE_STARVED_THERMAL
Definition: drc_item.h:48
@ DRCE_MISSING_COURTYARD
Definition: drc_item.h:62
@ DRCE_CLEARANCE
Definition: drc_item.h:43
@ DRCE_ISOLATED_COPPER
Definition: drc_item.h:47
@ DRCE_DRILLED_HOLES_TOO_CLOSE
Definition: drc_item.h:51
@ DRCE_ALLOWED_ITEMS
Definition: drc_item.h:41
@ DRCE_COPPER_SLIVER
Definition: drc_item.h:84
@ DRCE_PTH_IN_COURTYARD
Definition: drc_item.h:65
@ DRCE_DIFF_PAIR_UNCOUPLED_LENGTH_TOO_LONG
Definition: drc_item.h:99
@ DRCE_MICROVIA_DRILL_OUT_OF_RANGE
Definition: drc_item.h:60
@ DRCE_SHORTING_ITEMS
Definition: drc_item.h:40
@ DRCE_MALFORMED_COURTYARD
Definition: drc_item.h:63
@ DRCE_DANGLING_VIA
Definition: drc_item.h:49
@ DRCE_UNRESOLVED_VARIABLE
Definition: drc_item.h:81
@ DRCE_FOOTPRINT_TYPE_MISMATCH
Definition: drc_item.h:75
@ DRCE_DUPLICATE_FOOTPRINT
Definition: drc_item.h:71
@ DRCE_DANGLING_TRACK
Definition: drc_item.h:50
@ DRCE_TEXT_HEIGHT
Definition: drc_item.h:91
@ DRCE_ASSERTION_FAILURE
Definition: drc_item.h:82
@ DRCE_SOLDERMASK_BRIDGE
Definition: drc_item.h:85
@ DRCE_DRILLED_HOLES_COLOCATED
Definition: drc_item.h:52
@ DRCE_EXTRA_FOOTPRINT
Definition: drc_item.h:72
@ DRCE_SILK_CLEARANCE
Definition: drc_item.h:88
@ DRCE_LENGTH_OUT_OF_RANGE
Definition: drc_item.h:95
@ DRCE_LIB_FOOTPRINT_MISMATCH
Definition: drc_item.h:77
@ DRCE_NET_CONFLICT
Definition: drc_item.h:73
@ DRCE_MISSING_FOOTPRINT
Definition: drc_item.h:70
@ DRCE_PAD_TH_WITH_NO_HOLE
Definition: drc_item.h:78
@ DRCE_FOOTPRINT
Definition: drc_item.h:79
@ DRCE_TEXT_THICKNESS
Definition: drc_item.h:92
@ DRCE_NPTH_IN_COURTYARD
Definition: drc_item.h:66
@ DRCE_CONNECTION_WIDTH
Definition: drc_item.h:56
@ DRCE_TRACKS_CROSSING
Definition: drc_item.h:44
@ DRCE_ANNULAR_WIDTH
Definition: drc_item.h:55

References annularWidth, assertionFailure, clearance, connectionWidth, copperSliver, courtyardsOverlap, diffPairGapOutOfRange, diffPairUncoupledLengthTooLong, DRCE_ALLOWED_ITEMS, DRCE_ANNULAR_WIDTH, DRCE_ASSERTION_FAILURE, DRCE_CLEARANCE, DRCE_CONNECTION_WIDTH, DRCE_COPPER_SLIVER, DRCE_DANGLING_TRACK, DRCE_DANGLING_VIA, DRCE_DIFF_PAIR_GAP_OUT_OF_RANGE, DRCE_DIFF_PAIR_UNCOUPLED_LENGTH_TOO_LONG, DRCE_DISABLED_LAYER_ITEM, DRCE_DRILL_OUT_OF_RANGE, DRCE_DRILLED_HOLES_COLOCATED, DRCE_DRILLED_HOLES_TOO_CLOSE, DRCE_DUPLICATE_FOOTPRINT, DRCE_EDGE_CLEARANCE, DRCE_EXTRA_FOOTPRINT, DRCE_FOOTPRINT, DRCE_FOOTPRINT_TYPE_MISMATCH, DRCE_HOLE_CLEARANCE, DRCE_INVALID_OUTLINE, DRCE_ISOLATED_COPPER, DRCE_LENGTH_OUT_OF_RANGE, DRCE_LIB_FOOTPRINT_ISSUES, DRCE_LIB_FOOTPRINT_MISMATCH, DRCE_MALFORMED_COURTYARD, DRCE_MICROVIA_DRILL_OUT_OF_RANGE, DRCE_MISSING_COURTYARD, DRCE_MISSING_FOOTPRINT, DRCE_NET_CONFLICT, DRCE_NPTH_IN_COURTYARD, DRCE_OVERLAPPING_FOOTPRINTS, DRCE_OVERLAPPING_SILK, DRCE_PAD_TH_WITH_NO_HOLE, DRCE_PADSTACK, DRCE_PTH_IN_COURTYARD, DRCE_SHORTING_ITEMS, DRCE_SILK_CLEARANCE, DRCE_SILK_EDGE_CLEARANCE, DRCE_SKEW_OUT_OF_RANGE, DRCE_SOLDERMASK_BRIDGE, DRCE_STARVED_THERMAL, DRCE_TEXT_HEIGHT, DRCE_TEXT_ON_EDGECUTS, DRCE_TEXT_THICKNESS, DRCE_TOO_MANY_VIAS, DRCE_TRACK_WIDTH, DRCE_TRACKS_CROSSING, DRCE_UNCONNECTED_ITEMS, DRCE_UNRESOLVED_VARIABLE, DRCE_VIA_DIAMETER, DRCE_ZONES_INTERSECT, drillTooSmall, duplicateFootprints, edgeClearance, extraFootprint, footprint, footprintTHPadhasNoHole, footprintTypeMismatch, holeClearance, holeNearHole, holesCoLocated, invalidOutline, isolatedCopper, itemOnDisabledLayer, itemsNotAllowed, lengthOutOfRange, libFootprintIssues, libFootprintMismatch, malformedCourtyard, microviaDrillTooSmall, missingCourtyard, missingFootprint, netConflict, npthInsideCourtyard, padstack, pthInsideCourtyard, shortingItems, silkClearance, silkEdgeClearance, silkOverlaps, skewOutOfRange, solderMaskBridge, starvedThermal, textHeightOutOfRange, textOnEdgeCuts, textThicknessOutOfRange, tooManyVias, trackDangling, tracksCrossing, trackWidth, unconnectedItems, unresolvedVariable, viaDangling, viaDiameter, and zonesIntersect.

Referenced by DRC_TEST_PROVIDER_MATCHED_LENGTH::checkLengths(), DRC_TEST_PROVIDER_HOLE_SIZE::checkPadHole(), DRC_TEST_PROVIDER_MATCHED_LENGTH::checkSkews(), DRC_TEST_PROVIDER_MATCHED_LENGTH::checkViaCounts(), DRC_TEST_PROVIDER_HOLE_SIZE::checkViaHole(), PCB_MARKER::Deserialize(), BOARD_DESIGN_SETTINGS::LoadFromFile(), DRC_TEST_PROVIDER_ANNULAR_WIDTH::Run(), DRC_TEST_PROVIDER_CONNECTION_WIDTH::Run(), DRC_TEST_PROVIDER_CONNECTIVITY::Run(), test::DRC_TEST_PROVIDER_DIFF_PAIR_COUPLING::Run(), DRC_TEST_PROVIDER_DISALLOW::Run(), DRC_TEST_PROVIDER_FOOTPRINT_CHECKS::Run(), DRC_TEST_PROVIDER_LIBRARY_PARITY::Run(), DRC_TEST_PROVIDER_SLIVER_CHECKER::Run(), DRC_TEST_PROVIDER_TEXT_DIMS::Run(), DRC_TEST_PROVIDER_TRACK_WIDTH::Run(), DRC_TEST_PROVIDER_VIA_DIAMETER::Run(), DIALOG_FOOTPRINT_CHECKER::runChecks(), DRC_TEST_PROVIDER_EDGE_CLEARANCE::testAgainstEdge(), DRC_TEST_PROVIDER_MISC::testAssertions(), DRC_TEST_PROVIDER_COURTYARD_CLEARANCE::testCourtyardClearances(), DRC_TEST_PROVIDER_MISC::testDisabledLayers(), DRC_TEST_PROVIDER_COURTYARD_CLEARANCE::testFootprintCourtyardDefinitions(), DRC_TEST_PROVIDER_HOLE_TO_HOLE::testHoleAgainstHole(), DRC_TEST_PROVIDER_PHYSICAL_CLEARANCE::testItemAgainstItem(), DRC_TEST_PROVIDER_SOLDER_MASK::testItemAgainstItems(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testItemAgainstZone(), DRC_TEST_PROVIDER_PHYSICAL_CLEARANCE::testItemAgainstZones(), DRC_TEST_PROVIDER_SOLDER_MASK::testMaskItemAgainstZones(), DRC_TEST_PROVIDER_SCHEMATIC_PARITY::testNetlist(), DRC_TEST_PROVIDER_MISC::testOutline(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testPadAgainstItem(), DRC_TEST_PROVIDER_PHYSICAL_CLEARANCE::testShapeLineChain(), DRC_TEST_PROVIDER_MISC::testTextVars(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testTrackAgainstItem(), DRC_TEST_PROVIDER_ZONE_CONNECTIONS::testZoneLayer(), DRC_TEST_PROVIDER_PHYSICAL_CLEARANCE::testZoneLayer(), and DRC_TEST_PROVIDER_COPPER_CLEARANCE::testZonesToZones().

◆ GetAuxItem2ID()

KIID DRC_ITEM::GetAuxItem2ID ( ) const
overridevirtual

Reimplemented from RC_ITEM.

Definition at line 401 of file drc_item.cpp.

402{
404 {
405 // we have lots of segments, but it's enough to show the first P and the first N
406 return niluuid;
407 }
408
409 return m_ids.size() > 2 ? m_ids[2] : niluuid;
410}
KIID niluuid(0)

References DRCE_DIFF_PAIR_UNCOUPLED_LENGTH_TOO_LONG, RC_ITEM::m_errorCode, RC_ITEM::m_ids, and niluuid.

◆ GetAuxItem3ID()

KIID DRC_ITEM::GetAuxItem3ID ( ) const
overridevirtual

Reimplemented from RC_ITEM.

Definition at line 413 of file drc_item.cpp.

414{
416 {
417 // we have lots of segments, but it's enough to show the first P and the first N
418 return niluuid;
419 }
420
421 return m_ids.size() > 3 ? m_ids[3] : niluuid;
422}

References DRCE_DIFF_PAIR_UNCOUPLED_LENGTH_TOO_LONG, RC_ITEM::m_errorCode, RC_ITEM::m_ids, and niluuid.

◆ GetAuxItemID()

virtual KIID RC_ITEM::GetAuxItemID ( ) const
inlinevirtualinherited

Definition at line 118 of file rc_item.h.

118{ return m_ids.size() > 1 ? m_ids[1] : niluuid; }

References RC_ITEM::m_ids, and niluuid.

Referenced by RC_ITEM::ShowReport().

◆ GetErrorCode()

◆ GetErrorMessage()

wxString RC_ITEM::GetErrorMessage ( ) const
virtualinherited
Returns
the error message describing the specific details of a RC_ITEM. For instance, "Clearance violation (netclass '100ohm' clearance 0.4000mm; actual 0.3200mm)"

Definition at line 38 of file rc_item.cpp.

39{
40 if( m_errorMessage.IsEmpty() )
41 return GetErrorText();
42 else
43 return m_errorMessage;
44}
wxString GetErrorText() const
Definition: rc_item.h:149
wxString m_errorMessage
A message describing the details of this specific error.
Definition: rc_item.h:166

References RC_ITEM::GetErrorText(), and RC_ITEM::m_errorMessage.

Referenced by RC_ITEM::ShowReport().

◆ GetErrorText()

wxString RC_ITEM::GetErrorText ( ) const
inlineinherited
Returns
the error text for the class of error of this RC_ITEM represents. For instance, "Clearance violation".

Definition at line 149 of file rc_item.h.

150 {
151 return wxGetTranslation( m_errorTitle );
152 }

References RC_ITEM::m_errorTitle.

Referenced by CLEANUP_ITEM::CLEANUP_ITEM(), RC_ITEM::GetErrorMessage(), and PANEL_SETUP_SEVERITIES::PANEL_SETUP_SEVERITIES().

◆ GetIDs()

std::vector< KIID > RC_ITEM::GetIDs ( ) const
inlineinherited

Definition at line 122 of file rc_item.h.

122{ return m_ids; }

References RC_ITEM::m_ids.

◆ GetItemsWithSeverities()

static std::vector< std::reference_wrapper< RC_ITEM > > DRC_ITEM::GetItemsWithSeverities ( )
inlinestatic

◆ GetMainItemID()

virtual KIID RC_ITEM::GetMainItemID ( ) const
inlinevirtualinherited

Definition at line 117 of file rc_item.h.

117{ return m_ids.size() > 0 ? m_ids[0] : niluuid; }

References RC_ITEM::m_ids, and niluuid.

Referenced by RC_ITEM::ShowReport().

◆ GetParent()

MARKER_BASE * RC_ITEM::GetParent ( void  ) const
inlineinherited

Definition at line 125 of file rc_item.h.

125{ return m_parent; }

References RC_ITEM::m_parent.

◆ GetSettingsKey()

wxString RC_ITEM::GetSettingsKey ( ) const
inlineinherited

Definition at line 154 of file rc_item.h.

155 {
156 return m_settingsKey;
157 }

References RC_ITEM::m_settingsKey.

Referenced by RC_ITEM::ShowReport().

◆ GetViolatingRule()

DRC_RULE * DRC_ITEM::GetViolatingRule ( ) const
inline

Definition at line 128 of file drc_item.h.

128{ return m_violatingRule; }
DRC_RULE * m_violatingRule
Definition: drc_item.h:211

References m_violatingRule.

Referenced by PCB_MARKER::GetSeverity(), and DIALOG_DRC::OnDRCItemRClick().

◆ GetViolatingRuleDesc()

wxString DRC_ITEM::GetViolatingRuleDesc ( ) const
overridevirtual

Reimplemented from RC_ITEM.

Definition at line 425 of file drc_item.cpp.

426{
427 if( m_violatingRule )
428 return wxString::Format( _( "Rule: %s" ), m_violatingRule->m_Name );
429 else
430 return _( "Local override" );
431}
wxString m_Name
Definition: drc_rule.h:110
#define _(s)
Definition: drc_item.cpp:40
void Format(OUTPUTFORMATTER *out, int aNestLevel, int aCtl, const CPTREE &aTree)
Output a PTREE into s-expression format via an OUTPUTFORMATTER derivative.
Definition: ptree.cpp:200

References _, Format(), DRC_RULE::m_Name, and m_violatingRule.

◆ GetViolatingTest()

DRC_TEST_PROVIDER * DRC_ITEM::GetViolatingTest ( ) const
inline

Definition at line 133 of file drc_item.h.

133{ return m_violatingTest; }
DRC_TEST_PROVIDER * m_violatingTest
Definition: drc_item.h:212

References m_violatingTest.

◆ SetErrorCode()

void RC_ITEM::SetErrorCode ( int  aCode)
inlineinherited

Definition at line 137 of file rc_item.h.

137{ m_errorCode = aCode; }

References RC_ITEM::m_errorCode.

◆ SetErrorMessage()

void RC_ITEM::SetErrorMessage ( const wxString &  aMessage)
inlineinherited

Definition at line 97 of file rc_item.h.

97{ m_errorMessage = aMessage; }

References RC_ITEM::m_errorMessage.

◆ SetItems() [1/3]

void RC_ITEM::SetItems ( const EDA_ITEM aItem,
const EDA_ITEM bItem = nullptr,
const EDA_ITEM cItem = nullptr,
const EDA_ITEM dItem = nullptr 
)
inherited

Definition at line 61 of file rc_item.cpp.

63{
64 m_ids.clear();
65
66 m_ids.push_back( aItem->m_Uuid );
67
68 if( bItem )
69 m_ids.push_back( bItem->m_Uuid );
70
71 if( cItem )
72 m_ids.push_back( cItem->m_Uuid );
73
74 if( dItem )
75 m_ids.push_back( dItem->m_Uuid );
76}

References RC_ITEM::m_ids, and EDA_ITEM::m_Uuid.

◆ SetItems() [2/3]

void RC_ITEM::SetItems ( const KIID aItem,
const KIID bItem = niluuid,
const KIID cItem = niluuid,
const KIID dItem = niluuid 
)
inlineinherited

Definition at line 106 of file rc_item.h.

108 {
109 m_ids.clear();
110
111 m_ids.push_back( aItem );
112 m_ids.push_back( bItem );
113 m_ids.push_back( cItem );
114 m_ids.push_back( dItem );
115 }

References RC_ITEM::m_ids.

◆ SetItems() [3/3]

void RC_ITEM::SetItems ( const KIIDS aIds)
inlineinherited

Definition at line 99 of file rc_item.h.

99{ m_ids = aIds; }

References RC_ITEM::m_ids.

◆ SetParent()

void RC_ITEM::SetParent ( MARKER_BASE aMarker)
inlineinherited

Definition at line 124 of file rc_item.h.

124{ m_parent = aMarker; }

References RC_ITEM::m_parent.

◆ SetViolatingRule()

void DRC_ITEM::SetViolatingRule ( DRC_RULE aRule)
inline

Definition at line 127 of file drc_item.h.

127{ m_violatingRule = aRule; }

References m_violatingRule.

◆ SetViolatingTest()

void DRC_ITEM::SetViolatingTest ( DRC_TEST_PROVIDER aProvider)
inline

Definition at line 132 of file drc_item.h.

132{ m_violatingTest = aProvider; }

References m_violatingTest.

◆ ShowReport()

wxString RC_ITEM::ShowReport ( UNITS_PROVIDER aUnitsProvider,
SEVERITY  aSeverity,
const std::map< KIID, EDA_ITEM * > &  aItemMap 
) const
virtualinherited

Translate this object into a text string suitable for saving to disk in a report.

Returns
wxString - the simple multi-line report text.

Definition at line 79 of file rc_item.cpp.

81{
82 wxString severity;
83
84 switch( aSeverity )
85 {
86 case RPT_SEVERITY_ERROR: severity = wxT( "Severity: error" ); break;
87 case RPT_SEVERITY_WARNING: severity = wxT( "Severity: warning" ); break;
88 case RPT_SEVERITY_ACTION: severity = wxT( "Severity: action" ); break;
89 case RPT_SEVERITY_INFO: severity = wxT( "Severity: info" ); break;
90 case RPT_SEVERITY_EXCLUSION: severity = wxT( "Severity: exclusion" ); break;
91 case RPT_SEVERITY_DEBUG: severity = wxT( "Severity: debug" ); break;
92 default: ;
93 };
94
95 if( m_parent && m_parent->IsExcluded() )
96 severity += wxT( " (excluded)" );
97
98 EDA_ITEM* mainItem = nullptr;
99 EDA_ITEM* auxItem = nullptr;
100
101 auto ii = aItemMap.find( GetMainItemID() );
102
103 if( ii != aItemMap.end() )
104 mainItem = ii->second;
105
106 ii = aItemMap.find( GetAuxItemID() );
107
108 if( ii != aItemMap.end() )
109 auxItem = ii->second;
110
111 // Note: some customers machine-process these. So:
112 // 1) don't translate
113 // 2) try not to re-order or change syntax
114 // 3) report settings key (which should be more stable) in addition to message
115
116 if( mainItem && auxItem )
117 {
118 return wxString::Format( wxT( "[%s]: %s\n %s; %s\n %s: %s\n %s: %s\n" ),
122 severity,
123 showCoord( aUnitsProvider, mainItem->GetPosition()),
124 mainItem->GetSelectMenuText( aUnitsProvider ),
125 showCoord( aUnitsProvider, auxItem->GetPosition()),
126 auxItem->GetSelectMenuText( aUnitsProvider ) );
127 }
128 else if( mainItem )
129 {
130 return wxString::Format( wxT( "[%s]: %s\n %s; %s\n %s: %s\n" ),
134 severity,
135 showCoord( aUnitsProvider, mainItem->GetPosition()),
136 mainItem->GetSelectMenuText( aUnitsProvider ) );
137 }
138 else
139 {
140 return wxString::Format( wxT( "[%s]: %s\n %s; %s\n" ),
144 severity );
145 }
146}
A base class for most all the KiCad significant classes used in schematics and boards.
Definition: eda_item.h:85
virtual VECTOR2I GetPosition() const
Definition: eda_item.h:249
virtual wxString GetSelectMenuText(UNITS_PROVIDER *aUnitsProvider) const
Return the text to display to be used in the selection clarification context menu when multiple items...
Definition: eda_item.cpp:108
bool IsExcluded() const
Definition: marker_base.h:97
virtual KIID GetMainItemID() const
Definition: rc_item.h:117
virtual KIID GetAuxItemID() const
Definition: rc_item.h:118
virtual wxString GetErrorMessage() const
Definition: rc_item.cpp:38
wxString GetSettingsKey() const
Definition: rc_item.h:154
virtual wxString GetViolatingRuleDesc() const
Definition: rc_item.h:159
static wxString showCoord(UNITS_PROVIDER *aUnitsProvider, const VECTOR2I &aPos)
Definition: rc_item.cpp:47
@ RPT_SEVERITY_WARNING
@ RPT_SEVERITY_ERROR
@ RPT_SEVERITY_EXCLUSION
@ RPT_SEVERITY_DEBUG
@ RPT_SEVERITY_INFO
@ RPT_SEVERITY_ACTION

References Format(), RC_ITEM::GetAuxItemID(), RC_ITEM::GetErrorMessage(), RC_ITEM::GetMainItemID(), EDA_ITEM::GetPosition(), EDA_ITEM::GetSelectMenuText(), RC_ITEM::GetSettingsKey(), RC_ITEM::GetViolatingRuleDesc(), MARKER_BASE::IsExcluded(), RC_ITEM::m_parent, RPT_SEVERITY_ACTION, RPT_SEVERITY_DEBUG, RPT_SEVERITY_ERROR, RPT_SEVERITY_EXCLUSION, RPT_SEVERITY_INFO, RPT_SEVERITY_WARNING, and showCoord().

Member Data Documentation

◆ allItemTypes

std::vector< std::reference_wrapper< RC_ITEM > > DRC_ITEM::allItemTypes
staticprivate

A list of all DRC_ITEM types which are valid error codes.

Definition at line 148 of file drc_item.h.

Referenced by Create(), and GetItemsWithSeverities().

◆ annularWidth

DRC_ITEM DRC_ITEM::annularWidth
staticprivate

Definition at line 174 of file drc_item.h.

Referenced by Create().

◆ assertionFailure

DRC_ITEM DRC_ITEM::assertionFailure
staticprivate

Definition at line 193 of file drc_item.h.

Referenced by Create().

◆ clearance

DRC_ITEM DRC_ITEM::clearance
staticprivate

Definition at line 161 of file drc_item.h.

Referenced by Create().

◆ connectionWidth

DRC_ITEM DRC_ITEM::connectionWidth
staticprivate

Definition at line 172 of file drc_item.h.

Referenced by Create().

◆ copperSliver

DRC_ITEM DRC_ITEM::copperSliver
staticprivate

Definition at line 194 of file drc_item.h.

Referenced by Create().

◆ courtyardsOverlap

DRC_ITEM DRC_ITEM::courtyardsOverlap
staticprivate

Definition at line 179 of file drc_item.h.

Referenced by Create().

◆ diffPairGapOutOfRange

DRC_ITEM DRC_ITEM::diffPairGapOutOfRange
staticprivate

Definition at line 204 of file drc_item.h.

Referenced by Create().

◆ diffPairUncoupledLengthTooLong

DRC_ITEM DRC_ITEM::diffPairUncoupledLengthTooLong
staticprivate

Definition at line 205 of file drc_item.h.

Referenced by Create().

◆ drillTooSmall

DRC_ITEM DRC_ITEM::drillTooSmall
staticprivate

Definition at line 175 of file drc_item.h.

Referenced by Create().

◆ duplicateFootprints

DRC_ITEM DRC_ITEM::duplicateFootprints
staticprivate

Definition at line 186 of file drc_item.h.

Referenced by Create().

◆ edgeClearance

DRC_ITEM DRC_ITEM::edgeClearance
staticprivate

Definition at line 163 of file drc_item.h.

Referenced by Create().

◆ extraFootprint

DRC_ITEM DRC_ITEM::extraFootprint
staticprivate

Definition at line 188 of file drc_item.h.

Referenced by Create().

◆ footprint

DRC_ITEM DRC_ITEM::footprint
staticprivate

Definition at line 206 of file drc_item.h.

Referenced by Create().

◆ footprintTHPadhasNoHole

DRC_ITEM DRC_ITEM::footprintTHPadhasNoHole
staticprivate

Definition at line 208 of file drc_item.h.

Referenced by Create().

◆ footprintTypeMismatch

DRC_ITEM DRC_ITEM::footprintTypeMismatch
staticprivate

Definition at line 207 of file drc_item.h.

Referenced by Create().

◆ heading_DFM

DRC_ITEM DRC_ITEM::heading_DFM
staticprivate

Definition at line 151 of file drc_item.h.

◆ heading_electrical

DRC_ITEM DRC_ITEM::heading_electrical
staticprivate

Definition at line 150 of file drc_item.h.

◆ heading_misc

DRC_ITEM DRC_ITEM::heading_misc
staticprivate

Definition at line 155 of file drc_item.h.

◆ heading_readability

DRC_ITEM DRC_ITEM::heading_readability
staticprivate

Definition at line 154 of file drc_item.h.

◆ heading_schematic_parity

DRC_ITEM DRC_ITEM::heading_schematic_parity
staticprivate

Definition at line 152 of file drc_item.h.

◆ heading_signal_integrity

DRC_ITEM DRC_ITEM::heading_signal_integrity
staticprivate

Definition at line 153 of file drc_item.h.

◆ holeClearance

DRC_ITEM DRC_ITEM::holeClearance
staticprivate

Definition at line 171 of file drc_item.h.

Referenced by Create().

◆ holeNearHole

DRC_ITEM DRC_ITEM::holeNearHole
staticprivate

Definition at line 169 of file drc_item.h.

Referenced by Create().

◆ holesCoLocated

DRC_ITEM DRC_ITEM::holesCoLocated
staticprivate

Definition at line 170 of file drc_item.h.

Referenced by Create().

◆ invalidOutline

DRC_ITEM DRC_ITEM::invalidOutline
staticprivate

Definition at line 185 of file drc_item.h.

Referenced by Create().

◆ isolatedCopper

DRC_ITEM DRC_ITEM::isolatedCopper
staticprivate

Definition at line 165 of file drc_item.h.

Referenced by Create().

◆ itemOnDisabledLayer

DRC_ITEM DRC_ITEM::itemOnDisabledLayer
staticprivate

Definition at line 184 of file drc_item.h.

Referenced by Create().

◆ itemsNotAllowed

DRC_ITEM DRC_ITEM::itemsNotAllowed
staticprivate

Definition at line 159 of file drc_item.h.

Referenced by Create().

◆ lengthOutOfRange

DRC_ITEM DRC_ITEM::lengthOutOfRange
staticprivate

Definition at line 201 of file drc_item.h.

Referenced by Create().

◆ libFootprintIssues

DRC_ITEM DRC_ITEM::libFootprintIssues
staticprivate

Definition at line 190 of file drc_item.h.

Referenced by Create().

◆ libFootprintMismatch

DRC_ITEM DRC_ITEM::libFootprintMismatch
staticprivate

Definition at line 191 of file drc_item.h.

Referenced by Create().

◆ m_errorCode

int RC_ITEM::m_errorCode
protectedinherited

◆ m_errorMessage

wxString RC_ITEM::m_errorMessage
protectedinherited

A message describing the details of this specific error.

Definition at line 166 of file rc_item.h.

Referenced by RC_ITEM::GetErrorMessage(), RC_ITEM::RC_ITEM(), and RC_ITEM::SetErrorMessage().

◆ m_errorTitle

wxString RC_ITEM::m_errorTitle
protectedinherited

The string describing the type of error.

Definition at line 167 of file rc_item.h.

Referenced by CLEANUP_ITEM::CLEANUP_ITEM(), DRC_ITEM(), ERC_ITEM::ERC_ITEM(), RC_ITEM::GetErrorText(), and RC_ITEM::RC_ITEM().

◆ m_ids

◆ m_parent

MARKER_BASE* RC_ITEM::m_parent
protectedinherited

The marker this item belongs to, if any.

Definition at line 169 of file rc_item.h.

Referenced by DRC_ITEM(), RC_ITEM::GetParent(), RC_ITEM::RC_ITEM(), RC_ITEM::SetParent(), and RC_ITEM::ShowReport().

◆ m_settingsKey

wxString RC_ITEM::m_settingsKey
protectedinherited

The key used to describe this type of error in settings.

Definition at line 168 of file rc_item.h.

Referenced by DRC_ITEM(), ERC_ITEM::ERC_ITEM(), RC_ITEM::GetSettingsKey(), and RC_ITEM::RC_ITEM().

◆ m_violatingRule

DRC_RULE* DRC_ITEM::m_violatingRule = nullptr
private

Definition at line 211 of file drc_item.h.

Referenced by GetViolatingRule(), GetViolatingRuleDesc(), and SetViolatingRule().

◆ m_violatingTest

DRC_TEST_PROVIDER* DRC_ITEM::m_violatingTest = nullptr
private

Definition at line 212 of file drc_item.h.

Referenced by GetViolatingTest(), and SetViolatingTest().

◆ malformedCourtyard

DRC_ITEM DRC_ITEM::malformedCourtyard
staticprivate

Definition at line 181 of file drc_item.h.

Referenced by Create().

◆ microviaDrillTooSmall

DRC_ITEM DRC_ITEM::microviaDrillTooSmall
staticprivate

Definition at line 178 of file drc_item.h.

Referenced by Create().

◆ missingCourtyard

DRC_ITEM DRC_ITEM::missingCourtyard
staticprivate

Definition at line 180 of file drc_item.h.

Referenced by Create().

◆ missingFootprint

DRC_ITEM DRC_ITEM::missingFootprint
staticprivate

Definition at line 187 of file drc_item.h.

Referenced by Create().

◆ netConflict

DRC_ITEM DRC_ITEM::netConflict
staticprivate

Definition at line 189 of file drc_item.h.

Referenced by Create().

◆ npthInsideCourtyard

DRC_ITEM DRC_ITEM::npthInsideCourtyard
staticprivate

Definition at line 183 of file drc_item.h.

Referenced by Create().

◆ padstack

DRC_ITEM DRC_ITEM::padstack
staticprivate

Definition at line 177 of file drc_item.h.

Referenced by Create().

◆ pthInsideCourtyard

DRC_ITEM DRC_ITEM::pthInsideCourtyard
staticprivate

Definition at line 182 of file drc_item.h.

Referenced by Create().

◆ shortingItems

DRC_ITEM DRC_ITEM::shortingItems
staticprivate

Definition at line 158 of file drc_item.h.

Referenced by Create().

◆ silkClearance

DRC_ITEM DRC_ITEM::silkClearance
staticprivate

Definition at line 195 of file drc_item.h.

Referenced by Create().

◆ silkEdgeClearance

DRC_ITEM DRC_ITEM::silkEdgeClearance
staticprivate

Definition at line 196 of file drc_item.h.

Referenced by Create().

◆ silkOverlaps

DRC_ITEM DRC_ITEM::silkOverlaps
staticprivate

Definition at line 198 of file drc_item.h.

Referenced by Create().

◆ skewOutOfRange

DRC_ITEM DRC_ITEM::skewOutOfRange
staticprivate

Definition at line 202 of file drc_item.h.

Referenced by Create().

◆ solderMaskBridge

DRC_ITEM DRC_ITEM::solderMaskBridge
staticprivate

Definition at line 197 of file drc_item.h.

Referenced by Create().

◆ starvedThermal

DRC_ITEM DRC_ITEM::starvedThermal
staticprivate

Definition at line 166 of file drc_item.h.

Referenced by Create().

◆ textHeightOutOfRange

DRC_ITEM DRC_ITEM::textHeightOutOfRange
staticprivate

Definition at line 199 of file drc_item.h.

Referenced by Create().

◆ textOnEdgeCuts

DRC_ITEM DRC_ITEM::textOnEdgeCuts
staticprivate

Definition at line 160 of file drc_item.h.

Referenced by Create().

◆ textThicknessOutOfRange

DRC_ITEM DRC_ITEM::textThicknessOutOfRange
staticprivate

Definition at line 200 of file drc_item.h.

Referenced by Create().

◆ tooManyVias

DRC_ITEM DRC_ITEM::tooManyVias
staticprivate

Definition at line 203 of file drc_item.h.

Referenced by Create().

◆ trackDangling

DRC_ITEM DRC_ITEM::trackDangling
staticprivate

Definition at line 168 of file drc_item.h.

Referenced by Create().

◆ tracksCrossing

DRC_ITEM DRC_ITEM::tracksCrossing
staticprivate

Definition at line 162 of file drc_item.h.

Referenced by Create().

◆ trackWidth

DRC_ITEM DRC_ITEM::trackWidth
staticprivate

Definition at line 173 of file drc_item.h.

Referenced by Create().

◆ unconnectedItems

DRC_ITEM DRC_ITEM::unconnectedItems
staticprivate

Definition at line 157 of file drc_item.h.

Referenced by Create().

◆ unresolvedVariable

DRC_ITEM DRC_ITEM::unresolvedVariable
staticprivate

Definition at line 192 of file drc_item.h.

Referenced by Create().

◆ viaDangling

DRC_ITEM DRC_ITEM::viaDangling
staticprivate

Definition at line 167 of file drc_item.h.

Referenced by Create().

◆ viaDiameter

DRC_ITEM DRC_ITEM::viaDiameter
staticprivate

Definition at line 176 of file drc_item.h.

Referenced by Create().

◆ zonesIntersect

DRC_ITEM DRC_ITEM::zonesIntersect
staticprivate

Definition at line 164 of file drc_item.h.

Referenced by Create().


The documentation for this class was generated from the following files: