|
KiCad PCB EDA Suite
|
#include <algorithm>#include <cstdio>#include <memory>#include <mutex>#include <wx/log.h>#include <board.h>#include <board_design_settings.h>#include <project/net_settings.h>#include <component_classes/component_class.h>#include <drc/drc_rtree.h>#include <drc/drc_engine.h>#include <footprint.h>#include <footprint_courtyard_index.h>#include <lset.h>#include <pad.h>#include <pcb_track.h>#include <pcb_group.h>#include <geometry/shape_segment.h>#include <pcbexpr_evaluator.h>#include <connectivity/connectivity_data.h>#include <connectivity/connectivity_algo.h>#include <connectivity/from_to_cache.h>#include <properties/property.h>#include <properties/property_mgr.h>Go to the source code of this file.
Classes | |
| class | SCOPED_LAYERSET |
Macros | |
| #define | MISSING_LAYER_ARG(f) |
| #define | MISSING_FP_ARG(f) |
| #define | MISSING_AREA_ARG(f) |
| #define | MISSING_GROUP_ARG(f) |
| #define | MISSING_SHEET_ARG(f) |
| #define | MISSING_REF_ARG(f) |
| #define | MISSING_DP_ARG(f) |
Functions | |
| bool | fromToFunc (LIBEVAL::CONTEXT *aCtx, void *self) |
| static void | existsOnLayerFunc (LIBEVAL::CONTEXT *aCtx, void *self) |
| static void | isPlatedFunc (LIBEVAL::CONTEXT *aCtx, void *self) |
| bool | collidesWithCourtyard (BOARD_ITEM *aItem, std::shared_ptr< SHAPE > &aItemShape, PCBEXPR_CONTEXT *aCtx, FOOTPRINT *aFootprint, PCB_LAYER_ID aSide) |
| static bool | testFootprintSelector (FOOTPRINT *aFp, const wxString &aSelector) |
| static bool | searchFootprintsNearItem (BOARD *aBoard, const wxString &aArg, PCBEXPR_CONTEXT *aCtx, BOARD_ITEM *aItem, const std::function< bool(FOOTPRINT *)> &aFunc) |
| static void | intersectsCourtyardFunc (LIBEVAL::CONTEXT *aCtx, void *self) |
| static void | intersectsFrontCourtyardFunc (LIBEVAL::CONTEXT *aCtx, void *self) |
| static void | intersectsBackCourtyardFunc (LIBEVAL::CONTEXT *aCtx, void *self) |
| static SHAPE_POLY_SET | getDeflatedZoneOutline (BOARD *aBoard, ZONE *aArea) |
| bool | collidesWithArea (BOARD_ITEM *aItem, PCB_LAYER_ID aLayer, PCBEXPR_CONTEXT *aCtx, ZONE *aArea) |
| bool | searchAreas (BOARD *aBoard, const wxString &aArg, PCBEXPR_CONTEXT *aCtx, const std::function< bool(ZONE *)> &aFunc) |
| static void | intersectsAreaFunc (LIBEVAL::CONTEXT *aCtx, void *self) |
| static void | enclosedByAreaFunc (LIBEVAL::CONTEXT *aCtx, void *self) |
| static void | memberOfGroupFunc (LIBEVAL::CONTEXT *aCtx, void *self) |
| static void | memberOfSheetFunc (LIBEVAL::CONTEXT *aCtx, void *self) |
| static void | memberOfSheetOrChildrenFunc (LIBEVAL::CONTEXT *aCtx, void *self) |
| static void | memberOfFootprintFunc (LIBEVAL::CONTEXT *aCtx, void *self) |
| static void | isMicroVia (LIBEVAL::CONTEXT *aCtx, void *self) |
| static void | isBlindVia (LIBEVAL::CONTEXT *aCtx, void *self) |
| static void | isBuriedVia (LIBEVAL::CONTEXT *aCtx, void *self) |
| static void | isBlindBuriedViaFunc (LIBEVAL::CONTEXT *aCtx, void *self) |
| static void | isCoupledDiffPairFunc (LIBEVAL::CONTEXT *aCtx, void *self) |
| static void | inDiffPairFunc (LIBEVAL::CONTEXT *aCtx, void *self) |
| static void | inNetChainFunc (LIBEVAL::CONTEXT *aCtx, void *self) |
| static void | hasNetChainFunc (LIBEVAL::CONTEXT *aCtx, void *self) |
| static void | inNetChainClassFunc (LIBEVAL::CONTEXT *aCtx, void *self) |
| static void | getFieldFunc (LIBEVAL::CONTEXT *aCtx, void *self) |
| static void | hasNetclassFunc (LIBEVAL::CONTEXT *aCtx, void *self) |
| static void | hasExactNetclassFunc (LIBEVAL::CONTEXT *aCtx, void *self) |
| static void | hasComponentClassFunc (LIBEVAL::CONTEXT *aCtx, void *self) |
| #define MISSING_AREA_ARG | ( | f | ) |
Definition at line 753 of file pcbexpr_functions.cpp.
Referenced by enclosedByAreaFunc(), and intersectsAreaFunc().
| #define MISSING_DP_ARG | ( | f | ) |
Definition at line 1311 of file pcbexpr_functions.cpp.
Referenced by inDiffPairFunc().
| #define MISSING_FP_ARG | ( | f | ) |
Definition at line 303 of file pcbexpr_functions.cpp.
Referenced by intersectsBackCourtyardFunc(), intersectsCourtyardFunc(), and intersectsFrontCourtyardFunc().
| #define MISSING_GROUP_ARG | ( | f | ) |
Definition at line 1001 of file pcbexpr_functions.cpp.
Referenced by memberOfGroupFunc().
| #define MISSING_LAYER_ARG | ( | f | ) |
Definition at line 80 of file pcbexpr_functions.cpp.
Referenced by existsOnLayerFunc().
| #define MISSING_REF_ARG | ( | f | ) |
Definition at line 1168 of file pcbexpr_functions.cpp.
Referenced by memberOfFootprintFunc().
| #define MISSING_SHEET_ARG | ( | f | ) |
Definition at line 1047 of file pcbexpr_functions.cpp.
Referenced by memberOfSheetFunc(), and memberOfSheetOrChildrenFunc().
| bool collidesWithArea | ( | BOARD_ITEM * | aItem, |
| PCB_LAYER_ID | aLayer, | ||
| PCBEXPR_CONTEXT * | aCtx, | ||
| ZONE * | aArea ) |
Avoid buried vias that don't overlap the zone's layers
Definition at line 547 of file pcbexpr_functions.cpp.
References _, B_CrtYd, LSET::BackMask(), SHAPE_POLY_SET::Collide(), LSET::Contains(), F_CrtYd, LSET::FrontMask(), BOARD_ITEM::GetBoard(), ZONE::GetBoundingBox(), FOOTPRINT::GetCourtyard(), getDeflatedZoneOutline(), BOARD_ITEM::GetEffectiveHoleShape(), BOARD_ITEM::GetEffectiveShape(), EDA_ITEM::GetFlags(), PCBEXPR_CONTEXT::GetLayer(), BOARD_ITEM::GetLayerSet(), ZONE::GetLayerSet(), LIBEVAL::CONTEXT::HasErrorCallback(), HOLE_PROXY, ZONE::IsFilled(), BOARD::m_CopperZoneRTreeCache, MALFORMED_COURTYARDS, SHAPE_POLY_SET::Outline(), SHAPE_POLY_SET::OutlineCount(), PCB_FOOTPRINT_T, PCB_PAD_T, PCB_VIA_T, PCB_ZONE_T, DRC_RTREE::QueryColliding(), LIBEVAL::CONTEXT::ReportError(), EDA_ITEM::Type(), and UNDEFINED_LAYER.
Referenced by intersectsAreaFunc().
| bool collidesWithCourtyard | ( | BOARD_ITEM * | aItem, |
| std::shared_ptr< SHAPE > & | aItemShape, | ||
| PCBEXPR_CONTEXT * | aCtx, | ||
| FOOTPRINT * | aFootprint, | ||
| PCB_LAYER_ID | aSide ) |
Definition at line 196 of file pcbexpr_functions.cpp.
References SHAPE_POLY_SET::BBox(), SHAPE_POLY_SET::Collide(), EDA_ITEM::GetBoundingBox(), FOOTPRINT::GetCourtyard(), BOARD_ITEM::GetEffectiveShape(), PCBEXPR_CONTEXT::GetLayer(), BOX2< Vec >::Intersects(), and SHAPE_POLY_SET::OutlineCount().
Referenced by intersectsBackCourtyardFunc(), intersectsCourtyardFunc(), and intersectsFrontCourtyardFunc().
|
static |
Definition at line 884 of file pcbexpr_functions.cpp.
References LIBEVAL::CONTEXT::AllocValue(), LIBEVAL::VALUE::AsString(), SHAPE_POLY_SET::BooleanSubtract(), SHAPE_POLY_SET::ClearArcs(), ERROR_OUTSIDE, SHARDED_CACHE< KEY, VALUE, SHARDS >::Get(), BOARD_ITEM::GetBoard(), EDA_ITEM::GetBoundingBox(), ZONE::GetBoundingBox(), PCBEXPR_CONTEXT::GetConstraint(), BOARD::GetDesignSettings(), EDA_ITEM::GetFlags(), PCBEXPR_CONTEXT::GetLayer(), BOARD_ITEM::GetLayerSet(), ZONE::GetLayerSet(), PCBEXPR_VAR_REF::GetObject(), BOARD_ITEM::GetParent(), LIBEVAL::CONTEXT::HasErrorCallback(), BOX2< Vec >::Intersects(), SHAPE_POLY_SET::IsEmpty(), BOARD::m_EnclosedByAreaCache, BOARD::m_EnclosedByAreaResultCache, BOARD_DESIGN_SETTINGS::m_MaxError, MISSING_AREA_ARG, ZONE::Outline(), PCB_FOOTPRINT_T, PCB_ZONE_T, LIBEVAL::CONTEXT::Pop(), LIBEVAL::CONTEXT::Push(), LIBEVAL::CONTEXT::ReportError(), res, result, ROUTER_TRANSIENT, searchAreas(), SHARDED_CACHE< KEY, VALUE, SHARDS >::Set(), FOOTPRINT::TransformFPShapesToPolySet(), FOOTPRINT::TransformPadsToPolySet(), BOARD_ITEM::TransformShapeToPolygon(), and EDA_ITEM::Type().
Referenced by PCBEXPR_BUILTIN_FUNCTIONS::RegisterAllFunctions().
|
static |
Definition at line 82 of file pcbexpr_functions.cpp.
References _, LIBEVAL::CONTEXT::AllocValue(), LIBEVAL::VALUE::AsString(), BOARD_ITEM::GetBoard(), BOARD_ITEM::GetLayerSet(), PCBEXPR_VAR_REF::GetObject(), LIBEVAL::CONTEXT::HasErrorCallback(), ENUM_MAP< T >::Instance(), BOARD_ITEM::IsOnLayer(), BOARD::m_CachesMutex, BOARD::m_LayerExpressionCache, MISSING_LAYER_ARG, LIBEVAL::CONTEXT::Pop(), LIBEVAL::CONTEXT::Push(), LIBEVAL::CONTEXT::ReportError(), result, BASE_SET::set(), and ToLAYER_ID().
Referenced by PCBEXPR_BUILTIN_FUNCTIONS::RegisterAllFunctions().
| bool fromToFunc | ( | LIBEVAL::CONTEXT * | aCtx, |
| void * | self ) |
Definition at line 48 of file pcbexpr_functions.cpp.
References LIBEVAL::CONTEXT::AllocValue(), LIBEVAL::VALUE::AsString(), BOARD_ITEM::GetBoard(), BOARD::GetConnectivity(), CONNECTIVITY_DATA::GetFromToCache(), PCBEXPR_VAR_REF::GetObject(), LIBEVAL::CONTEXT::Pop(), LIBEVAL::CONTEXT::Push(), and result.
Referenced by PCBEXPR_BUILTIN_FUNCTIONS::RegisterAllFunctions().
|
static |
Definition at line 520 of file pcbexpr_functions.cpp.
References ALLOW_ACUTE_CORNERS, ARC_LOW_DEF, SHAPE_POLY_SET::ClearArcs(), SHAPE_POLY_SET::CloneDropTriangulation(), SHAPE_POLY_SET::Deflate(), BOARD::GetDesignSettings(), BOARD_DESIGN_SETTINGS::GetDRCEpsilon(), BOARD::m_CachesMutex, BOARD::m_DeflatedZoneOutlineCache, and ZONE::Outline().
Referenced by collidesWithArea().
|
static |
Definition at line 1498 of file pcbexpr_functions.cpp.
References _, LIBEVAL::CONTEXT::AllocValue(), LIBEVAL::VALUE::AsString(), SHARDED_CACHE< KEY, VALUE, SHARDS >::Get(), BOARD_ITEM::GetBoard(), FOOTPRINT::GetField(), PCBEXPR_VAR_REF::GetObject(), EDA_TEXT::GetText(), LIBEVAL::CONTEXT::HasErrorCallback(), BOARD::m_ItemFieldCache, PCB_FOOTPRINT_T, LIBEVAL::CONTEXT::Pop(), LIBEVAL::CONTEXT::Push(), LIBEVAL::CONTEXT::ReportError(), result, SHARDED_CACHE< KEY, VALUE, SHARDS >::Set(), text, and EDA_ITEM::Type().
Referenced by PCBEXPR_BUILTIN_FUNCTIONS::RegisterAllFunctions().
|
static |
Definition at line 1653 of file pcbexpr_functions.cpp.
References _, LIBEVAL::CONTEXT::AllocValue(), LIBEVAL::VALUE::AsString(), COMPONENT_CLASS::ContainsClassName(), FOOTPRINT::GetComponentClass(), PCBEXPR_VAR_REF::GetObject(), BOARD_ITEM::GetParentFootprint(), LIBEVAL::CONTEXT::HasErrorCallback(), PCB_FOOTPRINT_T, LIBEVAL::CONTEXT::Pop(), LIBEVAL::CONTEXT::Push(), LIBEVAL::CONTEXT::ReportError(), result, and EDA_ITEM::Type().
Referenced by PCBEXPR_BUILTIN_FUNCTIONS::RegisterAllFunctions().
|
static |
Definition at line 1592 of file pcbexpr_functions.cpp.
References _, LIBEVAL::CONTEXT::AllocValue(), LIBEVAL::VALUE::AsString(), BOARD_ITEM::GetBoard(), BOARD_CONNECTED_ITEM::GetEffectiveNetClass(), EDA_ITEM::GetFlags(), NETCLASS::GetName(), PCBEXPR_VAR_REF::GetObject(), LIBEVAL::CONTEXT::HasErrorCallback(), BOARD_ITEM::IsConnected(), BOARD::m_CachesMutex, BOARD::m_ItemNetclassCache, LIBEVAL::CONTEXT::Pop(), LIBEVAL::CONTEXT::Push(), LIBEVAL::CONTEXT::ReportError(), result, and ROUTER_TRANSIENT.
Referenced by PCBEXPR_BUILTIN_FUNCTIONS::RegisterAllFunctions().
|
static |
Definition at line 1411 of file pcbexpr_functions.cpp.
References LIBEVAL::CONTEXT::AllocValue(), BOARD_ITEM::GetBoard(), NETINFO_ITEM::GetNetChain(), PCBEXPR_VAR_REF::GetObject(), BOARD_ITEM::IsConnected(), LIBEVAL::CONTEXT::Push(), and result.
Referenced by PCBEXPR_BUILTIN_FUNCTIONS::RegisterAllFunctions().
|
static |
Definition at line 1553 of file pcbexpr_functions.cpp.
References _, LIBEVAL::CONTEXT::AllocValue(), LIBEVAL::VALUE::AsString(), NETCLASS::ContainsNetclassWithName(), BOARD_CONNECTED_ITEM::GetEffectiveNetClass(), PCBEXPR_VAR_REF::GetObject(), LIBEVAL::CONTEXT::HasErrorCallback(), BOARD_ITEM::IsConnected(), LIBEVAL::CONTEXT::Pop(), LIBEVAL::CONTEXT::Push(), LIBEVAL::CONTEXT::ReportError(), and result.
Referenced by PCBEXPR_BUILTIN_FUNCTIONS::RegisterAllFunctions().
|
static |
Definition at line 1314 of file pcbexpr_functions.cpp.
References LIBEVAL::CONTEXT::AllocValue(), LIBEVAL::VALUE::AsString(), BOARD::FindNet(), BOARD_ITEM::GetBoard(), NETINFO_ITEM::GetNetname(), PCBEXPR_VAR_REF::GetObject(), LIBEVAL::CONTEXT::HasErrorCallback(), BOARD_ITEM::IsConnected(), DRC_ENGINE::MatchDpSuffix(), MISSING_DP_ARG, LIBEVAL::CONTEXT::Pop(), LIBEVAL::CONTEXT::Push(), LIBEVAL::CONTEXT::ReportError(), and result.
Referenced by PCBEXPR_BUILTIN_FUNCTIONS::RegisterAllFunctions().
|
static |
Definition at line 1437 of file pcbexpr_functions.cpp.
References _, LIBEVAL::CONTEXT::AllocValue(), LIBEVAL::VALUE::AsString(), BOARD_ITEM::GetBoard(), NETINFO_ITEM::GetNetChain(), PCBEXPR_VAR_REF::GetObject(), LIBEVAL::CONTEXT::HasErrorCallback(), BOARD_ITEM::IsConnected(), LIBEVAL::CONTEXT::Pop(), LIBEVAL::CONTEXT::Push(), LIBEVAL::CONTEXT::ReportError(), and result.
Referenced by PCBEXPR_BUILTIN_FUNCTIONS::RegisterAllFunctions().
|
static |
Definition at line 1365 of file pcbexpr_functions.cpp.
References _, LIBEVAL::CONTEXT::AllocValue(), LIBEVAL::VALUE::AsString(), BOARD_ITEM::GetBoard(), NETINFO_ITEM::GetNetChain(), PCBEXPR_VAR_REF::GetObject(), LIBEVAL::CONTEXT::HasErrorCallback(), BOARD_ITEM::IsConnected(), LIBEVAL::CONTEXT::Pop(), LIBEVAL::CONTEXT::Push(), LIBEVAL::CONTEXT::ReportError(), and result.
Referenced by PCBEXPR_BUILTIN_FUNCTIONS::RegisterAllFunctions().
|
static |
Definition at line 756 of file pcbexpr_functions.cpp.
References SCOPED_LAYERSET::Add(), LIBEVAL::CONTEXT::AllocValue(), LIBEVAL::VALUE::AsString(), B_SilkS, collidesWithArea(), F_SilkS, SHARDED_CACHE< KEY, VALUE, SHARDS >::Get(), BOARD_ITEM::GetBoard(), EDA_ITEM::GetBoundingBox(), ZONE::GetBoundingBox(), PCBEXPR_CONTEXT::GetConstraint(), EDA_ITEM::GetFlags(), PCBEXPR_CONTEXT::GetLayer(), BOARD_ITEM::GetLayerSet(), ZONE::GetLayerSet(), PCBEXPR_VAR_REF::GetObject(), BOARD_ITEM::GetParent(), LIBEVAL::CONTEXT::HasErrorCallback(), BOX2< Vec >::Intersects(), IsBackLayer(), IsFrontLayer(), ZONE::IsOnLayer(), BOARD::m_IntersectsAreaCache, BOARD::m_IntersectsAreaResultCache, MISSING_AREA_ARG, LIBEVAL::CONTEXT::Pop(), LIBEVAL::CONTEXT::Push(), LIBEVAL::CONTEXT::ReportError(), res, result, ROUTER_TRANSIENT, searchAreas(), SHARDED_CACHE< KEY, VALUE, SHARDS >::Set(), BASE_SET::set(), SILK_CLEARANCE_CONSTRAINT, LSET::UIOrder(), and UNDEFINED_LAYER.
Referenced by PCBEXPR_BUILTIN_FUNCTIONS::RegisterAllFunctions().
|
static |
Definition at line 451 of file pcbexpr_functions.cpp.
References LIBEVAL::CONTEXT::AllocValue(), LIBEVAL::VALUE::AsString(), B_Cu, collidesWithCourtyard(), F_Cu, SHARDED_CACHE< KEY, VALUE, SHARDS >::Get(), BOARD_ITEM::GetBoard(), PCBEXPR_CONTEXT::GetConstraint(), EDA_ITEM::GetFlags(), PCBEXPR_CONTEXT::GetLayer(), PCBEXPR_VAR_REF::GetObject(), LIBEVAL::CONTEXT::HasErrorCallback(), FOOTPRINT::IsFlipped(), BOARD::m_IntersectsBCourtyardCache, BOARD::m_IntersectsBCourtyardResultCache, MISSING_FP_ARG, LIBEVAL::CONTEXT::Pop(), LIBEVAL::CONTEXT::Push(), LIBEVAL::CONTEXT::ReportError(), res, result, ROUTER_TRANSIENT, searchFootprintsNearItem(), and SHARDED_CACHE< KEY, VALUE, SHARDS >::Set().
Referenced by PCBEXPR_BUILTIN_FUNCTIONS::RegisterAllFunctions().
|
static |
Definition at line 306 of file pcbexpr_functions.cpp.
References LIBEVAL::CONTEXT::AllocValue(), LIBEVAL::VALUE::AsString(), B_Cu, collidesWithCourtyard(), F_Cu, SHARDED_CACHE< KEY, VALUE, SHARDS >::Get(), BOARD_ITEM::GetBoard(), PCBEXPR_CONTEXT::GetConstraint(), EDA_ITEM::GetFlags(), PCBEXPR_CONTEXT::GetLayer(), PCBEXPR_VAR_REF::GetObject(), LIBEVAL::CONTEXT::HasErrorCallback(), BOARD::m_IntersectsCourtyardCache, BOARD::m_IntersectsCourtyardResultCache, MISSING_FP_ARG, LIBEVAL::CONTEXT::Pop(), LIBEVAL::CONTEXT::Push(), LIBEVAL::CONTEXT::ReportError(), res, result, ROUTER_TRANSIENT, searchFootprintsNearItem(), and SHARDED_CACHE< KEY, VALUE, SHARDS >::Set().
Referenced by PCBEXPR_BUILTIN_FUNCTIONS::RegisterAllFunctions().
|
static |
Definition at line 382 of file pcbexpr_functions.cpp.
References LIBEVAL::CONTEXT::AllocValue(), LIBEVAL::VALUE::AsString(), B_Cu, collidesWithCourtyard(), F_Cu, SHARDED_CACHE< KEY, VALUE, SHARDS >::Get(), BOARD_ITEM::GetBoard(), PCBEXPR_CONTEXT::GetConstraint(), EDA_ITEM::GetFlags(), PCBEXPR_CONTEXT::GetLayer(), PCBEXPR_VAR_REF::GetObject(), LIBEVAL::CONTEXT::HasErrorCallback(), FOOTPRINT::IsFlipped(), BOARD::m_IntersectsFCourtyardCache, BOARD::m_IntersectsFCourtyardResultCache, MISSING_FP_ARG, LIBEVAL::CONTEXT::Pop(), LIBEVAL::CONTEXT::Push(), LIBEVAL::CONTEXT::ReportError(), res, result, ROUTER_TRANSIENT, searchFootprintsNearItem(), and SHARDED_CACHE< KEY, VALUE, SHARDS >::Set().
Referenced by PCBEXPR_BUILTIN_FUNCTIONS::RegisterAllFunctions().
|
static |
Definition at line 1246 of file pcbexpr_functions.cpp.
References LIBEVAL::CONTEXT::AllocValue(), PCBEXPR_VAR_REF::GetObject(), PCB_VIA_T, LIBEVAL::CONTEXT::Push(), result, EDA_ITEM::Type(), and via.
Referenced by PCBEXPR_BUILTIN_FUNCTIONS::RegisterAllFunctions().
|
static |
Definition at line 1220 of file pcbexpr_functions.cpp.
References LIBEVAL::CONTEXT::AllocValue(), PCBEXPR_VAR_REF::GetObject(), PCB_VIA::IsBlindVia(), PCB_VIA_T, LIBEVAL::CONTEXT::Push(), result, and EDA_ITEM::Type().
Referenced by PCBEXPR_BUILTIN_FUNCTIONS::RegisterAllFunctions().
|
static |
Definition at line 1233 of file pcbexpr_functions.cpp.
References LIBEVAL::CONTEXT::AllocValue(), PCBEXPR_VAR_REF::GetObject(), PCB_VIA::IsBuriedVia(), PCB_VIA_T, LIBEVAL::CONTEXT::Push(), result, and EDA_ITEM::Type().
Referenced by PCBEXPR_BUILTIN_FUNCTIONS::RegisterAllFunctions().
|
static |
Definition at line 1265 of file pcbexpr_functions.cpp.
References LIBEVAL::CONTEXT::AllocValue(), DIFF_PAIR_GAP_CONSTRAINT, dummy, BOARD_ITEM::GetBoard(), PCBEXPR_CONTEXT::GetConstraint(), PCBEXPR_CONTEXT::GetItem(), BOARD_CONNECTED_ITEM::GetNet(), BOARD_CONNECTED_ITEM::GetNetname(), NETINFO_ITEM::GetNetname(), LENGTH_CONSTRAINT, DRC_ENGINE::MatchDpSuffix(), NET_CHAIN_LENGTH_CONSTRAINT, LIBEVAL::CONTEXT::Push(), result, and SKEW_CONSTRAINT.
Referenced by PCBEXPR_BUILTIN_FUNCTIONS::RegisterAllFunctions().
|
static |
Definition at line 1207 of file pcbexpr_functions.cpp.
References LIBEVAL::CONTEXT::AllocValue(), PCBEXPR_VAR_REF::GetObject(), PCB_VIA::IsMicroVia(), PCB_VIA_T, LIBEVAL::CONTEXT::Push(), result, and EDA_ITEM::Type().
Referenced by PCBEXPR_BUILTIN_FUNCTIONS::RegisterAllFunctions().
|
static |
Definition at line 176 of file pcbexpr_functions.cpp.
References LIBEVAL::CONTEXT::AllocValue(), PAD::GetAttribute(), PCBEXPR_VAR_REF::GetObject(), PCB_PAD_T, PCB_VIA_T, PTH, LIBEVAL::CONTEXT::Push(), result, and EDA_ITEM::Type().
Referenced by PCBEXPR_BUILTIN_FUNCTIONS::RegisterAllFunctions().
|
static |
Definition at line 1171 of file pcbexpr_functions.cpp.
References LIBEVAL::CONTEXT::AllocValue(), LIBEVAL::VALUE::AsString(), PCBEXPR_VAR_REF::GetObject(), BOARD_ITEM::GetParentFootprint(), LIBEVAL::CONTEXT::HasErrorCallback(), MISSING_REF_ARG, LIBEVAL::CONTEXT::Pop(), LIBEVAL::CONTEXT::Push(), LIBEVAL::CONTEXT::ReportError(), result, and testFootprintSelector().
Referenced by PCBEXPR_BUILTIN_FUNCTIONS::RegisterAllFunctions().
|
static |
Definition at line 1004 of file pcbexpr_functions.cpp.
References LIBEVAL::CONTEXT::AllocValue(), LIBEVAL::VALUE::AsString(), PCBEXPR_VAR_REF::GetObject(), BOARD_ITEM::GetParent(), EDA_ITEM::GetParentGroup(), group, LIBEVAL::CONTEXT::HasErrorCallback(), MISSING_GROUP_ARG, PCB_FOOTPRINT_T, LIBEVAL::CONTEXT::Pop(), LIBEVAL::CONTEXT::Push(), LIBEVAL::CONTEXT::ReportError(), result, and EDA_ITEM::Type().
Referenced by PCBEXPR_BUILTIN_FUNCTIONS::RegisterAllFunctions().
|
static |
Definition at line 1050 of file pcbexpr_functions.cpp.
References LIBEVAL::CONTEXT::AllocValue(), LIBEVAL::VALUE::AsString(), PCBEXPR_VAR_REF::GetObject(), BOARD_ITEM::GetParentFootprint(), FOOTPRINT::GetSheetname(), LIBEVAL::CONTEXT::HasErrorCallback(), MISSING_SHEET_ARG, PCB_FOOTPRINT_T, LIBEVAL::CONTEXT::Pop(), LIBEVAL::CONTEXT::Push(), LIBEVAL::CONTEXT::ReportError(), result, and EDA_ITEM::Type().
Referenced by PCBEXPR_BUILTIN_FUNCTIONS::RegisterAllFunctions().
|
static |
Definition at line 1105 of file pcbexpr_functions.cpp.
References LIBEVAL::CONTEXT::AllocValue(), LIBEVAL::VALUE::AsString(), PCBEXPR_VAR_REF::GetObject(), BOARD_ITEM::GetParentFootprint(), FOOTPRINT::GetSheetname(), LIBEVAL::CONTEXT::HasErrorCallback(), MISSING_SHEET_ARG, PCB_FOOTPRINT_T, LIBEVAL::CONTEXT::Pop(), LIBEVAL::CONTEXT::Push(), LIBEVAL::CONTEXT::ReportError(), result, and EDA_ITEM::Type().
Referenced by PCBEXPR_BUILTIN_FUNCTIONS::RegisterAllFunctions().
| bool searchAreas | ( | BOARD * | aBoard, |
| const wxString & | aArg, | ||
| PCBEXPR_CONTEXT * | aCtx, | ||
| const std::function< bool(ZONE *)> & | aFunc ) |
Definition at line 650 of file pcbexpr_functions.cpp.
References BOARD::Footprints(), PCBEXPR_CONTEXT::GetItem(), BOARD::GetItemByIdCache(), BOARD::m_CachesMutex, BOARD::m_ZonesByNameCache, PCB_ZONE_T, KIID::SniffTest(), and BOARD::Zones().
Referenced by enclosedByAreaFunc(), and intersectsAreaFunc().
|
static |
Definition at line 266 of file pcbexpr_functions.cpp.
References EDA_ITEM::GetBoundingBox(), BOARD::GetFootprintCourtyardIndex(), PCBEXPR_CONTEXT::GetItem(), and index.
Referenced by intersectsBackCourtyardFunc(), intersectsCourtyardFunc(), and intersectsFrontCourtyardFunc().
|
static |
Definition at line 224 of file pcbexpr_functions.cpp.
References COMPONENT_CLASS::ContainsClassName(), FOOTPRINT::GetComponentClass(), FOOTPRINT::GetFPIDAsString(), FOOTPRINT::GetReference(), and name.
Referenced by memberOfFootprintFunc().