KiCad PCB EDA Suite
Loading...
Searching...
No Matches
pcb_io_altium_designer.h File Reference
#include <pcb_io/pcb_io.h>
#include <pcb_io/pcb_io_mgr.h>
#include <pcb_io/common/plugin_common_layer_mapping.h>
#include <map>
#include <memory>
#include <vector>

Go to the source code of this file.

Classes

class  PCB_IO_ALTIUM_DESIGNER
 
struct  PCB_IO_ALTIUM_DESIGNER::ALTIUM_FILE_CACHE
 

Functions

void ApplyAltiumProjectVariantsToBoard (BOARD *aBoard, const std::vector< ALTIUM_PROJECT_VARIANT > &aVariants)
 Apply parsed Altium project variants to a board by setting FOOTPRINT_VARIANT data on each footprint whose reference matches a variant entry.
 
void ApplyAltiumProjectParametersToProject (PROJECT *aProject, const std::map< wxString, wxString > &aParameters)
 Register Altium project parameters as KiCad project text variables so that imported board text referencing special strings (e.g.
 
void LoadAltiumBoard (const wxString &aFileName, BOARD *aBoard, const std::map< ALTIUM_PCB_DIR, std::string > &aMapping, const std::map< std::string, UTF8 > *aProperties, PROJECT *aProject, PROGRESS_REPORTER *aProgressReporter, LAYER_MAPPING_HANDLER &aLayerMappingHandler, REPORTER *aReporter)
 

Function Documentation

◆ ApplyAltiumProjectParametersToProject()

void ApplyAltiumProjectParametersToProject ( PROJECT * aProject,
const std::map< wxString, wxString > & aParameters )

Register Altium project parameters as KiCad project text variables so that imported board text referencing special strings (e.g.

".PCB_Revision") resolves to its value.

Existing project variables are not overwritten, and names that collide with KiCad's reserved or contextually resolved variables are skipped to preserve native resolution.

Definition at line 124 of file pcb_io_altium_designer.cpp.

References PROJECT::GetTextVars(), PROJECT::IncrementTextVarsTicker(), and name.

Referenced by LoadAltiumBoard().

◆ ApplyAltiumProjectVariantsToBoard()

void ApplyAltiumProjectVariantsToBoard ( BOARD * aBoard,
const std::vector< ALTIUM_PROJECT_VARIANT > & aVariants )

Apply parsed Altium project variants to a board by setting FOOTPRINT_VARIANT data on each footprint whose reference matches a variant entry.

Apply parsed Altium project variants to a board by setting FOOTPRINT_VARIANT data on each footprint whose reference matches a variant entry.

Definition at line 47 of file pcb_io_altium_designer.cpp.

References BOARD::AddVariant(), FOOTPRINT::AddVariant(), ALTIUM_VARIANT_ENTRY::alternateFields, AltiumUniqueIdToKiid(), ALTIUM_VARIANT_ENTRY::designator, BOARD::Footprints(), ALTIUM_VARIANT_ENTRY::kind, path, FOOTPRINT_VARIANT::SetDNP(), FOOTPRINT_VARIANT::SetExcludedFromBOM(), FOOTPRINT_VARIANT::SetExcludedFromPosFiles(), FOOTPRINT_VARIANT::SetFieldValue(), BOARD::SetVariantDescription(), and ALTIUM_VARIANT_ENTRY::uniqueId.

Referenced by LoadAltiumBoard().

◆ LoadAltiumBoard()

void LoadAltiumBoard ( const wxString & aFileName,
BOARD * aBoard,
const std::map< ALTIUM_PCB_DIR, std::string > & aMapping,
const std::map< std::string, UTF8 > * aProperties,
PROJECT * aProject,
PROGRESS_REPORTER * aProgressReporter,
LAYER_MAPPING_HANDLER & aLayerMappingHandler,
REPORTER * aReporter )