20#ifndef FAB_DRILL_MODEL_H
21#define FAB_DRILL_MODEL_H
25#include <unordered_map>
64 bool aIgnorePlating =
false )
const;
68 using INDEX_KEY = std::tuple<DRILL_LAYER_PAIR, bool, PCB_LAYER_ID>;
74 std::map<INDEX_KEY, std::unordered_map<const BOARD_ITEM*, const DRILL_OPERATION*>>
m_index;
A base class for any item which can be embedded within the BOARD container class, and therefore insta...
Information pertinent to a Pcbnew printed circuit board.
std::map< INDEX_KEY, std::unordered_map< const BOARD_ITEM *, const DRILL_OPERATION * > > m_index
static INDEX_KEY indexKey(const DRILL_SPAN &aSpan)
FAB_DRILL_MODEL(const FAB_DRILL_MODEL &)=delete
FAB_DRILL_MODEL & operator=(const FAB_DRILL_MODEL &)=delete
const FAB_DRILL_FACTS & Facts() const
std::vector< FAB_DRILL_LAYER > m_layers
FAB_DRILL_MODEL(const BOARD &aBoard)
const DRILL_OPERATION * Find(const DRILL_SPAN &aSpan, const BOARD_ITEM *aItem, bool aIgnorePlating=false) const
std::tuple< DRILL_LAYER_PAIR, bool, PCB_LAYER_ID > INDEX_KEY
Backdrills keep their start layer so a reverse backdrill on the same item stays separate.
const std::vector< FAB_DRILL_LAYER > & Layers() const
One machining action, which is also one NC hit and one tool assignment.
Board-wide hole facts that a fabrication product states outright.
std::vector< DRILL_OPERATION > m_Slots
std::vector< DRILL_OPERATION > m_Holes