KiCad PCB EDA Suite
|
LSET is a set of PCB_LAYER_IDs. More...
#include <lset.h>
Public Types | |
using | iterator = std::vector< int >::iterator |
using | const_iterator = std::vector< int >::const_iterator |
Public Member Functions | |
LSET () | |
Create an empty (cleared) set. | |
LSET (const BASE_SET &aOther) | |
LSET (PCB_LAYER_ID aLayer) | |
LSET (std::initializer_list< PCB_LAYER_ID > aList) | |
LSET (const LSEQ &aSeq) | |
LSET (unsigned long __val)=delete | |
bool | Contains (PCB_LAYER_ID aLayer) |
See if the layer set contains a PCB layer. | |
LSEQ | CuStack () const |
Return a sequence of copper layers in starting from the front/top and extending to the back/bottom. | |
LSEQ | Technicals (LSET aSubToOmit=LSET()) const |
Return a sequence of technical layers. | |
LSEQ | Users () const |
*_User layers. | |
LSEQ | TechAndUserUIOrder () const |
Returns the technical and user layers in the order shown in layer widget. | |
LSEQ | UIOrder () const |
LSEQ | Seq (const PCB_LAYER_ID *aWishListSequence, unsigned aCount) const |
Return an LSEQ from the union of this LSET and a desired sequence. | |
LSEQ | Seq (const LSEQ &aSequence) const |
LSEQ | Seq () const |
Return a LSEQ from this LSET in ascending PCB_LAYER_ID order. | |
LSEQ | SeqStackupTop2Bottom (PCB_LAYER_ID aSelectedLayer=UNDEFINED_LAYER) const |
Generate a sequence of layers that represent a top to bottom stack of this set of layers. | |
LSEQ | SeqStackupForPlotting () const |
Return the sequence that is typical for a bottom-to-top stack-up. | |
void | RunOnLayers (const std::function< void(PCB_LAYER_ID)> &aFunction) const |
Execute a function on each layer of the LSET. | |
std::string | FmtHex () const |
Return a hex string showing contents of this LSEQ. | |
int | ParseHex (const char *aStart, int aCount) |
Convert the output of FmtHex() and replaces this set's values with those given in the input string. | |
std::string | FmtBin () const |
Return a binary string showing contents of this LSEQ. | |
PCB_LAYER_ID | ExtractLayer () const |
Find the first set PCB_LAYER_ID. | |
LSET & | Flip (int aCopperLayersCount=0) |
Flip the layers in this set. | |
bool | test (size_t pos) const |
bool | any () const |
bool | all () const |
bool | none () const |
BASE_SET & | set (size_t pos=std::numeric_limits< size_t >::max(), bool value=true) |
BASE_SET & | reset (size_t pos=std::numeric_limits< size_t >::max()) |
BASE_SET & | flip (size_t pos=std::numeric_limits< size_t >::max()) |
size_t | count () const |
size_t | size () const |
void | resize (size_t newSize) |
int & | operator[] (size_t pos) |
const int & | operator[] (size_t pos) const |
int | compare (const BASE_SET &other) const |
iterator | begin () |
const_iterator | begin () const |
iterator | end () |
const_iterator | end () const |
bool | operator== (const BASE_SET &other) const |
bool | operator< (const BASE_SET &other) const |
template<typename CharT = char> | |
std::basic_string< CharT > | to_string (CharT zero=CharT( '0'), CharT one=CharT( '1')) const |
BASE_SET & | operator&= (const BASE_SET &rhs) |
BASE_SET & | operator|= (const BASE_SET &rhs) |
BASE_SET & | operator^= (const BASE_SET &rhs) |
BASE_SET | operator~ () const |
set_bits_iterator | set_bits_begin () const |
set_bits_iterator | set_bits_end () const |
set_bits_reverse_iterator | set_bits_rbegin () const |
set_bits_reverse_iterator | set_bits_rend () const |
Static Public Member Functions | |
static const wxChar * | Name (PCB_LAYER_ID aLayerId) |
Return the fixed name association with aLayerId. | |
static LSET | InternalCuMask () |
Return a complete set of internal copper layers which is all Cu layers except F_Cu and B_Cu. | |
static LSET | FrontAssembly () |
Return a complete set of all top assembly layers which is all F_SilkS and F_Mask. | |
static LSET | BackAssembly () |
Return a complete set of all bottom assembly layers which is all B_SilkS and B_Mask. | |
static LSET | AllCuMask (int aCuLayerCount=MAX_CU_LAYERS) |
Return a mask holding the requested number of Cu PCB_LAYER_IDs. | |
static LSET | ExternalCuMask () |
Return a mask holding the Front and Bottom layers. | |
static LSET | AllNonCuMask () |
Return a mask holding all layer minus CU layers. | |
static LSET | AllLayersMask () |
static LSET | FrontTechMask () |
Return a mask holding all technical layers (no CU layer) on front side. | |
static LSET | FrontBoardTechMask () |
Return a mask holding technical layers used in a board fabrication (no CU layer) on front side. | |
static LSET | BackTechMask () |
Return a mask holding all technical layers (no CU layer) on back side. | |
static LSET | BackBoardTechMask () |
Return a mask holding technical layers used in a board fabrication (no CU layer) on Back side. | |
static LSET | AllTechMask () |
Return a mask holding all technical layers (no CU layer) on both side. | |
static LSET | AllBoardTechMask () |
Return a mask holding board technical layers (no CU layer) on both side. | |
static LSET | FrontMask () |
Return a mask holding all technical layers and the external CU layer on front side. | |
static LSET | BackMask () |
Return a mask holding all technical layers and the external CU layer on back side. | |
static LSET | SideSpecificMask () |
static LSET | UserMask () |
static LSET | PhysicalLayersMask () |
Return a mask holding all layers which are physically realized. | |
static LSET | UserDefinedLayers () |
Return a mask with all of the allowable user defined layers. | |
static LSET | ForbiddenFootprintLayers () |
Layers which are not allowed within footprint definitions. | |
Private Attributes | |
std::vector< int > | m_bits |
LSET is a set of PCB_LAYER_IDs.
It can be converted to numerous purpose LSEQs using the various member functions, most of which are based on Seq(). The advantage of converting to LSEQ using purposeful code, is it removes any dependency on order/sequence inherent in this set.
|
inherited |
Definition at line 43 of file base_set.h.
|
inherited |
Definition at line 42 of file base_set.h.
|
inline |
Create an empty (cleared) set.
Definition at line 51 of file lset.h.
Referenced by AllLayersMask(), and AllNonCuMask().
|
inline |
Definition at line 61 of file lset.h.
References BASE_SET::set().
LSET::LSET | ( | std::initializer_list< PCB_LAYER_ID > | aList | ) |
Definition at line 43 of file lset.cpp.
References BASE_SET::set().
LSET::LSET | ( | const LSEQ & | aSeq | ) |
Definition at line 51 of file lset.cpp.
References BASE_SET::set().
|
delete |
|
inlineinherited |
Definition at line 57 of file base_set.h.
Referenced by AllCuMask().
|
static |
Return a mask holding board technical layers (no CU layer) on both side.
Definition at line 807 of file lset.cpp.
References BackBoardTechMask(), and FrontBoardTechMask().
Referenced by CADSTAR_PCB_ARCHIVE_LOADER::getKiCadLayerSet(), PhysicalLayersMask(), CADSTAR_PCB_ARCHIVE_LOADER::remapUnsureLayers(), and ALTIUM_PCB::remapUnsureLayers().
|
static |
Return a mask holding the requested number of Cu PCB_LAYER_IDs.
Definition at line 732 of file lset.cpp.
References BASE_SET::all(), B_Cu, Clamp(), F_Cu, In30_Cu, InternalCuMask(), MAX_CU_LAYERS, and BASE_SET::set().
Referenced by PCAD2KICAD::PCAD_PAD::AddToFootprint(), DIALOG_PLOT::applyPlotSettings(), CN_CONNECTIVITY_ALGO::Build(), EXPORTER_STEP::buildZones3DShape(), FOOTPRINT::CheckShortingPads(), TRACKS_CLEANER::cleanup(), HYPERLYNX_EXPORTER::collectNetObjects(), compute_pad_access_code(), EXPORTER_PCB_VRML::ComputeLayer3D_Zpos(), BOARD_ADAPTER::createLayers(), ZONE_CREATE_HELPER::createNewZone(), PANEL_SETUP_LAYERS::DenyChangeCheckBox(), DIALOG_COPPER_ZONE::DIALOG_COPPER_ZONE(), DIALOG_RULE_AREA_PROPERTIES::DIALOG_RULE_AREA_PROPERTIES(), BOARD_COMMIT::dirtyIntersectingZones(), ZONE_FILLER::Fill(), fmt_mask(), PCB_IO_KICAD_SEXPR::formatLayers(), GENDRILL_WRITER_BASE::GenDrillReportFile(), KIGFX::PCB_RENDER_SETTINGS::GetColor(), CADSTAR_PCB_ARCHIVE_LOADER::getKiCadLayerSet(), ALTIUM_PCB::GetKicadLayersToIterate(), CADSTAR_PCB_ARCHIVE_LOADER::getKiCadPad(), PCB_VIA::GetLayerSet(), BOARD::GetPad(), PAD::GetSolderMaskExpansion(), PAD::GetSolderPasteMargin(), FOOTPRINT::GetUniquePadNumbers(), ROUTER_TOOL::handleLayerSwitch(), BOARD_INSPECTION_TOOL::highlightNet(), PCB_IO_KICAD_SEXPR_PARSER::init(), ROUTER_TOOL::InlineDrag(), BOARD_INSPECTION_TOOL::InspectClearance(), PAD::IsAperturePad(), HYPERLYNX_PAD_STACK::IsEmpty(), isMaskAperture(), PAD::IsOnCopperLayer(), ZONE::IsOnCopperLayer(), DSN::isRoundKeepout(), PCBNEW_JOBS_HANDLER::JobExportGerbers(), BOARD_ITEM::layerMaskDescribe(), PCB_IO_KICAD_LEGACY::leg_mask2new(), CADSTAR_PCB_ARCHIVE_LOADER::Load(), KIGFX::PCB_RENDER_SETTINGS::LoadColors(), CADSTAR_PCB_ARCHIVE_LOADER::loadLibraryCoppers(), FABMASTER::loadZone(), DSN::SPECCTRA_DB::makeIMAGE(), DSN::SPECCTRA_DB::makePADSTACK(), DIALOG_PRINT_PCBNEW::onPopUpLayers(), DIALOG_PLOT::OnRightClickLayers(), DIALOG_PAD_PROPERTIES::OnUpdateUI(), DIALOG_PAD_PROPERTIES::OnUpdateUINonCopperWarning(), PCB_IO_EAGLE::packageHole(), PCB_IO_EAGLE::packagePad(), PCB_PLOT_PARAMS_PARSER::Parse(), GPCB_FPL_CACHE::parseFOOTPRINT(), DRC_RULES_PARSER::parseLayer(), PCB_IO_KICAD_SEXPR_PARSER::parsePAD(), PCB_IO_KICAD_SEXPR_PARSER::parsePCB_VIA(), CLI::PCB_EXPORT_BASE_COMMAND::PCB_EXPORT_BASE_COMMAND(), PCB_PLOT_PARAMS::PCB_PLOT_PARAMS(), PhysicalLayersMask(), DRAWING_TOOL::PlaceCharacteristics(), DRAWING_TOOL::PlaceStackup(), EXPORT_SVG::Plot(), DIALOG_PLOT::Plot(), BRDITEMS_PLOTTER::PlotDrillMarks(), BRDITEMS_PLOTTER::PlotPad(), PlotStandardLayer(), PRIVATE_LAYERS_GRID_TABLE::PRIVATE_LAYERS_GRID_TABLE(), PAD::PTHMask(), DRC_CACHE_GENERATOR::Run(), DRC_TEST_PROVIDER_CONNECTION_WIDTH::Run(), test::DRC_TEST_PROVIDER_DIFF_PAIR_COUPLING::Run(), DRC_TEST_PROVIDER_SLIVER_CHECKER::Run(), DRC_TEST_PROVIDER_MATCHED_LENGTH::runInternal(), PCB_SELECTION_TOOL::selectAllConnectedTracks(), PAD::SetAttribute(), BOARD_DESIGN_SETTINGS::SetCopperLayerCount(), BOARD_DESIGN_SETTINGS::SetEnabledLayers(), PCB_IO_EAGLE::setKeepoutSettingsToZone(), ZONE_CREATE_HELPER::setUniquePriority(), PCBNEW_PRINTOUT::setupViewLayers(), PANEL_SETUP_LAYERS::showLayerTypes(), SideSpecificMask(), PNS_KICAD_IFACE_BASE::syncPad(), DRC_TEST_PROVIDER_MISC::testDisabledLayers(), DRC_TEST_PROVIDER_HOLE_TO_HOLE::testHoleAgainstHole(), DRC_TEST_PROVIDER_PHYSICAL_CLEARANCE::testItemAgainstItem(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testPadClearances(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testTrackClearances(), DIALOG_SWAP_LAYERS::TransferDataFromWindow(), DIALOG_PAD_PROPERTIES::transferDataToPad(), DIALOG_SWAP_LAYERS::TransferDataToWindow(), PCB_PROPERTIES_PANEL::updateLists(), PCB_CONTROL::UpdateMessagePanel(), DIALOG_PAD_PROPERTIES::updatePadLayersList(), RATSNEST_VIEW_ITEM::ViewDraw(), and HYPERLYNX_EXPORTER::writeSinglePadStack().
|
static |
Definition at line 767 of file lset.cpp.
References LSET().
Referenced by PCB_GRID_HELPER::BestDragOrigin(), PCB_GRID_HELPER::BestSnapAnchor(), BOARD_CONNECTED_ITEM_DESC::BOARD_CONNECTED_ITEM_DESC(), BOARD_ITEM_DESC::BOARD_ITEM_DESC(), BOOST_AUTO_TEST_CASE(), CLI::FP_EXPORT_SVG_COMMAND::doPerform(), DRC_RTREE::DRC_RTREE(), PCB_SELECTION_TOOL::FilterCollectorForFootprints(), FOOTPRINT_DESC::FOOTPRINT_DESC(), GERBVIEW_FRAME::GERBVIEW_FRAME(), PCB_LAYER_BOX_SELECTOR::getEnabledLayers(), APPEARANCE_CONTROLS::getVisibleLayers(), GERBVIEW_FRAME::GetVisibleLayers(), BOARD::GetVisibleLayers(), ROUTER_TOOL::handleLayerSwitch(), LoadBoard(), CADSTAR_PCB_ARCHIVE_LOADER::loadBoardStackup(), PCB_EDIT_FRAME::onBoardLoaded(), DIALOG_DRC::OnDRCItemSelected(), PCB_POINT_EDITOR::OnSelectionChange(), DIALOG_FOOTPRINT_CHECKER::OnSelectItem(), padNeedsUpdate(), DRC_RULES_PARSER::parseDRC_RULE(), CLI::PCB_EXPORT_BASE_COMMAND::PCB_EXPORT_BASE_COMMAND(), PCB_SHAPE_DESC::PCB_SHAPE_DESC(), PROJECT_LOCAL_SETTINGS::PROJECT_LOCAL_SETTINGS(), PCB_PICKER_TOOL::reset(), PCB_LAYER_BOX_SELECTOR::Resync(), DRC_TEST_PROVIDER_DISALLOW::Run(), DRC_TEST_PROVIDER_EDGE_CLEARANCE::Run(), DRC_TEST_PROVIDER_HOLE_TO_HOLE::Run(), DRC_TEST_PROVIDER_PHYSICAL_CLEARANCE::Run(), DRC_TEST_PROVIDER_TEXT_DIMS::Run(), PCB_SELECTION_TOOL::Selectable(), DRAWING_TOOL::SetAnchor(), APPEARANCE_CONTROLS::setVisibleLayers(), DRC_TEST_PROVIDER_MISC::testAssertions(), DRC_TEST_PROVIDER_MISC::testDisabledLayers(), PANEL_SETUP_LAYERS::testLayerNames(), DRC_TEST_PROVIDER_MISC::testTextVars(), TRACK_VIA_DESC::TRACK_VIA_DESC(), PANEL_SETUP_LAYERS::TransferDataFromWindow(), PCB_EDIT_FRAME::UpdateUserInterface(), PCB_VIA::ViewGetLOD(), WriteDRCReport(), and ZONE_DESC::ZONE_DESC().
|
static |
Return a mask holding all layer minus CU layers.
Definition at line 753 of file lset.cpp.
References LSET().
Referenced by DIALOG_GLOBAL_EDIT_TEARDROPS::buildFilterLists(), DIALOG_GLOBAL_EDIT_TRACKS_AND_VIAS::buildFilterLists(), DIALOG_GLOBAL_EDIT_TRACKS_AND_VIAS::DIALOG_GLOBAL_EDIT_TRACKS_AND_VIAS(), DIALOG_NON_COPPER_ZONES_EDITOR::DIALOG_NON_COPPER_ZONES_EDITOR(), DIALOG_RULE_AREA_PROPERTIES::DIALOG_RULE_AREA_PROPERTIES(), DIALOG_TRACK_VIA_PROPERTIES::DIALOG_TRACK_VIA_PROPERTIES(), DIALOG_GLOBAL_DELETION::DoGlobalDeletions(), ROUTER_TOOL::handleLayerSwitch(), PCBNEW_JOBS_HANDLER::JobExportGerbers(), PNS_LOG_VIEWER_FRAME::PNS_LOG_VIEWER_FRAME(), and DIALOG_SWAP_LAYERS::TransferDataToWindow().
|
static |
Return a mask holding all technical layers (no CU layer) on both side.
Definition at line 800 of file lset.cpp.
References BackTechMask(), and FrontTechMask().
Referenced by BOARD_ITEM::layerMaskDescribe(), FABMASTER::loadLayers(), DIALOG_FOOTPRINT_PROPERTIES_FP_EDITOR::OnAddField(), DIALOG_PRINT_PCBNEW::onPopUpLayers(), DIALOG_PLOT::OnRightClickLayers(), DRAWING_TOOL::PlaceCharacteristics(), DRAWING_TOOL::PlaceStackup(), and PRIVATE_LAYERS_GRID_TABLE::PRIVATE_LAYERS_GRID_TABLE().
|
inlineinherited |
Definition at line 55 of file base_set.h.
Referenced by collidesWithArea(), compute_pad_access_code(), BOARD_COMMIT::dirtyIntersectingZones(), APPEARANCE_CONTROLS::doApplyLayerPreset(), existsOnLayerFunc(), PCB_IO_KICAD_SEXPR::format(), KIGFX::PCB_RENDER_SETTINGS::GetColor(), BOARD::GetPad(), BOARD_INSPECTION_TOOL::InspectClearance(), CADSTAR_PCB_ARCHIVE_LOADER::loadLibraryCoppers(), DSN::SPECCTRA_DB::makeIMAGE(), PCBNEW_PRINTOUT::OnPrintPage(), DIALOG_PAD_PROPERTIES::OnUpdateUI(), DRC_RULES_PARSER::parseLayer(), DIALOG_PLOT::Plot(), PCB_CONTROL::pruneItemLayers(), PCB_SELECTION_CONDITIONS::sameLayerFunc(), PCB_SELECTION_TOOL::selectAllConnectedTracks(), DRC_TEST_PROVIDER_MISC::testDisabledLayers(), PANEL_SETUP_LAYERS::TransferDataFromWindow(), and DIALOG_PAD_PROPERTIES::updatePadLayersList().
|
static |
|
static |
Return a mask holding technical layers used in a board fabrication (no CU layer) on Back side.
Definition at line 780 of file lset.cpp.
References B_Adhes, B_Mask, B_Paste, and B_SilkS.
Referenced by AllBoardTechMask(), PAD::FlashLayer(), and DRC_TEST_PROVIDER_PHYSICAL_CLEARANCE::testItemAgainstItem().
|
static |
Return a mask holding all technical layers and the external CU layer on back side.
Definition at line 845 of file lset.cpp.
References B_Cu, BackTechMask(), and BASE_SET::set().
Referenced by DIALOG_FOOTPRINT_CHOOSER::build3DCanvas(), FOOTPRINT_CHOOSER_FRAME::build3DCanvas(), collidesWithArea(), DRC_ENGINE::EvalRules(), PANEL_PREVIEW_3D_MODEL::PANEL_PREVIEW_3D_MODEL(), DRC_TEST_PROVIDER_SILK_CLEARANCE::Run(), PCB_SELECTION_TOOL::Selectable(), and DRC_INTERACTIVE_COURTYARD_CLEARANCE::testCourtyardClearances().
|
static |
Return a mask holding all technical layers (no CU layer) on back side.
Definition at line 774 of file lset.cpp.
References B_Adhes, B_CrtYd, B_Fab, B_Mask, B_Paste, and B_SilkS.
Referenced by AllTechMask(), BackMask(), SideSpecificMask(), and PCB_VIA::ViewGetLOD().
|
inlineinherited |
Definition at line 123 of file base_set.h.
|
inlineinherited |
Definition at line 125 of file base_set.h.
|
inlineinherited |
Definition at line 116 of file base_set.h.
References BASE_SET::m_bits.
Referenced by PAD::Compare().
|
inline |
See if the layer set contains a PCB layer.
aLayer | is the layer to check |
Definition at line 79 of file lset.h.
Referenced by STEP_PCB_MODEL::AddPadShape(), STEP_PCB_MODEL::AddPolygonShapes(), BOOST_AUTO_TEST_CASE(), EXPORTER_STEP::buildGraphic3DShape(), EXPORTER_STEP::buildTrack3DShape(), CADSTAR_PCB_ARCHIVE_LOADER::calculateZonePriorities(), collidesWithArea(), STEP_PCB_MODEL::CreatePCB(), APPEARANCE_CONTROLS::doApplyLayerPreset(), PCBEXPR_LAYER_VALUE::EqualTo(), ZONE_FILLER::Fill(), API_HANDLER_PCB::handleCreateUpdateItemsInternal(), BOARD_INSPECTION_TOOL::highlightNet(), PCB_SELECTION_TOOL::selectAllConnectedTracks(), APPEARANCE_CONTROLS::setVisibleLayers(), DRC_TEST_PROVIDER_PHYSICAL_CLEARANCE::testItemAgainstItem(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testItemAgainstZone(), and DRC_TEST_PROVIDER_PHYSICAL_CLEARANCE::testItemAgainstZones().
|
inlineinherited |
Definition at line 106 of file base_set.h.
Referenced by BOOST_AUTO_TEST_CASE(), PAD::CheckPad(), KIGFX::PCB_PAINTER::Draw(), ExtractLayer(), PCB_IO_KICAD_SEXPR::format(), ZONE::GetFirstLayer(), ZONE::GetLayer(), BOARD_INSPECTION_TOOL::InspectClearance(), isMaskAperture(), BOARD_ITEM::layerMaskDescribe(), CADSTAR_PCB_ARCHIVE_LOADER::loadLibraryCoppers(), DIALOG_DRC::OnDRCItemSelected(), APPEARANCE_CONTROLS::OnLayerContextMenu(), PCBNEW_PRINTOUT::OnPrintPage(), DIALOG_FOOTPRINT_CHECKER::OnSelectItem(), PlotStandardLayer(), PAD::SetAttribute(), BOARD_ITEM::SetLayerSet(), ZONE::SetLayerSet(), PANEL_SETUP_BOARD_STACKUP::showOnlyActiveLayers(), DIALOG_RULE_AREA_PROPERTIES::TransferDataFromWindow(), and PCB_CONTROL::UpdateMessagePanel().
LSEQ LSET::CuStack | ( | ) | const |
Return a sequence of copper layers in starting from the front/top and extending to the back/bottom.
This specific sequence is depended upon in numerous places.
Definition at line 151 of file lset.cpp.
References arrayDim(), B_Cu, F_Cu, In10_Cu, In11_Cu, In12_Cu, In13_Cu, In14_Cu, In15_Cu, In16_Cu, In17_Cu, In18_Cu, In19_Cu, In1_Cu, In20_Cu, In21_Cu, In22_Cu, In23_Cu, In24_Cu, In25_Cu, In26_Cu, In27_Cu, In28_Cu, In29_Cu, In2_Cu, In30_Cu, In3_Cu, In4_Cu, In5_Cu, In6_Cu, In7_Cu, In8_Cu, In9_Cu, and Seq().
Referenced by PCB_IO_KICAD_SEXPR::format(), PCB_IO_KICAD_SEXPR::formatBoardLayers(), APPEARANCE_CONTROLS::rebuildLayers(), UIOrder(), PCB_CONTROL::UpdateMessagePanel(), and HYPERLYNX_EXPORTER::writeStackupInfo().
|
inlineinherited |
Definition at line 124 of file base_set.h.
|
inlineinherited |
Definition at line 126 of file base_set.h.
|
static |
Return a mask holding the Front and Bottom layers.
Definition at line 760 of file lset.cpp.
Referenced by EXPORTER_STEP::Export(), DRC_RULES_PARSER::parseLayer(), BRDITEMS_PLOTTER::PlotPad(), PANEL_SETUP_BOARD_STACKUP::showOnlyActiveLayers(), BOARD_STACKUP::StackupAllowedBrdLayers(), and PANEL_SETUP_BOARD_STACKUP::updateCopperLayerCount().
PCB_LAYER_ID LSET::ExtractLayer | ( | ) | const |
Find the first set PCB_LAYER_ID.
Returns UNDEFINED_LAYER if more than one is set or UNSELECTED_LAYER if none is set.
Definition at line 686 of file lset.cpp.
References BASE_SET::count(), BASE_SET::size(), UNDEFINED_LAYER, and UNSELECTED_LAYER.
Referenced by BOOST_AUTO_TEST_CASE(), KIGFX::PCB_PAINTER::Draw(), and PCBNEW_PRINTOUT::OnPrintPage().
LSET & LSET::Flip | ( | int | aCopperLayersCount = 0 | ) |
Flip the layers in this set.
BACK and FRONT copper layers, mask, paste, solder layers are swapped internal layers are flipped only if the copper layers count is known
aMask | = the LSET to flip |
aCopperLayersCount | = the number of copper layers. if 0 (in fact if < 4 ) internal layers will be not flipped because the layer count is not known |
Definition at line 608 of file lset.cpp.
References B_Adhes, B_CrtYd, B_Cu, B_Fab, B_Mask, B_Paste, B_SilkS, F_Adhes, F_CrtYd, F_Cu, F_Fab, F_Mask, F_Paste, F_SilkS, In1_Cu, InternalCuMask(), BASE_SET::reset(), BASE_SET::set(), and BASE_SET::test().
Referenced by PAD::Flip().
|
inlineinherited |
Definition at line 91 of file base_set.h.
Referenced by DRC_TEST_PROVIDER_MISC::testDisabledLayers().
std::string LSET::FmtBin | ( | ) | const |
Return a binary string showing contents of this LSEQ.
Definition at line 278 of file lset.cpp.
References BASE_SET::size().
Referenced by ViaSort().
std::string LSET::FmtHex | ( | ) | const |
Return a hex string showing contents of this LSEQ.
Definition at line 302 of file lset.cpp.
References arrayDim(), and BASE_SET::size().
Referenced by BOOST_AUTO_TEST_CASE(), PCB_PLOT_PARAMS::Format(), and PROJECT_LOCAL_SETTINGS::PROJECT_LOCAL_SETTINGS().
|
static |
Layers which are not allowed within footprint definitions.
Currently internal copper layers and Margin.
Definition at line 858 of file lset.cpp.
References InternalCuMask().
Referenced by DIALOG_SHAPE_PROPERTIES::DIALOG_SHAPE_PROPERTIES(), APPEARANCE_CONTROLS::onLayerLeftClick(), APPEARANCE_CONTROLS::rebuildLayers(), and FOOTPRINT_EDIT_FRAME::ReCreateHToolbar().
|
static |
|
static |
Return a mask holding technical layers used in a board fabrication (no CU layer) on front side.
Definition at line 793 of file lset.cpp.
References F_Adhes, F_Mask, F_Paste, and F_SilkS.
Referenced by AllBoardTechMask(), PAD::FlashLayer(), and DRC_TEST_PROVIDER_PHYSICAL_CLEARANCE::testItemAgainstItem().
|
static |
Return a mask holding all technical layers and the external CU layer on front side.
Definition at line 838 of file lset.cpp.
References F_Cu, FrontTechMask(), and BASE_SET::set().
Referenced by DIALOG_FOOTPRINT_CHOOSER::build3DCanvas(), FOOTPRINT_CHOOSER_FRAME::build3DCanvas(), collidesWithArea(), DRC_ENGINE::EvalRules(), PANEL_PREVIEW_3D_MODEL::PANEL_PREVIEW_3D_MODEL(), DRC_TEST_PROVIDER_SILK_CLEARANCE::Run(), PCB_SELECTION_TOOL::Selectable(), and DRC_INTERACTIVE_COURTYARD_CLEARANCE::testCourtyardClearances().
|
static |
Return a mask holding all technical layers (no CU layer) on front side.
Definition at line 786 of file lset.cpp.
References F_Adhes, F_CrtYd, F_Fab, F_Mask, F_Paste, and F_SilkS.
Referenced by AllTechMask(), FrontMask(), SideSpecificMask(), and PCB_VIA::ViewGetLOD().
|
static |
Return a complete set of internal copper layers which is all Cu layers except F_Cu and B_Cu.
Definition at line 721 of file lset.cpp.
References In10_Cu, In11_Cu, In12_Cu, In13_Cu, In14_Cu, In15_Cu, In16_Cu, In17_Cu, In18_Cu, In19_Cu, In1_Cu, In20_Cu, In21_Cu, In22_Cu, In23_Cu, In24_Cu, In25_Cu, In26_Cu, In27_Cu, In28_Cu, In29_Cu, In2_Cu, In30_Cu, In3_Cu, In4_Cu, In5_Cu, In6_Cu, In7_Cu, In8_Cu, and In9_Cu.
Referenced by AllCuMask(), BOOST_AUTO_TEST_CASE(), PAD::CheckPad(), EXPORTER_STEP::Export(), ZONE_FILLER::Fill(), ZONE_FILLER::fillSingleZone(), Flip(), ForbiddenFootprintLayers(), PCB_IO_KICAD_SEXPR_PARSER::init(), DIALOG_RULE_AREA_PROPERTIES::OnLayerSelection(), DRC_RULES_PARSER::parseLayer(), CLI::PCB_EXPORT_BASE_COMMAND::PCB_EXPORT_BASE_COMMAND(), PCB_CONTROL::pruneItemLayers(), PANEL_SETUP_LAYERS::setCopperLayerCheckBoxes(), PANEL_SETUP_BOARD_STACKUP::showOnlyActiveLayers(), BOARD_STACKUP::StackupAllowedBrdLayers(), and PANEL_SETUP_LAYERS::TransferDataFromWindow().
|
static |
Return the fixed name association with aLayerId.
NOTE: These names must not be translated or changed.
They are used as tokens in the board file format because the ordinal value of the PCB_LAYER_ID enum was not stable over time.
Definition at line 63 of file lset.cpp.
References B_Adhes, B_CrtYd, B_Cu, B_Fab, B_Mask, B_Paste, B_SilkS, Cmts_User, Dwgs_User, Eco1_User, Eco2_User, Edge_Cuts, F_Adhes, F_CrtYd, F_Cu, F_Fab, F_Mask, F_Paste, F_SilkS, In10_Cu, In11_Cu, In12_Cu, In13_Cu, In14_Cu, In15_Cu, In16_Cu, In17_Cu, In18_Cu, In19_Cu, In1_Cu, In20_Cu, In21_Cu, In22_Cu, In23_Cu, In24_Cu, In25_Cu, In26_Cu, In27_Cu, In28_Cu, In29_Cu, In2_Cu, In30_Cu, In3_Cu, In4_Cu, In5_Cu, In6_Cu, In7_Cu, In8_Cu, In9_Cu, Margin, Rescue, User_1, User_2, User_3, User_4, User_5, User_6, User_7, User_8, and User_9.
Referenced by PANEL_SETUP_LAYERS::addUserDefinedLayer(), BOARD_CONNECTED_ITEM_DESC::BOARD_CONNECTED_ITEM_DESC(), BOARD_ITEM_DESC::BOARD_ITEM_DESC(), FOOTPRINT_DESC::FOOTPRINT_DESC(), PCB_IO_KICAD_SEXPR::format(), PCB_IO_KICAD_SEXPR::formatBoardLayers(), BOARD_STACKUP::FormatBoardStackup(), PCB_IO_KICAD_SEXPR::formatLayer(), PCB_IO_KICAD_SEXPR::formatLayers(), PCB_IO_KICAD_SEXPR_PARSER::init(), LoadBoard(), CADSTAR_PCB_ARCHIVE_LOADER::logBoardStackupMessage(), CADSTAR_PCB_ARCHIVE_LOADER::logBoardStackupWarning(), FOOTPRINT_EDITOR_SETTINGS::MigrateFromLegacy(), PCBNEW_SETTINGS::MigrateFromLegacy(), PCB_EDIT_FRAME::onBoardLoaded(), PCB_IO_KICAD_SEXPR_PARSER::parseLayer(), CLI::PCB_EXPORT_BASE_COMMAND::PCB_EXPORT_BASE_COMMAND(), PCB_SHAPE_DESC::PCB_SHAPE_DESC(), TRACK_VIA_DESC::TRACK_VIA_DESC(), PCB_PROPERTIES_PANEL::updateLists(), PCB_EDIT_FRAME::UpdateUserInterface(), WriteDRCReport(), and ZONE_DESC::ZONE_DESC().
|
inlineinherited |
Definition at line 59 of file base_set.h.
Referenced by HYPERLYNX_PAD_STACK::IsEmpty(), and HYPERLYNX_EXPORTER::writeSinglePadStack().
Definition at line 174 of file base_set.h.
References BASE_SET::m_bits.
|
inlineinherited |
Definition at line 145 of file base_set.h.
References BASE_SET::m_bits.
|
inlineinherited |
Definition at line 129 of file base_set.h.
References BASE_SET::m_bits, minSize, and BASE_SET::size().
|
inlineinherited |
Definition at line 112 of file base_set.h.
|
inlineinherited |
Definition at line 114 of file base_set.h.
Definition at line 190 of file base_set.h.
References BASE_SET::m_bits.
Definition at line 182 of file base_set.h.
References BASE_SET::m_bits.
|
inlineinherited |
Definition at line 198 of file base_set.h.
References BASE_SET::m_bits.
int LSET::ParseHex | ( | const char * | aStart, |
int | aCount | ||
) |
Convert the output of FmtHex() and replaces this set's values with those given in the input string.
Parsing stops at the first non hex ASCII byte, except that marker bytes output from FmtHex are not terminators.
Definition at line 340 of file lset.cpp.
References BASE_SET::set(), and BASE_SET::size().
Referenced by PCB_PLOT_PARAMS_PARSER::Parse(), and PROJECT_LOCAL_SETTINGS::PROJECT_LOCAL_SETTINGS().
|
static |
Return a mask holding all layers which are physically realized.
Equivalent to the copper layers + the board tech mask.
Definition at line 822 of file lset.cpp.
References AllBoardTechMask(), and AllCuMask().
Referenced by BOARD_COMMIT::dirtyIntersectingZones(), KIGFX::PCB_RENDER_SETTINGS::GetColor(), RENDER_3D_OPENGL::Redraw(), RENDER_3D_OPENGL::reload(), PCB_SELECTION_TOOL::Selectable(), PAD::ViewGetLOD(), and PCB_VIA::ViewGetLOD().
|
inlineinherited |
Definition at line 76 of file base_set.h.
Referenced by BOARD::BOARD(), BOOST_AUTO_TEST_CASE(), ZONE_CREATE_HELPER::createNewZone(), CONVERT_TOOL::CreatePolys(), PADSTACK::Deserialize(), PCB_SELECTION_TOOL::FilterCollectorForFootprints(), Flip(), CADSTAR_PCB_ARCHIVE_LOADER::getKiCadPad(), ROUTER_TOOL::handleLayerSwitch(), PARAM_LAYER_PRESET::jsonToPresets(), BOARD_PRINTOUT_SETTINGS::Load(), PCB_VIA::PCB_VIA(), DRAWING_TOOL::PlaceCharacteristics(), DRAWING_TOOL::PlaceStackup(), PANEL_SETUP_LAYERS::TransferDataFromWindow(), PANEL_SETUP_LAYERS::TransferDataToWindow(), ZONE::UnFill(), and ZONE_SETTINGS::ZONE_SETTINGS().
|
inlineinherited |
Definition at line 110 of file base_set.h.
Referenced by BOOST_AUTO_TEST_CASE().
|
inline |
Execute a function on each layer of the LSET.
Definition at line 252 of file lset.h.
References BASE_SET::size().
Referenced by CN_CONNECTIVITY_ALGO::Add(), CN_CONNECTIVITY_ALGO::Build(), ZONE::InitDataFromSrcInCopyCtor(), DRC_CACHE_GENERATOR::Run(), PCB_VIA::SetLayerSet(), ZONE::SetLayerSet(), RATSNEST_VIEW_ITEM::ViewDraw(), and ZONE::ViewGetLayers().
LSEQ LSET::Seq | ( | ) | const |
Return a LSEQ from this LSET in ascending PCB_LAYER_ID order.
Each LSEQ element will be in the same sequence as in PCB_LAYER_ID and only present in the resultant LSEQ if present in this set. Therefore the sequence is subject to change, use it only when enumeration and not order is important.
Definition at line 440 of file lset.cpp.
References BASE_SET::size().
Referenced by CuStack(), SeqStackupForPlotting(), SeqStackupTop2Bottom(), TechAndUserUIOrder(), and Users().
LSEQ LSET::Seq | ( | const PCB_LAYER_ID * | aWishListSequence, |
unsigned | aCount | ||
) | const |
Return an LSEQ from the union of this LSET and a desired sequence.
The LSEQ element will be in the same sequence as aWishListSequence if they are present.
aWishListSequence | establishes the order of the returned LSEQ, and the LSEQ will only contain PCB_LAYER_IDs which are present in this set. |
aCount | is the length of aWishListSequence array. |
Definition at line 392 of file lset.cpp.
Referenced by PANE_ZONE_VIEWER::ActivateSelectedZone(), STEP_PCB_MODEL::AddPadShape(), PCB_IO_IPC2581::addPadStack(), EXPORTER_STEP::buildBoard3DShapes(), PCB_NET_INSPECTOR_PANEL::buildColumns(), EXPORTER_STEP::buildFootprint3DShapes(), EXPORTER_STEP::buildTrack3DShape(), EXPORTER_STEP::buildZones3DShape(), BOARD_ADAPTER::createLayers(), GENCAD_EXPORTER::CreatePadsShapesSection(), DIALOG_MAP_LAYERS::DIALOG_MAP_LAYERS(), APPEARANCE_CONTROLS::doApplyLayerPreset(), DRAWING_TOOL::DrawVia(), DIALOG_EXPORT_SVG::ExportSVGFile(), ZONE_FILLER::Fill(), PCB_SELECTION_TOOL::FilterCollectorForFootprints(), PAD::FlashLayer(), PCB_IO_KICAD_SEXPR::format(), PCB_IO_KICAD_SEXPR::formatBoardLayers(), GENDRILL_WRITER_BASE::GenDrillReportFile(), PCB_IO_IPC2581::generateCadLayers(), PCB_IO_IPC2581::generateLayerFeatures(), KIGFX::PCB_RENDER_SETTINGS::GetColor(), ZONE::GetItemDescription(), CADSTAR_PCB_ARCHIVE_LOADER::getKiCadPad(), ZONE::GetMsgPanelInfo(), PANEL_SETUP_LAYERS::getNonRemovableLayers(), PAD::GetPrincipalLayer(), PANEL_SETUP_LAYERS::getRemovedLayersWithItems(), ZONE_SEARCH_HANDLER::getResultCell(), MODEL_ZONES_OVERVIEW_TABLE::GetValueByRow(), ROUTER_TOOL::handleLayerSwitch(), GENERAL_COLLECTOR::Inspect(), BOARD_INSPECTION_TOOL::InspectClearance(), PNS_KICAD_IFACE::IsItemVisible(), CADSTAR_PCB_ARCHIVE_LOADER::loadDocumentationSymbols(), CADSTAR_PCB_ARCHIVE_LOADER::loadFigures(), CADSTAR_PCB_ARCHIVE_LOADER::loadLibraryCoppers(), CADSTAR_PCB_ARCHIVE_LOADER::loadLibraryFigures(), DIALOG_DRC::OnDRCItemSelected(), APPEARANCE_CONTROLS::OnLayerContextMenu(), DIALOG_FOOTPRINT_CHECKER::OnSelectItem(), BOARD_ITEM::ptr_cmp::operator()(), KI_TEST::kitest_cmp_drawings::operator()(), FOOTPRINT::cmp_pads::operator()(), FOOTPRINT::cmp_padstack::operator()(), FOOTPRINT::cmp_zones::operator()(), kiapi::board::PackLayerSet(), PCB_IO_KICAD_SEXPR_PARSER::parsePAD(), PCB_IO_KICAD_SEXPR_PARSER::parsePCB_VIA(), PlotLayerOutlines(), PlotStandardLayer(), PCB_SELECTION_TOOL::pruneObscuredSelectionCandidates(), DRC_TEST_PROVIDER_CONNECTION_WIDTH::Run(), DRC_TEST_PROVIDER_PHYSICAL_CLEARANCE::Run(), DRC_TEST_PROVIDER_SLIVER_CHECKER::Run(), DRC_TEST_PROVIDER_ZONE_CONNECTIONS::Run(), PCB_SELECTION_TOOL::Selectable(), PAD::SetAttribute(), BOARD_ITEM::SetLayerSet(), GERBVIEW_PRINTOUT::setupViewLayers(), PCBNEW_PRINTOUT::setupViewLayers(), GLOBAL_EDIT_TOOL::swapBoardItem(), Technicals(), DRC_TEST_PROVIDER_MISC::testDisabledLayers(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testTrackClearances(), DIALOG_FOOTPRINT_PROPERTIES::TransferDataToWindow(), DIALOG_FOOTPRINT_PROPERTIES_FP_EDITOR::TransferDataToWindow(), PCB_EDIT_FRAME::UpdateUserInterface(), and HYPERLYNX_EXPORTER::writeSinglePadStack().
LSEQ LSET::SeqStackupForPlotting | ( | ) | const |
Return the sequence that is typical for a bottom-to-top stack-up.
For instance, to plot multiple layers in a single image, the top layers output last.
Definition at line 537 of file lset.cpp.
References arrayDim(), B_Adhes, B_CrtYd, B_Cu, B_Fab, B_Mask, B_Paste, B_SilkS, Cmts_User, Dwgs_User, Eco1_User, Eco2_User, Edge_Cuts, F_Adhes, F_CrtYd, F_Cu, F_Fab, F_Mask, F_Paste, F_SilkS, In10_Cu, In11_Cu, In12_Cu, In13_Cu, In14_Cu, In15_Cu, In16_Cu, In17_Cu, In18_Cu, In19_Cu, In1_Cu, In20_Cu, In21_Cu, In22_Cu, In23_Cu, In24_Cu, In25_Cu, In26_Cu, In27_Cu, In28_Cu, In29_Cu, In2_Cu, In30_Cu, In3_Cu, In4_Cu, In5_Cu, In6_Cu, In7_Cu, In8_Cu, In9_Cu, Margin, Seq(), User_1, User_2, User_3, User_4, User_5, User_6, User_7, User_8, and User_9.
Referenced by DIALOG_PLOT::DIALOG_PLOT(), CLI::FP_EXPORT_SVG_COMMAND::doPerform(), DIALOG_EXPORT_SVG::ExportSVGFile(), PCBNEW_JOBS_HANDLER::JobExportGerbers(), and PlotLayerOutlines().
LSEQ LSET::SeqStackupTop2Bottom | ( | PCB_LAYER_ID | aSelectedLayer = UNDEFINED_LAYER | ) | const |
Generate a sequence of layers that represent a top to bottom stack of this set of layers.
aSelectedLayer | is the layer to put at the top of stack when defined. |
Definition at line 456 of file lset.cpp.
References arrayDim(), B_Adhes, B_CrtYd, B_Cu, B_Fab, B_Mask, B_Paste, B_SilkS, Cmts_User, Dwgs_User, Eco1_User, Eco2_User, Edge_Cuts, F_Adhes, F_CrtYd, F_Cu, F_Fab, F_Mask, F_Paste, F_SilkS, In10_Cu, In11_Cu, In12_Cu, In13_Cu, In14_Cu, In15_Cu, In16_Cu, In17_Cu, In18_Cu, In19_Cu, In1_Cu, In20_Cu, In21_Cu, In22_Cu, In23_Cu, In24_Cu, In25_Cu, In26_Cu, In27_Cu, In28_Cu, In29_Cu, In2_Cu, In30_Cu, In3_Cu, In4_Cu, In5_Cu, In6_Cu, In7_Cu, In8_Cu, In9_Cu, Margin, Seq(), UNDEFINED_LAYER, User_1, User_2, User_3, User_4, User_5, User_6, User_7, User_8, and User_9.
Referenced by BOOST_AUTO_TEST_CASE(), and PCB_SELECTION_TOOL::pruneObscuredSelectionCandidates().
|
inlineinherited |
Definition at line 61 of file base_set.h.
Referenced by SCOPED_LAYERSET::Add(), AllCuMask(), DIALOG_PLOT::applyPlotSettings(), BackMask(), BOARD::BOARD(), BOARD_DESIGN_SETTINGS::BOARD_DESIGN_SETTINGS(), BOARD_PRINTOUT_SETTINGS::BOARD_PRINTOUT_SETTINGS(), BOOST_AUTO_TEST_CASE(), AR_AUTOPLACER::buildFpAreas(), BOARD::ComputeBoundingBox(), ALTIUM_PCB::ConvertFills6ToFootprintItemOnLayer(), ALTIUM_PCB::ConvertShapeBasedRegions6ToFootprintItemOnLayer(), ZONE_CREATE_HELPER::createNewZone(), CONVERT_TOOL::CreatePolys(), PCB_IO_EAGLE::defaultKicadLayer(), FOOTPRINT::Deserialize(), DIALOG_SHAPE_PROPERTIES::DIALOG_SHAPE_PROPERTIES(), DIALOG_GLOBAL_DELETION::DoGlobalDeletions(), PCBEXPR_LAYER_VALUE::EqualTo(), existsOnLayerFunc(), EXPORTER_STEP::Export(), PCB_SELECTION_TOOL::FilterCollectorForFootprints(), Flip(), FrontMask(), AR_AUTOPLACER::genModuleOnRoutingMatrix(), DIALOG_EXPORT_SVG::getCheckBoxSelectedLayers(), PCB_VIA::GetLayerSet(), PANEL_SETUP_LAYERS::GetUILayerMask(), APPEARANCE_CONTROLS::getVisibleLayers(), BOARD_ADAPTER::GetVisibleLayers(), ROUTER_TOOL::handleLayerSwitch(), ALTIUM_PCB::HelperSetZoneLayers(), intersectsAreaFunc(), PARAM_LAYER_PRESET::jsonToPresets(), PCB_IO_KICAD_LEGACY::leg_mask2new(), BOARD_PRINTOUT_SETTINGS::Load(), FABMASTER::loadLayers(), LSET(), DIALOG_DRC::OnDRCItemSelected(), DIALOG_COPPER_ZONE::OnLayerSelection(), DIALOG_NON_COPPER_ZONES_EDITOR::OnLayerSelection(), DIALOG_RULE_AREA_PROPERTIES::OnLayerSelection(), APPEARANCE_CONTROLS::onLayerVisibilityToggled(), PCBNEW_PRINTOUT::OnPrintPage(), DIALOG_FOOTPRINT_CHECKER::OnSelectItem(), PCB_PLOT_PARAMS_PARSER::Parse(), PCB_IO_EASYEDAPRO_PARSER::ParseBoard(), PCB_IO_KICAD_SEXPR_PARSER::parseFOOTPRINT_unchecked(), ParseHex(), DRC_RULES_PARSER::parseLayer(), PCB_IO_KICAD_SEXPR_PARSER::parseLayers(), DRAWING_TOOL::PlaceCharacteristics(), DRAWING_TOOL::PlaceStackup(), PRIVATE_LAYERS_GRID_TABLE::PRIVATE_LAYERS_GRID_TABLE(), GERBVIEW_FRAME::RemapLayers(), PCB_SELECTION_CONDITIONS::sameLayerFunc(), PCB_SELECTION_TOOL::Selectable(), PAD::SetAttribute(), BOARD_DESIGN_SETTINGS::SetEnabledLayers(), ZONE::SetFillFlag(), DIALOG_PRINT_GERBVIEW::setLayerSetFromList(), DIALOG_PRINT_PCBNEW::setLayerSetFromList(), APPEARANCE_CONTROLS::SetLayerVisible(), GENERAL_COLLECTORS_GUIDE::SetLayerVisible(), ZONE_SETTINGS::SetupLayersList(), GLOBAL_EDIT_TOOL::swapBoardItem(), DRC_TEST_PROVIDER_PHYSICAL_CLEARANCE::testItemAgainstItem(), DIALOG_FOOTPRINT_PROPERTIES_FP_EDITOR::TransferDataFromWindow(), DIALOG_PAD_PROPERTIES::transferDataToPad(), kiapi::board::UnpackLayerSet(), PANEL_SETUP_BOARD_STACKUP::updateCopperLayerCount(), RATSNEST_VIEW_ITEM::ViewDraw(), and ZONE_SETTINGS::ZONE_SETTINGS().
|
inlineinherited |
Definition at line 295 of file base_set.h.
Referenced by BOOST_AUTO_TEST_CASE().
|
inlineinherited |
Definition at line 296 of file base_set.h.
Referenced by BOOST_AUTO_TEST_CASE().
|
inlineinherited |
Definition at line 298 of file base_set.h.
Referenced by BOOST_AUTO_TEST_CASE().
|
inlineinherited |
Definition at line 302 of file base_set.h.
Referenced by BOOST_AUTO_TEST_CASE().
|
static |
Definition at line 851 of file lset.cpp.
References AllCuMask(), BackTechMask(), and FrontTechMask().
Referenced by FOOTPRINT::GetSide(), and BOARD_ITEM::IsSideSpecific().
|
inlineinherited |
Definition at line 108 of file base_set.h.
Referenced by BOOST_AUTO_TEST_CASE(), collidesWithArea(), DIALOG_PLOT::DIALOG_PLOT(), ExtractLayer(), PCB_VIA::FlashLayer(), FmtBin(), FmtHex(), CADSTAR_PCB_ARCHIVE_LOADER::getKiCadPad(), CN_VISITOR::operator()(), BASE_SET::operator==(), ParseHex(), DRC_TEST_PROVIDER_DISALLOW::Run(), RunOnLayers(), BOARD_PRINTOUT_SETTINGS::Save(), and Seq().
LSEQ LSET::TechAndUserUIOrder | ( | ) | const |
Returns the technical and user layers in the order shown in layer widget.
Definition at line 242 of file lset.cpp.
References arrayDim(), B_Adhes, B_CrtYd, B_Fab, B_Mask, B_Paste, B_SilkS, Cmts_User, Dwgs_User, Eco1_User, Eco2_User, Edge_Cuts, F_Adhes, F_CrtYd, F_Fab, F_Mask, F_Paste, F_SilkS, Margin, Seq(), User_1, User_2, User_3, User_4, User_5, User_6, User_7, User_8, and User_9.
Referenced by UIOrder().
Return a sequence of technical layers.
A sequence provides a certain order.
aSubToOmit | is the subset of the technical layers to omit, defaults to none. |
Definition at line 193 of file lset.cpp.
References arrayDim(), B_Adhes, B_CrtYd, B_Fab, B_Mask, B_Paste, B_SilkS, F_Adhes, F_CrtYd, F_Fab, F_Mask, F_Paste, F_SilkS, and Seq().
|
inlineinherited |
Definition at line 47 of file base_set.h.
Referenced by BOOST_AUTO_TEST_CASE(), collidesWithArea(), DIALOG_PLOT::DIALOG_PLOT(), BOARD_COMMIT::dirtyIntersectingZones(), APPEARANCE_CONTROLS::doApplyLayerPreset(), KIGFX::PCB_PAINTER::draw(), KIGFX::PCB_PAINTER::Draw(), DRAWING_TOOL::DrawVia(), PCB_VIA::FlashLayer(), Flip(), FOOTPRINT::GetBoundingBox(), FOOTPRINT::GetBoundingHull(), KIGFX::PCB_RENDER_SETTINGS::GetColor(), ZONE::GetFillFlag(), FOOTPRINT::GetLayerBoundingBox(), PCB_VIA::GetLayerSet(), BOARD_ADAPTER::GetVisibleLayers(), ROUTER_TOOL::handleLayerSwitch(), BOARD_INSPECTION_TOOL::InspectClearance(), PCB_LAYER_BOX_SELECTOR::isLayerEnabled(), PAD::IsOnLayer(), PCB_VIA::IsOnLayer(), ZONE::IsOnLayer(), LoadBoard(), DIALOG_DRC::OnDRCItemSelected(), APPEARANCE_CONTROLS::OnLayerContextMenu(), APPEARANCE_CONTROLS::onLayerVisibilityToggled(), DIALOG_CLEANUP_GRAPHICS::OnSelectItem(), DIALOG_FOOTPRINT_CHECKER::OnSelectItem(), DIALOG_PAD_PROPERTIES::OnUpdateUI(), PCB_EDIT_FRAME::OpenProjectFiles(), CN_VISITOR::operator()(), BRDITEMS_PLOTTER::PlotFootprintGraphicItems(), BRDITEMS_PLOTTER::PlotFootprintTextItems(), PCB_CONTROL::pruneItemLayers(), PCB_BASE_EDIT_FRAME::PutDataInPreviousState(), PAD::Recombine(), DRC_TEST_PROVIDER_DISALLOW::Run(), BOARD_PRINTOUT_SETTINGS::Save(), PAD::SetAttribute(), APPEARANCE_CONTROLS::SetLayerVisible(), PCB_BASE_FRAME::SetPlotSettings(), ZONE_SETTINGS::SetupLayersList(), PCBNEW_PRINTOUT::setupViewLayers(), DRC_TEST_PROVIDER_MISC::testDisabledLayers(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testItemAgainstZone(), DRC_TEST_PROVIDER_PHYSICAL_CLEARANCE::testItemAgainstZones(), DRC_TEST_PROVIDER_COPPER_CLEARANCE::testKnockoutTextAgainstZone(), DRC_TEST_PROVIDER_SOLDER_MASK::testMaskItemAgainstZones(), FOOTPRINT::TextOnly(), DIALOG_SWAP_LAYERS::TransferDataFromWindow(), DIALOG_SWAP_LAYERS::TransferDataToWindow(), DIALOG_PAD_PROPERTIES::updatePadLayersList(), and PCB_EDIT_FRAME::UpdateUserInterface().
|
inlineinherited |
Definition at line 158 of file base_set.h.
LSEQ LSET::UIOrder | ( | ) | const |
Definition at line 865 of file lset.cpp.
References CuStack(), and TechAndUserUIOrder().
Referenced by PCB_ONE_LAYER_SELECTOR::buildList(), SELECT_COPPER_LAYERS_PAIR_DIALOG::buildList(), PAD_TOOL::explodePad(), ZONE::GetFirstLayer(), ZONE::GetLayer(), DIALOG_PLOT::init_Dialog(), DIALOG_EXPORT_SVG::initDialog(), PCBNEW_JOBS_HANDLER::JobExportGerbers(), GERBVIEW_PRINTOUT::OnPrintPage(), PCBNEW_PRINTOUT::OnPrintPage(), DIALOG_CLEANUP_GRAPHICS::OnSelectItem(), DIALOG_PLOT::Plot(), PAD::Recombine(), PCB_LAYER_BOX_SELECTOR::Resync(), ZONE_SETTINGS::SetupLayersList(), DIALOG_FOOTPRINT_PROPERTIES_FP_EDITOR::TransferDataToWindow(), DIALOG_PRINT_PCBNEW::TransferDataToWindow(), and PCB_PROPERTIES_PANEL::updateLists().
|
static |
Return a mask with all of the allowable user defined layers.
Definition at line 829 of file lset.cpp.
References User_1, User_2, User_3, User_4, User_5, User_6, User_7, User_8, and User_9.
Referenced by PANEL_SETUP_LAYERS::addUserDefinedLayer(), CADSTAR_PCB_ARCHIVE_LOADER::getKiCadLayerSet(), CADSTAR_PCB_ARCHIVE_LOADER::remapUnsureLayers(), ALTIUM_PCB::remapUnsureLayers(), PANEL_SETUP_LAYERS::setUserDefinedLayerCheckBoxes(), and PANEL_SETUP_LAYERS::TransferDataFromWindow().
|
static |
Definition at line 814 of file lset.cpp.
References Cmts_User, Dwgs_User, Eco1_User, Eco2_User, Edge_Cuts, and Margin.
Referenced by FABMASTER::loadLayers(), CADSTAR_PCB_ARCHIVE_LOADER::remapUnsureLayers(), and ALTIUM_PCB::remapUnsureLayers().
LSEQ LSET::Users | ( | ) | const |
|
privateinherited |
Definition at line 308 of file base_set.h.
Referenced by BASE_SET::compare(), BASE_SET::operator&=(), BASE_SET::operator<(), BASE_SET::operator==(), BASE_SET::operator^=(), BASE_SET::operator|=(), and BASE_SET::operator~().