54 std::vector<std::vector<std::string>>
groups;
56 bool trusts(
const std::string& brand)
const;
60 std::vector<FootprintRef>
refs;
The board model (design doc 02 §3): every object TraceMaker reads from a .kicad_pcb,...
RefLibrary load_references(const std::string &path, const std::string &trusted_brands_file="")
path is a directory (every *.json below it, in path order; a trusted_brands.txt beside the references...
TrustedBrands load_trusted_brands(const std::string &file)
TrustedBrands parse_trusted_brands(const std::string &text, const std::string &source)
std::string normalise_brand(const std::string &brand)
"Texas Instruments Inc." -> "texas instruments"
std::vector< RefPad > pads_from_kicad_mod(const std::string &text)
The pads of a footprint file (.kicad_mod, or the text of one) in its own frame.
std::vector< FootprintRef > refs
files in name order, entries in file order: the order is part of the result
std::vector< std::string > files
what was read
double drill_h
nm, 0 = no hole
double y
footprint-local centre, nm (the datasheet's own frame)
Brands whose datasheets are trusted.
bool trust_all
–trust-all: no list, everything counts (a deliberate choice, said so in the report)
std::vector< std::vector< std::string > > groups
normalised names, canonical first
bool trusts(const std::string &brand) const
std::string source
the file, "" = none given