120 static std::shared_ptr<DRC_ITEM>
Create(
int aErrorCode );
128 static std::shared_ptr<DRC_ITEM>
Create(
const wxString& aErrorKey );
132 static std::vector<std::reference_wrapper<RC_ITEM>> itemsWithSeverities;
134 if( itemsWithSeverities.empty() )
141 itemsWithSeverities.push_back( item );
145 return itemsWithSeverities;
160 DRC_ITEM(
int aErrorCode = 0,
const wxString& aTitle =
"",
const wxString& aSettingsKey =
"" )
262 int GetCount(
int aSeverity = -1 )
const override;
264 std::shared_ptr<RC_ITEM>
GetItem(
int aIndex )
const override;
266 void DeleteItem(
int aIndex,
bool aDeep )
override;
Information pertinent to a Pcbnew printed circuit board.
DRC_ITEMS_PROVIDER(BOARD *aBoard, MARKER_BASE::MARKER_T aMarkerType, MARKER_BASE::MARKER_T otherMarkerType=MARKER_BASE::MARKER_UNSPEC)
void SetSeverities(int aSeverities) override
std::vector< MARKER_BASE::MARKER_T > m_markerTypes
void DeleteItem(int aIndex, bool aDeep) override
Remove (and optionally deletes) the indexed item from the list.
int GetCount(int aSeverity=-1) const override
std::vector< PCB_MARKER * > m_filteredMarkers
std::shared_ptr< RC_ITEM > GetItem(int aIndex) const override
Retrieve a RC_ITEM by index.
static DRC_ITEM lengthOutOfRange
KIID GetAuxItem3ID() const override
static DRC_ITEM viaDiameter
static DRC_ITEM silkEdgeClearance
static DRC_ITEM trackWidth
static DRC_ITEM heading_DFM
static DRC_ITEM annularWidth
static DRC_ITEM pthInsideCourtyard
static DRC_ITEM trackSegmentLength
void SetViolatingRule(DRC_RULE *aRule)
static DRC_ITEM schematicParity
wxString GetViolatingRuleDesc() const override
static std::vector< std::reference_wrapper< RC_ITEM > > GetItemsWithSeverities()
static DRC_ITEM netConflict
static DRC_ITEM copperSliver
DRC_RULE * GetViolatingRule() const
static DRC_ITEM holeNearHole
static DRC_ITEM heading_signal_integrity
static DRC_ITEM courtyardsOverlap
static DRC_ITEM textThicknessOutOfRange
static DRC_ITEM connectionWidth
static DRC_ITEM footprint
static DRC_ITEM unresolvedVariable
static DRC_ITEM assertionFailure
static DRC_ITEM npthInsideCourtyard
static DRC_ITEM footprintFilters
static std::shared_ptr< DRC_ITEM > Create(int aErrorCode)
Constructs a DRC_ITEM for the given error code.
static DRC_ITEM textOnEdgeCuts
static std::vector< std::reference_wrapper< RC_ITEM > > allItemTypes
A list of all DRC_ITEM types which are valid error codes.
static DRC_ITEM zonesIntersect
static DRC_ITEM starvedThermal
static DRC_ITEM shortingItems
static DRC_ITEM tracksCrossing
static DRC_ITEM missingCourtyard
static DRC_ITEM skewOutOfRange
static DRC_ITEM trackDangling
static DRC_ITEM viaDangling
static DRC_ITEM genericError
static DRC_ITEM drillTooSmall
static DRC_ITEM holesCoLocated
static DRC_ITEM missingFootprint
static DRC_ITEM textHeightOutOfRange
void SetViolatingTest(DRC_TEST_PROVIDER *aProvider)
static DRC_ITEM diffPairGapOutOfRange
static DRC_ITEM heading_electrical
static DRC_ITEM itemOnDisabledLayer
static DRC_ITEM heading_readability
static DRC_ITEM itemsNotAllowed
DRC_ITEM(int aErrorCode=0, const wxString &aTitle="", const wxString &aSettingsKey="")
DRC_TEST_PROVIDER * GetViolatingTest() const
static DRC_ITEM extraFootprint
static DRC_ITEM diffPairUncoupledLengthTooLong
KIID GetAuxItem2ID() const override
static DRC_ITEM unconnectedItems
static DRC_ITEM clearance
DRC_RULE * m_violatingRule
static DRC_ITEM libFootprintMismatch
DRC_TEST_PROVIDER * m_violatingTest
static DRC_ITEM viaCountOutOfRange
static DRC_ITEM edgeClearance
static DRC_ITEM genericWarning
static DRC_ITEM invalidOutline
static DRC_ITEM silkOverlaps
static DRC_ITEM isolatedCopper
static DRC_ITEM malformedCourtyard
static DRC_ITEM heading_internal
static DRC_ITEM holeClearance
static DRC_ITEM libFootprintIssues
static DRC_ITEM padstackInvalid
static DRC_ITEM trackAngle
static DRC_ITEM heading_schematic_parity
static DRC_ITEM microviaDrillTooSmall
static DRC_ITEM solderMaskBridge
static DRC_ITEM heading_misc
static DRC_ITEM footprintTypeMismatch
static DRC_ITEM footprintTHPadhasNoHole
static DRC_ITEM silkClearance
static DRC_ITEM duplicateFootprints
Represent a DRC "provider" which runs some DRC functions over a BOARD and spits out DRC_ITEM and posi...
Base PCB main window class for Pcbnew, Gerbview, and CvPcb footprint viewer.
Provide an abstract interface of a RC_ITEM* list manager.
A holder for a rule check item, DRC in Pcbnew or ERC in Eeschema.
wxString m_settingsKey
The key used to describe this type of error in settings.
int m_errorCode
The error code's numeric value.
MARKER_BASE * m_parent
The marker this item belongs to, if any.
wxString m_errorTitle
The string describing the type of error.
@ DRCE_DISABLED_LAYER_ITEM
@ DRCE_DIFF_PAIR_GAP_OUT_OF_RANGE
@ DRCE_SILK_EDGE_CLEARANCE
@ DRCE_LIB_FOOTPRINT_ISSUES
@ DRCE_OVERLAPPING_FOOTPRINTS
@ DRCE_DRILL_OUT_OF_RANGE
@ DRCE_TRACK_SEGMENT_LENGTH
@ DRCE_DRILLED_HOLES_TOO_CLOSE
@ DRCE_DIFF_PAIR_UNCOUPLED_LENGTH_TOO_LONG
@ DRCE_MICROVIA_DRILL_OUT_OF_RANGE
@ DRCE_MALFORMED_COURTYARD
@ DRCE_UNRESOLVED_VARIABLE
@ DRCE_FOOTPRINT_TYPE_MISMATCH
@ DRCE_DUPLICATE_FOOTPRINT
@ DRCE_DRILLED_HOLES_COLOCATED
@ DRCE_LENGTH_OUT_OF_RANGE
@ DRCE_LIB_FOOTPRINT_MISMATCH
@ DRCE_PAD_TH_WITH_NO_HOLE
@ DRCE_VIA_COUNT_OUT_OF_RANGE