KiCad PCB EDA Suite
Loading...
Searching...
No Matches
PROJECT_PCB Class Reference

#include <project_pcb.h>

Static Public Member Functions

static FOOTPRINT_LIBRARY_ADAPTERFootprintLibAdapter (PROJECT *aProject)
 
static S3D_CACHEGet3DCacheManager (PROJECT *aProject, bool updateProjDir=false)
 Return a pointer to an instance of the 3D cache manager.
 
static void Cleanup3DCache (PROJECT *aProject)
 
static FILENAME_RESOLVERGet3DFilenameResolver (PROJECT *aProject)
 Accessor for 3D path resolver.
 

Private Member Functions

 PROJECT_PCB ()
 

Static Private Attributes

static std::mutex s_libAdapterMutex
 Used to synchronise access to FootprintLibAdapter.
 

Detailed Description

Definition at line 33 of file project_pcb.h.

Constructor & Destructor Documentation

◆ PROJECT_PCB()

PROJECT_PCB::PROJECT_PCB ( )
inlineprivate

Definition at line 53 of file project_pcb.h.

Member Function Documentation

◆ Cleanup3DCache()

◆ FootprintLibAdapter()

FOOTPRINT_LIBRARY_ADAPTER * PROJECT_PCB::FootprintLibAdapter ( PROJECT * aProject)
static

Definition at line 39 of file project_pcb.cpp.

References LIBRARY_MANAGER::Adapter(), FOOTPRINT, PGM_BASE::GetLibraryManager(), Pgm(), LIBRARY_MANAGER::RegisterAdapter(), and s_libAdapterMutex.

Referenced by PANEL_FP_LIB_TABLE::AddTable(), EXPORTER_STEP::buildFootprint3DShapes(), CVPCB_MAINFRAME::BuildLibrariesList(), DIALOG_FOOTPRINT_PROPERTIES_FP_EDITOR::checkFootprintName(), PCB_BASE_FRAME::CreateNewFootprint(), FOOTPRINT_EDIT_FRAME::DeleteFootprintFromLibrary(), BOARD_INSPECTION_TOOL::DiffFootprint(), FOOTPRINT_PREVIEW_PANEL::DisplayFootprint(), CVPCB_MAINFRAME::DisplayStatus(), FOOTPRINT_EDIT_FRAME::DuplicateFootprint(), PCB_EDIT_FRAME::ExportFootprintsToLibrary(), EXPORTER_PCB_VRML::ExportVrmlFootprint(), DISPLAY_FOOTPRINTS_FRAME::GetFootprint(), getFootprintAdapter(), PCB_BASE_FRAME::GetLibraryItemsForListDialog(), FP_TREE_SYNCHRONIZING_ADAPTER::GetValue(), idf_export_footprint(), PCB::IFACE::IfaceOrAddress(), FOOTPRINT_EDIT_FRAME::initLibraryTree(), CV::kiface(), FOOTPRINT_EDIT_FRAME::KiwayMailIn(), RENDER_3D_RAYTRACE_BASE::load3DModels(), RENDER_3D_OPENGL::load3dModels(), PCB_BASE_FRAME::loadFootprint(), CVPCB_MAINFRAME::LoadFootprintFiles(), PCB_EDIT_FRAME::LoadFootprints(), FOOTPRINT_VIEWER_FRAME::OnActivate(), PANEL_FP_PROPERTIES_3D_MODEL::OnAdd3DModel(), PCB_BASE_FRAME::OnFpChangeDebounceTimer(), PANEL_FP_LIB_TABLE::onReset(), PANEL_FOOTPRINT_CHOOSER::PANEL_FOOTPRINT_CHOOSER(), FOOTPRINT_EDITOR_CONTROL::PasteFootprint(), PCB::IFACE::PreloadLibraries(), CVPCB_MAINFRAME::readNetListAndFpFiles(), FOOTPRINT_VIEWER_FRAME::ReCreateFootprintList(), FOOTPRINT_VIEWER_FRAME::ReCreateLibraryList(), FOOTPRINT_EDIT_FRAME::ReloadFootprint(), FOOTPRINT_EDITOR_CONTROL::RenameFootprint(), DRC_TEST_PROVIDER_LIBRARY_PARITY::Run(), SAVE_AS_DIALOG::SAVE_AS_DIALOG(), FOOTPRINT_EDIT_FRAME::SaveFootprintAs(), FOOTPRINT_EDIT_FRAME::SaveFootprintInLibrary(), FOOTPRINT_VIEWER_FRAME::SelectAndViewFootprint(), PCB_BASE_FRAME::setFPWatcher(), FP_TREE_SYNCHRONIZING_ADAPTER::Sync(), FOOTPRINT_EDIT_FRAME::SyncLibraryTree(), DIALOG_FOOTPRINT_ASSOCIATIONS::TransferDataToWindow(), FOOTPRINT_EDITOR_CONTROL::tryToSaveFootprintInLibrary(), FOOTPRINT_EDIT_FRAME::UpdateTitle(), and PANEL_FP_PROPERTIES_3D_MODEL::validateModelExists().

◆ Get3DCacheManager()

◆ Get3DFilenameResolver()

FILENAME_RESOLVER * PROJECT_PCB::Get3DFilenameResolver ( PROJECT * aProject)
static

Accessor for 3D path resolver.

Definition at line 91 of file project_pcb.cpp.

References Get3DCacheManager(), and S3D_CACHE::GetResolver().

Referenced by PANEL_FP_PROPERTIES_3D_MODEL::validateModelExists().

Member Data Documentation

◆ s_libAdapterMutex

std::mutex PROJECT_PCB::s_libAdapterMutex
staticprivate

Used to synchronise access to FootprintLibAdapter.

Definition at line 56 of file project_pcb.h.

Referenced by FootprintLibAdapter().


The documentation for this class was generated from the following files: