KiCad PCB EDA Suite
Loading...
Searching...
No Matches
DRC_ZONE_INDEX Class Reference

#include <drc_zone_index.h>

Public Member Functions

void Build (const std::map< PCB_LAYER_ID, std::vector< ZONE * > > &aLayers)
 
bool HasLayer (PCB_LAYER_ID aLayer) const
 True when the layer holds at least one zone, so a caller can skip building a query box.
 
void Query (PCB_LAYER_ID aLayer, const BOX2I &aBox, std::vector< ZONE * > &aOut) const
 
void Clear ()
 

Private Types

using TREE = KIRTREE::PACKED_RTREE<size_t, int, 2>
 

Private Attributes

std::map< PCB_LAYER_ID, TREE > m_trees
 
std::map< PCB_LAYER_ID, std::vector< ZONE * > > m_zones
 

Detailed Description

Definition at line 99 of file drc_zone_index.h.

Member Typedef Documentation

◆ TREE

using DRC_ZONE_INDEX::TREE = KIRTREE::PACKED_RTREE<size_t, int, 2>
private

Definition at line 166 of file drc_zone_index.h.

Member Function Documentation

◆ Build()

void DRC_ZONE_INDEX::Build ( const std::map< PCB_LAYER_ID, std::vector< ZONE * > > & aLayers)
inline

◆ Clear()

void DRC_ZONE_INDEX::Clear ( )
inline

Definition at line 159 of file drc_zone_index.h.

References m_trees, and m_zones.

Referenced by Build().

◆ HasLayer()

bool DRC_ZONE_INDEX::HasLayer ( PCB_LAYER_ID aLayer) const
inline

True when the layer holds at least one zone, so a caller can skip building a query box.

Definition at line 126 of file drc_zone_index.h.

References m_trees.

◆ Query()

void DRC_ZONE_INDEX::Query ( PCB_LAYER_ID aLayer,
const BOX2I & aBox,
std::vector< ZONE * > & aOut ) const
inline

Member Data Documentation

◆ m_trees

std::map<PCB_LAYER_ID, TREE> DRC_ZONE_INDEX::m_trees
private

Definition at line 168 of file drc_zone_index.h.

Referenced by Build(), Clear(), HasLayer(), and Query().

◆ m_zones

std::map<PCB_LAYER_ID, std::vector<ZONE*> > DRC_ZONE_INDEX::m_zones
private

Definition at line 169 of file drc_zone_index.h.

Referenced by Build(), Clear(), and Query().


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