KiCad PCB EDA Suite
Loading...
Searching...
No Matches
FAB Namespace Reference

Classes

class  SECTION_SET
 Set of schema sections. More...
 

Typedefs

using MODE = JOB_EXPORT_PCB_FAB::DATA_SET
 Columns of Table 4 The job owns the enum so that every layer shares one type.
 

Enumerations

enum class  SECTION {
  PADSTACKS , BOM_AVL , PACKAGES , COMPONENTS ,
  STACKUP , PROFILE , SOLDERMASK , SOLDERPASTE ,
  SILKSCREEN , DRILL_ROUT , DOCUMENTATION , OUTER_COPPER ,
  INNER_COPPER , DIELECTRIC , MISC_FAB , LOGICAL_NET ,
  PHYSICAL_NET , DFX , COUNT
}
 Schema sections of the IPC-2581C function mode table, Table 4 p 80. More...
 
enum class  SECTION_RULE { EXCLUDED , RULE_OPTIONAL , REQUIRED }
 Table 4 cell values N O and Y. More...
 

Functions

char SectionKeyChar (SECTION aSection)
 Return the Table 4 key character for aSection.
 
std::optional< SECTION > SectionFromKeyChar (char aKey)
 Return the schema section for a Table 4 key character.
 
SECTION_RULE SectionRule (MODE aMode, SECTION aSection)
 Return the Table 4 cell for aMode and aSection.
 
SECTION_SET RequiredSections (MODE aMode)
 Schema sections that Table 4 marks Y for aMode.
 
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.
 
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.
 
wxString SectionKeyString (const SECTION_SET &aSet)
 Give aSet as a sectionKey attribute value.
 
bool SectionSetFromKeyString (const wxString &aKey, SECTION_SET &aResult)
 Read a sectionKey attribute value Return false for an unknown character.
 
wxString ModeToken (MODE aMode)
 Table 4 function mode token such as FABRICATION.
 
std::optional< MODE > ModeFromToken (const wxString &aToken)
 Read a Table 4 function mode token in upper case or in lower case.
 

Typedef Documentation

◆ MODE

Columns of Table 4 The job owns the enum so that every layer shares one type.

Definition at line 63 of file fab_sections.h.

Enumeration Type Documentation

◆ SECTION

enum class FAB::SECTION
strong

Schema sections of the IPC-2581C function mode table, Table 4 p 80.

The order follows the table rows so that SectionKeyString gives the sectionKey order

Enumerator
PADSTACKS 

K.

BOM_AVL 

B.

PACKAGES 

C.

COMPONENTS 

A.

STACKUP 

S.

PROFILE 

U.

SOLDERMASK 

M.

SOLDERPASTE 

P.

SILKSCREEN 

L.

DRILL_ROUT 

R.

DOCUMENTATION 

D.

OUTER_COPPER 

O.

INNER_COPPER 

I.

DIELECTRIC 

E.

MISC_FAB 

F.

LOGICAL_NET 

G.

PHYSICAL_NET 

Y.

DFX 

X.

COUNT 

Definition at line 38 of file fab_sections.h.

◆ SECTION_RULE

enum class FAB::SECTION_RULE
strong

Table 4 cell values N O and Y.

Enumerator
EXCLUDED 
RULE_OPTIONAL 
REQUIRED 

Definition at line 66 of file fab_sections.h.

Function Documentation

◆ LegacySections()

SECTION_SET FAB::LegacySections ( )

Schema sections of the content that KiCad wrote before the function modes.

An unconfigured export keeps this content but now gives its correct section key

Definition at line 151 of file fab_sections.cpp.

References LOGICAL_NET, PHYSICAL_NET, FAB::SECTION_SET::Set(), and UnsupportedSections().

Referenced by BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), and RecommendedOptionalSections().

◆ ModeFromToken()

std::optional< MODE > FAB::ModeFromToken ( const wxString & aToken)

Read a Table 4 function mode token in upper case or in lower case.

Definition at line 217 of file fab_sections.cpp.

References JOB_EXPORT_PCB_FAB::DataSetFromToken().

Referenced by PCB_IO_IPC2581::SaveBoard(), and DIALOG_EXPORT_2581::TransferDataToWindow().

◆ ModeToken()

wxString FAB::ModeToken ( MODE aMode)

Table 4 function mode token such as FABRICATION.

Definition at line 210 of file fab_sections.cpp.

References name.

Referenced by PCB_IO_IPC2581::generateContentSection(), GenerateIpc2581File(), and DIALOG_EXPORT_2581::saveToProject().

◆ NeedsCadData()

bool FAB::NeedsCadData ( const SECTION_SET & aSet)

True if an included schema section needs an Ecad/CadData element.

Definition at line 165 of file fab_sections.cpp.

References BOM_AVL, and FAB::SECTION_SET::Set().

Referenced by PCB_IO_IPC2581::generateContentSection(), PCB_IO_IPC2581::generateEcadSection(), and IPC2581::ResolveSections().

◆ OptionalSections()

SECTION_SET FAB::OptionalSections ( MODE aMode)

Schema sections that Table 4 marks O for aMode.

Definition at line 115 of file fab_sections.cpp.

References RULE_OPTIONAL.

Referenced by IPC2581::ResolveSections().

◆ RecommendedOptionalSections()

SECTION_SET FAB::RecommendedOptionalSections ( MODE aMode)

Optional schema sections that aMode selects by default.

Definition at line 121 of file fab_sections.cpp.

References DIELECTRIC, LegacySections(), MISC_FAB, PADSTACKS, and SOLDERPASTE.

Referenced by OdbDefaultSections(), PANEL_FAB_EXPORT_CONTENT::ResolvedSections(), and PCB_IO_IPC2581::SaveBoard().

◆ RequiredSections()

SECTION_SET FAB::RequiredSections ( MODE aMode)

Schema sections that Table 4 marks Y for aMode.

Definition at line 109 of file fab_sections.cpp.

References REQUIRED.

Referenced by OdbDefaultSections(), and IPC2581::ResolveSections().

◆ SectionFromKeyChar()

std::optional< SECTION > FAB::SectionFromKeyChar ( char aKey)

Return the schema section for a Table 4 key character.

Definition at line 91 of file fab_sections.cpp.

Referenced by SectionSetFromKeyString().

◆ SectionKeyChar()

char FAB::SectionKeyChar ( SECTION aSection)

Return the Table 4 key character for aSection.

Definition at line 85 of file fab_sections.cpp.

◆ SectionKeyString()

wxString FAB::SectionKeyString ( const SECTION_SET & aSet)

◆ SectionRule()

SECTION_RULE FAB::SectionRule ( MODE aMode,
SECTION aSection )

Return the Table 4 cell for aMode and aSection.

Definition at line 103 of file fab_sections.cpp.

◆ SectionSetFromKeyString()

bool FAB::SectionSetFromKeyString ( const wxString & aKey,
SECTION_SET & aResult )

Read a sectionKey attribute value Return false for an unknown character.

Definition at line 188 of file fab_sections.cpp.

References SectionFromKeyChar(), and FAB::SECTION_SET::Set().

Referenced by GenerateODBPPFiles(), PANEL_FAB_EXPORT_CONTENT::ResolvedSections(), and PCB_IO_IPC2581::SaveBoard().

◆ UnsupportedSections()

SECTION_SET FAB::UnsupportedSections ( )

Schema sections that no KiCad board supplies.

Definition at line 145 of file fab_sections.cpp.

References DFX.

Referenced by LegacySections(), and IPC2581::ResolveSections().