24#include <initializer_list>
74class SECTION_SET :
public std::bitset<static_cast<size_t>( SECTION::COUNT )>
86 for(
SECTION section : aSections )
94 set(
static_cast<size_t>( aSection ), aOn );
SECTION_SET & Set(SECTION aSection, bool aOn=true)
SECTION_SET(std::initializer_list< SECTION > aSections)
std::bitset< static_cast< size_t >(SECTION::COUNT)> BASE
bool Contains(SECTION aSection) const
SECTION_SET(const BASE &aBits)
DATA_SET
Columns of the IPC-2581C function mode table, Table 4 p 80.
std::optional< SECTION > SectionFromKeyChar(char aKey)
Return the schema section for a Table 4 key character.
JOB_EXPORT_PCB_FAB::DATA_SET MODE
Columns of Table 4 The job owns the enum so that every layer shares one type.
wxString SectionKeyString(const SECTION_SET &aSet)
Give aSet as a sectionKey attribute value.
SECTION_RULE SectionRule(MODE aMode, SECTION aSection)
Return the Table 4 cell for aMode and aSection.
SECTION_RULE
Table 4 cell values N O and Y.
SECTION
Schema sections of the IPC-2581C function mode table, Table 4 p 80.
SECTION_SET RequiredSections(MODE aMode)
Schema sections that Table 4 marks Y for aMode.
bool SectionSetFromKeyString(const wxString &aKey, SECTION_SET &aResult)
Read a sectionKey attribute value Return false for an unknown character.
SECTION_SET OptionalSections(MODE aMode)
Schema sections that Table 4 marks O for aMode.
SECTION_SET RecommendedOptionalSections(MODE aMode)
Optional schema sections that aMode selects by default.
SECTION_SET UnsupportedSections()
Schema sections that no KiCad board supplies.
std::optional< MODE > ModeFromToken(const wxString &aToken)
Read a Table 4 function mode token in upper case or in lower case.
wxString ModeToken(MODE aMode)
Table 4 function mode token such as FABRICATION.
SECTION_SET LegacySections()
Schema sections of the content that KiCad wrote before the function modes.
bool NeedsCadData(const SECTION_SET &aSet)
True if an included schema section needs an Ecad/CadData element.
char SectionKeyChar(SECTION aSection)
Return the Table 4 key character for aSection.