|
KiCad PCB EDA Suite
|
#include <design_block_library_adapter.h>
Public Types | |
| enum | SAVE_T { SAVE_OK , SAVE_SKIPPED } |
| The set of return values from DesignBlockSave() below. More... | |
Public Member Functions | |
| DESIGN_BLOCK_LIBRARY_ADAPTER (LIBRARY_MANAGER &aManager) | |
| ~DESIGN_BLOCK_LIBRARY_ADAPTER () override | |
| LIBRARY_TABLE_TYPE | Type () const override |
| The type of library table this adapter works with. | |
| std::optional< LIB_STATUS > | LoadOne (LIB_DATA *aLib) override |
| std::optional< LIB_STATUS > | LoadOne (const wxString &nickname) |
| std::vector< DESIGN_BLOCK * > | GetDesignBlocks (const wxString &aNickname) |
| std::vector< wxString > | GetDesignBlockNames (const wxString &aNickname) |
| DESIGN_BLOCK * | LoadDesignBlock (const wxString &aNickname, const wxString &aDesignBlockName, bool aKeepUUID=false, wxString *aErrorMsg=nullptr) |
| Load a design block having aDesignBlockName from the library given by aNickname. | |
| bool | DesignBlockExists (const wxString &aNickname, const wxString &aDesignBlockName) |
| Indicates whether or not the given design block already exists in the given library. | |
| const DESIGN_BLOCK * | GetEnumeratedDesignBlock (const wxString &aNickname, const wxString &aDesignBlockName) |
| A version of #DesignBlockLoad() for use after #DesignBlockEnumerate() for more efficient cache management. | |
| SAVE_T | SaveDesignBlock (const wxString &aNickname, const DESIGN_BLOCK *aDesignBlock, bool aOverwrite=true) |
| Write aDesignBlock to an existing library given by aNickname. | |
| void | DeleteDesignBlock (const wxString &aNickname, const wxString &aDesignBlockName) |
| Delete the aDesignBlockName from the library given by aNickname. | |
| bool | IsDesignBlockLibWritable (const wxString &aNickname) |
| Return true if the library given by aNickname is writable. | |
| DESIGN_BLOCK * | DesignBlockLoadWithOptionalNickname (const LIB_ID &aDesignBlockId, bool aKeepUUID=false, wxString *aErrorMsg=nullptr) |
| Load a design block having aDesignBlockId with possibly an empty nickname. | |
| LIBRARY_MANAGER & | Manager () const |
| LIBRARY_TABLE * | GlobalTable () const |
| Retrieves the global library table for this adapter type. | |
| std::optional< LIBRARY_TABLE * > | ProjectTable () const |
| Retrieves the project library table for this adapter type, or nullopt if one doesn't exist. | |
| std::optional< wxString > | FindLibraryByURI (const wxString &aURI) const |
| std::vector< wxString > | GetLibraryNames () const |
| Returns a list of library nicknames that are available (skips any that failed to load) | |
| bool | HasLibrary (const wxString &aNickname, bool aCheckEnabled=false) const |
| Test for the existence of aNickname in the library tables. | |
| bool | DeleteLibrary (const wxString &aNickname) |
| Deletes the given library from disk if it exists; returns true if deleted. | |
| std::optional< wxString > | GetLibraryDescription (const wxString &aNickname) const |
| std::vector< LIBRARY_TABLE_ROW * > | Rows (LIBRARY_TABLE_SCOPE aScope=LIBRARY_TABLE_SCOPE::BOTH, bool aIncludeInvalid=false) const |
| Like LIBRARY_MANAGER::Rows but filtered to the LIBRARY_TABLE_TYPE of this adapter. | |
| std::optional< LIBRARY_TABLE_ROW * > | GetRow (const wxString &aNickname, LIBRARY_TABLE_SCOPE aScope=LIBRARY_TABLE_SCOPE::BOTH) const |
| Like LIBRARY_MANAGER::GetRow but filtered to the LIBRARY_TABLE_TYPE of this adapter. | |
| std::optional< LIBRARY_TABLE_ROW * > | FindRowByURI (const wxString &aUri, LIBRARY_TABLE_SCOPE aScope=LIBRARY_TABLE_SCOPE::BOTH) const |
| Like LIBRARY_MANAGER::FindRowByURI but filtered to the LIBRARY_TABLE_TYPE of this adapter. | |
| virtual void | ProjectChanged () |
| Notify the adapter that the active project has changed. | |
| void | GlobalTablesChanged (std::initializer_list< LIBRARY_TABLE_TYPE > aChangedTables={}) |
| Notify the adapter that the global library tables have changed. | |
| void | ProjectTablesChanged (std::initializer_list< LIBRARY_TABLE_TYPE > aChangedTables={}) |
| Notify the adapter that the project library tables are about to be rebuilt. | |
| void | ProjectTablesReloaded (std::initializer_list< LIBRARY_TABLE_TYPE > aChangedTables={}) |
| Complements ProjectTablesChanged by erasing project-scope cache entries whose nicknames no longer appear in the rebuilt project table. | |
| void | CheckTableRow (LIBRARY_TABLE_ROW &aRow) |
| void | AsyncLoad () |
| Loads all available libraries for this adapter type in the background. | |
| virtual std::optional< LIB_STATUS > | CheckLibrary (LIB_DATA *aLib) |
| Validates that a library is loadable. May not necessarily load the library! | |
| std::optional< float > | AsyncLoadProgress () const |
| Returns async load progress between 0.0 and 1.0, or nullopt if load is not in progress. | |
| void | BlockUntilLoaded () |
| void | AbortAsyncLoad () |
| Aborts any async load in progress; blocks until fully done aborting. | |
| bool | IsLibraryLoaded (const wxString &aNickname) |
| std::optional< LIB_STATUS > | GetLibraryStatus (const wxString &aNickname) const |
| Returns the status of a loaded library, or nullopt if the library hasn't been loaded (yet) | |
| std::vector< std::pair< wxString, LIB_STATUS > > | GetLibraryStatuses () const |
| Returns a list of all library nicknames and their status (even if they failed to load) | |
| std::vector< KI_ERROR > | GetLibraryLoadErrors () const |
| Returns all library load errors as newline-separated strings for display. | |
| void | ReloadLibraryEntry (const wxString &aNickname, LIBRARY_TABLE_SCOPE aScope=LIBRARY_TABLE_SCOPE::BOTH) |
| std::optional< LIB_STATUS > | LoadLibraryEntry (const wxString &aNickname) |
| Synchronously loads the named library to LOADED state. | |
| virtual bool | IsWritable (const wxString &aNickname) const |
| Return true if the given nickname exists and is not a read-only library. | |
| bool | CreateLibrary (const wxString &aNickname) |
| Creates the library (i.e. saves to disk) for the given row if it exists. | |
| virtual bool | SupportsConfigurationDialog (const wxString &aNickname) const |
| virtual int | ShowConfigurationDialog (const wxString &aNickname, wxWindow *aParent) const |
| virtual std::optional< LIBRARY_ERROR > | LibraryError (const wxString &aNickname) const |
Static Public Member Functions | |
| static wxString | GlobalPathEnvVariableName () |
Protected Member Functions | |
| wxString | libraryUnavailableMessage (const wxString &aNickname) const |
| std::map< wxString, LIB_DATA > & | globalLibs () override |
| std::map< wxString, LIB_DATA > & | globalLibs () const override |
| std::shared_mutex & | globalLibsMutex () override |
| std::shared_mutex & | globalLibsMutex () const override |
| void | enumerateLibrary (LIB_DATA *aLib, const wxString &aUri) override |
| Override in derived class to perform library-specific enumeration. | |
| LIBRARY_RESULT< IO_BASE * > | createPlugin (const LIBRARY_TABLE_ROW *row) override |
| Creates a concrete plugin for the given row. | |
| IO_BASE * | plugin (const LIB_DATA *aRow) override |
| wxString | getUri (const LIBRARY_TABLE_ROW *aRow) const |
| std::optional< const LIB_DATA * > | fetchIfLoaded (const wxString &aNickname) const |
| std::optional< LIB_DATA * > | fetchIfLoaded (const wxString &aNickname) |
| LIBRARY_RESULT< LIB_DATA * > | loadIfNeeded (const wxString &aNickname) |
| Fetches a loaded library, triggering a load of that library if it isn't loaded yet. | |
| LIBRARY_RESULT< LIB_DATA * > | loadFromScope (const wxString &aNickname, LIBRARY_TABLE_SCOPE aScope, std::map< wxString, LIB_DATA > &aTarget, std::shared_mutex &aMutex) |
| void | evictOwnedGlobalEntries () |
| Erases this adapter's own entries (LIB_DATA::global_owner == this) from the process-wide globalLibs() cache. | |
| void | abortLoad () |
| Aborts any async load in progress; blocks until fully done aborting. | |
| void | resetProjectCache () |
| Aborts pending loads and resets every project-scope cache entry in place (plugin and row cleared, status returned to INVALID) while preserving the nickname keys. | |
Static Protected Member Functions | |
| static std::recursive_mutex & | pluginMutex (const wxString &aNickname) |
| Serializes access to a library's shared plugin instance so its single mutable cache is not raced by concurrent enumerate/load/save/delete calls from the loader pool, preview panels and tree refreshes. | |
Protected Attributes | |
| LIBRARY_MANAGER & | m_manager |
| std::map< wxString, LIB_DATA > | m_libraries |
| std::shared_mutex | m_librariesMutex |
| std::atomic_bool | m_abort |
| std::vector< std::future< void > > | m_futures |
| std::atomic< size_t > | m_loadCount { 0 } |
| std::atomic< size_t > | m_loadTotal { 0 } |
| std::mutex | m_loadMutex |
Static Private Member Functions | |
| static DESIGN_BLOCK_IO * | dbplugin (const LIB_DATA *aRow) |
| Helper to cast the ABC plugin in the LIB_DATA* to a concrete plugin. | |
Static Private Attributes | |
| static LEAK_AT_EXIT< std::map< wxString, LIB_DATA > > | GlobalLibraries |
| static LEAK_AT_EXIT< std::shared_mutex > | GlobalLibraryMutex |
Definition at line 35 of file design_block_library_adapter.h.
The set of return values from DesignBlockSave() below.
| Enumerator | |
|---|---|
| SAVE_OK | |
| SAVE_SKIPPED | |
Definition at line 87 of file design_block_library_adapter.h.
| DESIGN_BLOCK_LIBRARY_ADAPTER::DESIGN_BLOCK_LIBRARY_ADAPTER | ( | LIBRARY_MANAGER & | aManager | ) |
Definition at line 39 of file design_block_library_adapter.cpp.
References LIBRARY_MANAGER_ADAPTER::LIBRARY_MANAGER_ADAPTER().
|
override |
Definition at line 45 of file design_block_library_adapter.cpp.
References LIBRARY_MANAGER_ADAPTER::evictOwnedGlobalEntries().
|
inherited |
Aborts any async load in progress; blocks until fully done aborting.
This is the public interface to allow LIBRARY_MANAGER to abort loads before project changes.
Definition at line 1140 of file library_manager.cpp.
References abortLoad().
Referenced by PGM_BASE::PreloadDesignBlockLibraries(), PCB::IFACE::PreloadLibraries(), SCH::IFACE::PreloadLibraries(), ReconcileLegacyCacheSymbols(), and SCH_SCREEN::UpdateSymbolLinks().
|
protectedinherited |
Aborts any async load in progress; blocks until fully done aborting.
Definition at line 1416 of file library_manager.cpp.
References BlockUntilLoaded(), m_abort, m_futures, m_loadCount, m_loadMutex, m_loadTotal, and traceLibraries.
Referenced by AbortAsyncLoad(), CheckTableRow(), enumerateLibrary(), evictOwnedGlobalEntries(), GlobalTablesChanged(), ReloadLibraryEntry(), and resetProjectCache().
|
inherited |
Loads all available libraries for this adapter type in the background.
Definition at line 1830 of file library_manager.cpp.
References GetKiCadThreadPool(), getUri(), globalLibs(), globalLibsMutex(), LOADED, LOADING, m_futures, m_libraries, m_librariesMutex, m_loadCount, m_loadMutex, m_loadTotal, m_manager, tp, traceLibraries, and Type().
Referenced by BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), filterFootprints(), PCB::IFACE::handleOpenFootprint(), PCBNEW_JOBS_HANDLER::JobExportDrc(), EESCHEMA_JOBS_HANDLER::JobSchErc(), PCB::IFACE::LoadAllLibraries(), SCH::IFACE::LoadAllLibraries(), API_HANDLER_LIBRARIES::loadAllLibraries(), LoadNetlistFootprints(), PANEL_FOOTPRINT_CHOOSER::PANEL_FOOTPRINT_CHOOSER(), PGM_BASE::PreloadDesignBlockLibraries(), PCB::IFACE::PreloadLibraries(), and SCH::IFACE::PreloadLibraries().
|
inherited |
Returns async load progress between 0.0 and 1.0, or nullopt if load is not in progress.
Definition at line 1441 of file library_manager.cpp.
References m_loadCount, and m_loadTotal.
Referenced by BOOST_AUTO_TEST_CASE(), PGM_BASE::PreloadDesignBlockLibraries(), PCB::IFACE::PreloadLibraries(), and SCH::IFACE::PreloadLibraries().
|
inherited |
Definition at line 1453 of file library_manager.cpp.
References m_futures, m_loadCount, m_loadMutex, m_loadTotal, and traceLibraries.
Referenced by abortLoad(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), filterFootprints(), PCB::IFACE::handleOpenFootprint(), PCBNEW_JOBS_HANDLER::JobExportDrc(), EESCHEMA_JOBS_HANDLER::JobSchErc(), LoadNetlistFootprints(), PANEL_FOOTPRINT_CHOOSER::PANEL_FOOTPRINT_CHOOSER(), PGM_BASE::PreloadDesignBlockLibraries(), PCB::IFACE::PreloadLibraries(), SCH::IFACE::PreloadLibraries(), and SYMBOL_EDIT_FRAME::SyncLibraries().
|
inlinevirtualinherited |
Validates that a library is loadable. May not necessarily load the library!
Reimplemented in SYMBOL_LIBRARY_ADAPTER.
Definition at line 161 of file library_manager.h.
References LoadOne().
Referenced by CheckTableRow().
|
inherited |
Definition at line 1243 of file library_manager.cpp.
References abortLoad(), CheckLibrary(), createPlugin(), LIBRARY_TABLE_ROW::Disabled(), fetchIfLoaded(), LIBRARY_TABLE_ROW::IsOk(), LOADED, LIBRARY_TABLE_ROW::Nickname(), LIB_DATA::plugin, plugin(), LIB_DATA::row, LIBRARY_TABLE_ROW::SetErrorDescription(), LIBRARY_TABLE_ROW::SetOk(), LIBRARY_TABLE_ROW::Type(), and LIBRARY_TABLE_ROW::URI().
Referenced by BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), and LIB_TABLE_NOTEBOOK_PANEL::onGridCellChanging().
|
inherited |
Creates the library (i.e. saves to disk) for the given row if it exists.
Definition at line 1645 of file library_manager.cpp.
References IO_BASE::CreateLibrary(), LIBRARY_TABLE_ROW::GetOptionsMap(), getUri(), loadIfNeeded(), LIB_DATA::plugin, pluginMutex(), result, LIB_DATA::row, traceLibraries, and IO_ERROR::What().
Referenced by SYMBOL_LIBRARY_MANAGER::addLibrary(), and SaveRemoteSymbolToLibrary().
|
overrideprotectedvirtual |
Creates a concrete plugin for the given row.
Implements LIBRARY_MANAGER_ADAPTER.
Definition at line 65 of file design_block_library_adapter.cpp.
References _, DESIGN_BLOCK_IO_MGR::DESIGN_BLOCK_FILE_UNKNOWN, DESIGN_BLOCK_IO_MGR::EnumFromStr(), DESIGN_BLOCK_IO_MGR::FindPlugin(), LIBRARY_MANAGER_ADAPTER::m_manager, DESIGN_BLOCK_IO_MGR::NESTED_TABLE, plugin(), traceLibraries, LIBRARY_TABLE_ROW::Type(), and LIBRARY_TABLE_ROW::URI().
|
staticprivate |
Helper to cast the ABC plugin in the LIB_DATA* to a concrete plugin.
Definition at line 57 of file design_block_library_adapter.cpp.
References LIB_DATA::plugin.
Referenced by DeleteDesignBlock(), DesignBlockExists(), enumerateLibrary(), GetDesignBlockNames(), GetDesignBlocks(), GetEnumeratedDesignBlock(), LoadDesignBlock(), LoadOne(), plugin(), and SaveDesignBlock().
| void DESIGN_BLOCK_LIBRARY_ADAPTER::DeleteDesignBlock | ( | const wxString & | aNickname, |
| const wxString & | aDesignBlockName ) |
Delete the aDesignBlockName from the library given by aNickname.
| aNickname | is a locator for the "library", it is a "name" in #LIB_TABLE_ROW. |
| aDesignBlockName | is the name of a design block to delete from the specified library. |
| IO_ERROR | if there is a problem finding the design block or the library, or deleting it. |
Definition at line 363 of file design_block_library_adapter.cpp.
References dbplugin(), DESIGN_BLOCK_IO::DesignBlockDelete(), LIBRARY_MANAGER_ADAPTER::fetchIfLoaded(), LIBRARY_TABLE_ROW::GetOptionsMap(), LIBRARY_MANAGER_ADAPTER::getUri(), and LIB_DATA::row.
|
inherited |
Deletes the given library from disk if it exists; returns true if deleted.
Definition at line 1360 of file library_manager.cpp.
References IO_BASE::DeleteLibrary(), LIBRARY_TABLE_ROW::GetOptionsMap(), getUri(), loadIfNeeded(), LIB_DATA::plugin, pluginMutex(), result, and LIB_DATA::row.
Referenced by Type().
| bool DESIGN_BLOCK_LIBRARY_ADAPTER::DesignBlockExists | ( | const wxString & | aNickname, |
| const wxString & | aDesignBlockName ) |
Indicates whether or not the given design block already exists in the given library.
Definition at line 315 of file design_block_library_adapter.cpp.
References dbplugin(), DESIGN_BLOCK_IO::DesignBlockExists(), LIBRARY_MANAGER_ADAPTER::fetchIfLoaded(), LIBRARY_TABLE_ROW::GetOptionsMap(), LIBRARY_MANAGER_ADAPTER::getUri(), and LIB_DATA::row.
Referenced by SaveDesignBlock().
| DESIGN_BLOCK * DESIGN_BLOCK_LIBRARY_ADAPTER::DesignBlockLoadWithOptionalNickname | ( | const LIB_ID & | aDesignBlockId, |
| bool | aKeepUUID = false, | ||
| wxString * | aErrorMsg = nullptr ) |
Load a design block having aDesignBlockId with possibly an empty nickname.
| aDesignBlockId | the [nickname] and name of the design block to load. |
| aKeepUUID | = true to keep initial items UUID, false to set new UUID normally true if loaded in the design block editor, false if loaded in the board editor used only in kicad_plugin |
| aErrorMsg | is an optional string that receives the reason a load failed. |
Definition at line 387 of file design_block_library_adapter.cpp.
References _, LIB_ID::GetLibItemName(), LIB_ID::GetLibNickname(), LIBRARY_MANAGER_ADAPTER::GetLibraryNames(), library, and LoadDesignBlock().
Referenced by DESIGN_BLOCK_PANE::GetDesignBlock().
|
overrideprotectedvirtual |
Override in derived class to perform library-specific enumeration.
| aUri | is the pre-resolved library URI (must be resolved on the main thread since URI expansion accesses PROJECT data that is not thread-safe). |
Implements LIBRARY_MANAGER_ADAPTER.
Definition at line 102 of file design_block_library_adapter.cpp.
References dbplugin(), DESIGN_BLOCK_IO::DesignBlockEnumerate(), LIBRARY_TABLE_ROW::GetOptionsMap(), and LIB_DATA::row.
|
protectedinherited |
Erases this adapter's own entries (LIB_DATA::global_owner == this) from the process-wide globalLibs() cache.
The cached LIB_DATA::row pointers reference this manager's tables, so they must be dropped before the manager is destroyed or a later manager's fetchIfLoaded() would dereference freed rows. Derived destructors must call this while globalLibs() is still resolvable.
Definition at line 1171 of file library_manager.cpp.
References abortLoad(), globalLibs(), and globalLibsMutex().
Referenced by enumerateLibrary(), DESIGN_BLOCK_LIBRARY_ADAPTER::~DESIGN_BLOCK_LIBRARY_ADAPTER(), FOOTPRINT_LIBRARY_ADAPTER::~FOOTPRINT_LIBRARY_ADAPTER(), and SYMBOL_LIBRARY_ADAPTER::~SYMBOL_LIBRARY_ADAPTER().
|
protectedinherited |
Definition at line 1715 of file library_manager.cpp.
References find, globalLibs(), globalLibsMutex(), LOADED, m_libraries, and m_librariesMutex.
|
protectedinherited |
Definition at line 1685 of file library_manager.cpp.
References find, globalLibs(), globalLibsMutex(), LOADED, m_libraries, and m_librariesMutex.
Referenced by CheckTableRow(), DESIGN_BLOCK_LIBRARY_ADAPTER::DeleteDesignBlock(), FOOTPRINT_LIBRARY_ADAPTER::DeleteFootprint(), DESIGN_BLOCK_LIBRARY_ADAPTER::DesignBlockExists(), enumerateLibrary(), FOOTPRINT_LIBRARY_ADAPTER::FootprintExists(), FOOTPRINT_LIBRARY_ADAPTER::GenerateTimestamp(), SYMBOL_LIBRARY_ADAPTER::GetAvailableExtraFields(), DESIGN_BLOCK_LIBRARY_ADAPTER::GetDesignBlockNames(), DESIGN_BLOCK_LIBRARY_ADAPTER::GetDesignBlocks(), DESIGN_BLOCK_LIBRARY_ADAPTER::GetEnumeratedDesignBlock(), FOOTPRINT_LIBRARY_ADAPTER::GetFootprintNames(), GetLibraryDescription(), SYMBOL_LIBRARY_ADAPTER::GetLibraryModifyHash(), GetLibraryNames(), SYMBOL_LIBRARY_ADAPTER::GetModifyHash(), SYMBOL_LIBRARY_ADAPTER::GetSubLibraries(), SYMBOL_LIBRARY_ADAPTER::GetSymbolNames(), SYMBOL_LIBRARY_ADAPTER::GetSymbols(), HasLibrary(), DESIGN_BLOCK_LIBRARY_ADAPTER::IsDesignBlockLibWritable(), FOOTPRINT_LIBRARY_ADAPTER::IsFootprintLibWritable(), SYMBOL_LIBRARY_ADAPTER::IsSymbolLibWritable(), IsWritable(), DESIGN_BLOCK_LIBRARY_ADAPTER::LoadDesignBlock(), FOOTPRINT_LIBRARY_ADAPTER::LoadFootprint(), SYMBOL_LIBRARY_ADAPTER::LoadSymbol(), FOOTPRINT_LIBRARY_ADAPTER::RefreshLibraryIfChanged(), DESIGN_BLOCK_LIBRARY_ADAPTER::SaveDesignBlock(), FOOTPRINT_LIBRARY_ADAPTER::SaveFootprint(), SYMBOL_LIBRARY_ADAPTER::ShowConfigurationDialog(), SYMBOL_LIBRARY_ADAPTER::SupportsConfigurationDialog(), and SYMBOL_LIBRARY_ADAPTER::SupportsSubLibraries().
|
inherited |
Definition at line 1314 of file library_manager.cpp.
References m_manager, Type(), and LIBRARY_MANAGER::UrisAreEquivalent().
Referenced by Type().
|
inherited |
Like LIBRARY_MANAGER::FindRowByURI but filtered to the LIBRARY_TABLE_TYPE of this adapter.
Definition at line 1408 of file library_manager.cpp.
References m_manager, and Type().
Referenced by FOOTPRINT_EDIT_FRAME::KiwayMailIn(), SYMBOL_EDIT_FRAME::KiwayMailIn(), and Type().
| std::vector< wxString > DESIGN_BLOCK_LIBRARY_ADAPTER::GetDesignBlockNames | ( | const wxString & | aNickname | ) |
Definition at line 186 of file design_block_library_adapter.cpp.
References dbplugin(), DESIGN_BLOCK_IO::DesignBlockEnumerate(), LIBRARY_MANAGER_ADAPTER::fetchIfLoaded(), LIBRARY_TABLE_ROW::GetOptionsMap(), LIBRARY_MANAGER_ADAPTER::getUri(), name, and LIB_DATA::row.
| std::vector< DESIGN_BLOCK * > DESIGN_BLOCK_LIBRARY_ADAPTER::GetDesignBlocks | ( | const wxString & | aNickname | ) |
Definition at line 148 of file design_block_library_adapter.cpp.
References dbplugin(), DESIGN_BLOCK_IO::DesignBlockEnumerate(), LIBRARY_MANAGER_ADAPTER::fetchIfLoaded(), LIBRARY_TABLE_ROW::GetOptionsMap(), LIBRARY_MANAGER_ADAPTER::getUri(), LIBRARY_TABLE_ROW::Nickname(), LIB_DATA::row, traceLibraries, and IO_ERROR::What().
Referenced by DESIGN_BLOCK_TREE_MODEL_ADAPTER::getDesignBlocks().
| const DESIGN_BLOCK * DESIGN_BLOCK_LIBRARY_ADAPTER::GetEnumeratedDesignBlock | ( | const wxString & | aNickname, |
| const wxString & | aDesignBlockName ) |
A version of #DesignBlockLoad() for use after #DesignBlockEnumerate() for more efficient cache management.
The return value is const to allow it to return a reference to a cached item.
Definition at line 329 of file design_block_library_adapter.cpp.
References dbplugin(), LIBRARY_MANAGER_ADAPTER::fetchIfLoaded(), DESIGN_BLOCK_IO::GetEnumeratedDesignBlock(), LIBRARY_TABLE_ROW::GetOptionsMap(), LIBRARY_MANAGER_ADAPTER::getUri(), and LIB_DATA::row.
|
inherited |
Definition at line 1385 of file library_manager.cpp.
References fetchIfLoaded().
Referenced by BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), PCB_BASE_FRAME::GetLibraryItemsForListDialog(), SCH_BASE_FRAME::GetLibraryItemsForListDialog(), and Type().
|
inherited |
Returns all library load errors as newline-separated strings for display.
Definition at line 1538 of file library_manager.cpp.
References _, GetLibraryStatuses(), LOAD_ERROR, and RPT_SEVERITY_ERROR.
Referenced by PCB_EDIT_FRAME::KiwayMailIn(), SCH_EDIT_FRAME::KiwayMailIn(), PCB::IFACE::PreloadLibraries(), and SCH::IFACE::PreloadLibraries().
|
inherited |
Returns a list of library nicknames that are available (skips any that failed to load)
Definition at line 1326 of file library_manager.cpp.
References fetchIfLoaded(), INSENSITIVE, m_manager, StrNumSort(), traceLibraries, and Type().
Referenced by CVPCB_MAINFRAME::BuildLibrariesList(), DIALOG_SYMBOL_REMAP::createProjectSymbolLibTable(), DESIGN_BLOCK_LIBRARY_ADAPTER::DesignBlockLoadWithOptionalNickname(), filterFootprints(), FOOTPRINT_LIBRARY_ADAPTER::GenerateTimestamp(), SYMBOL_LIBRARY_MANAGER::GetLibraryCount(), PCB_BASE_FRAME::GetLibraryItemsForListDialog(), SCH_BASE_FRAME::GetLibraryItemsForListDialog(), guessNickname(), FOOTPRINT_LIBRARY_ADAPTER::LoadFootprintWithOptionalNickname(), FOOTPRINT_VIEWER_FRAME::OnActivate(), DIALOG_EDIT_SYMBOLS_LIBID::onClickOrphansButton(), FOOTPRINT_LIST_IMPL::ReadFootprintFiles(), SYMBOL_VIEWER_FRAME::ReCreateLibList(), FOOTPRINT_VIEWER_FRAME::ReCreateLibraryList(), FOOTPRINT_LIBRARY_ADAPTER::RefreshChangedLibraries(), SAVE_AS_DIALOG::SAVE_AS_DIALOG(), and Type().
|
inherited |
Returns the status of a loaded library, or nullopt if the library hasn't been loaded (yet)
Definition at line 1810 of file library_manager.cpp.
References find, globalLibs(), globalLibsMutex(), m_libraries, and m_librariesMutex.
Referenced by GetLibraryStatuses(), API_HANDLER_LIBRARIES::handleGetLibraryStatuses(), DESIGN_BLOCK_LIBRARY_ADAPTER::libraryUnavailableMessage(), SYMBOL_TREE_SYNCHRONIZING_ADAPTER::Sync(), and CV::testFootprintLink().
|
inherited |
Returns a list of all library nicknames and their status (even if they failed to load)
Definition at line 1508 of file library_manager.cpp.
References GetLibraryStatus(), INVALID, m_manager, result, and Type().
Referenced by BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), GetLibraryLoadErrors(), and SYMBOL_TREE_SYNCHRONIZING_ADAPTER::Sync().
|
inherited |
Like LIBRARY_MANAGER::GetRow but filtered to the LIBRARY_TABLE_TYPE of this adapter.
Definition at line 1401 of file library_manager.cpp.
References m_manager, and Type().
Referenced by EXPORTER_STEP::buildFootprint3DShapes(), FOOTPRINT_EDITOR_CONTROL::CompareLibraryWithFile(), SYMBOL_VIEWER_FRAME::DisplayLibInfos(), CVPCB_MAINFRAME::DisplayStatus(), SCH_EDITOR_CONTROL::ExportSymbolsToLibrary(), EXPORTER_PCB_VRML::ExportVrmlFootprint(), SYMBOL_TREE_SYNCHRONIZING_ADAPTER::GetValue(), idf_export_footprint(), SYMBOL_EDIT_FRAME::IsSymbolFromLegacyLibrary(), SYMBOL_EDIT_FRAME::KiwayMailIn(), SYMBOL_VIEWER_FRAME::KiwayMailIn(), DESIGN_BLOCK_LIBRARY_ADAPTER::libraryUnavailableMessage(), RENDER_3D_RAYTRACE_BASE::load3DModels(), RENDER_3D_OPENGL::load3dModels(), SCH_EDIT_FRAME::LoadSheetFromFile(), PANEL_FP_PROPERTIES_3D_MODEL::OnAdd3DModel(), PANEL_SYMBOL_CHOOSER::PANEL_SYMBOL_CHOOSER(), SYMBOL_VIEWER_FRAME::ReCreateLibList(), SYMBOL_EDIT_FRAME::replaceLibTableEntry(), DRC_TEST_PROVIDER_LIBRARY_PARITY::Run(), SYMBOL_EDIT_FRAME::saveLibrary(), PCB_BASE_FRAME::setFPWatcher(), SYMBOL_TREE_SYNCHRONIZING_ADAPTER::Sync(), DIALOG_FOOTPRINT_ASSOCIATIONS::TransferDataToWindow(), Type(), SCH_SCREEN::UpdateSymbolLinks(), and PANEL_FP_PROPERTIES_3D_MODEL::validateModelExists().
|
protectedinherited |
Definition at line 1679 of file library_manager.cpp.
References LIBRARY_MANAGER::ExpandURI(), m_manager, and LIBRARY_TABLE_ROW::URI().
Referenced by AsyncLoad(), SYMBOL_LIBRARY_ADAPTER::CheckLibrary(), CreateLibrary(), DESIGN_BLOCK_LIBRARY_ADAPTER::DeleteDesignBlock(), FOOTPRINT_LIBRARY_ADAPTER::DeleteFootprint(), DeleteLibrary(), DESIGN_BLOCK_LIBRARY_ADAPTER::DesignBlockExists(), enumerateLibrary(), FOOTPRINT_LIBRARY_ADAPTER::FootprintExists(), DESIGN_BLOCK_LIBRARY_ADAPTER::GetDesignBlockNames(), DESIGN_BLOCK_LIBRARY_ADAPTER::GetDesignBlocks(), DESIGN_BLOCK_LIBRARY_ADAPTER::GetEnumeratedDesignBlock(), FOOTPRINT_LIBRARY_ADAPTER::GetFootprintNames(), SYMBOL_LIBRARY_ADAPTER::GetSymbolNames(), SYMBOL_LIBRARY_ADAPTER::GetSymbols(), DESIGN_BLOCK_LIBRARY_ADAPTER::IsDesignBlockLibWritable(), FOOTPRINT_LIBRARY_ADAPTER::IsFootprintLibWritable(), SYMBOL_LIBRARY_ADAPTER::IsSymbolLibWritable(), IsWritable(), DESIGN_BLOCK_LIBRARY_ADAPTER::LoadDesignBlock(), FOOTPRINT_LIBRARY_ADAPTER::LoadFootprint(), DESIGN_BLOCK_LIBRARY_ADAPTER::LoadOne(), FOOTPRINT_LIBRARY_ADAPTER::LoadOne(), SYMBOL_LIBRARY_ADAPTER::LoadOne(), SYMBOL_LIBRARY_ADAPTER::LoadSymbol(), FOOTPRINT_LIBRARY_ADAPTER::RefreshLibraryIfChanged(), DESIGN_BLOCK_LIBRARY_ADAPTER::SaveDesignBlock(), FOOTPRINT_LIBRARY_ADAPTER::SaveFootprint(), and SYMBOL_LIBRARY_ADAPTER::SaveSymbol().
|
inlineoverrideprotectedvirtual |
Implements LIBRARY_MANAGER_ADAPTER.
Definition at line 148 of file design_block_library_adapter.h.
References GlobalLibraries.
|
inlineoverrideprotectedvirtual |
Implements LIBRARY_MANAGER_ADAPTER.
Definition at line 147 of file design_block_library_adapter.h.
References GlobalLibraries.
|
inlineoverrideprotectedvirtual |
Implements LIBRARY_MANAGER_ADAPTER.
Definition at line 150 of file design_block_library_adapter.h.
References GlobalLibraryMutex.
|
inlineoverrideprotectedvirtual |
Implements LIBRARY_MANAGER_ADAPTER.
Definition at line 149 of file design_block_library_adapter.h.
References GlobalLibraryMutex.
|
static |
Definition at line 51 of file design_block_library_adapter.cpp.
References ENV_VAR::GetVersionedEnvVarName().
Referenced by PANEL_DESIGN_BLOCK_LIB_TABLE::populateEnvironReadOnlyTable().
|
inherited |
|
inherited |
Notify the adapter that the global library tables have changed.
Definition at line 1146 of file library_manager.cpp.
References abortLoad(), globalLibs(), globalLibsMutex(), and Type().
Referenced by Type().
|
inherited |
Test for the existence of aNickname in the library tables.
| aCheckEnabled | if true will only return true for enabled libraries |
Definition at line 1349 of file library_manager.cpp.
References fetchIfLoaded().
Referenced by SYMBOL_EDIT_FRAME::AddLibraryFile(), SYMBOL_EDIT_FRAME::addLibTableEntry(), SYMBOL_VIEWER_FRAME::ClickOnLibList(), SYMBOL_EDIT_FRAME::DdAddLibrary(), BOARD_INSPECTION_TOOL::DiffFootprint(), SCH_INSPECTION_TOOL::DiffSymbol(), FOOTPRINT_LIBRARY_ADAPTER::GenerateTimestamp(), DISPLAY_FOOTPRINTS_FRAME::GetFootprint(), FOOTPRINT_EDIT_FRAME::KiwayMailIn(), SYMBOL_EDIT_FRAME::KiwayMailIn(), SYMBOL_LIBRARY_MANAGER::LibraryExists(), SCH_EDIT_FRAME::LoadSheetFromFile(), PANEL_SYMBOL_CHOOSER::PANEL_SYMBOL_CHOOSER(), DRC_TEST_PROVIDER_LIBRARY_PARITY::Run(), SYMBOL_EDIT_FRAME::saveLibrary(), SCH_BASE_FRAME::SelectLibrary(), CV::testFootprintLink(), Type(), and SCH_SCREEN::UpdateSymbolLinks().
| bool DESIGN_BLOCK_LIBRARY_ADAPTER::IsDesignBlockLibWritable | ( | const wxString & | aNickname | ) |
Return true if the library given by aNickname is writable.
Often system libraries are read only because of where they are installed.
| IO_ERROR | if no library at aLibraryPath exists. |
Definition at line 375 of file design_block_library_adapter.cpp.
References LIBRARY_MANAGER_ADAPTER::fetchIfLoaded(), LIBRARY_MANAGER_ADAPTER::getUri(), IO_BASE::IsLibraryWritable(), plugin(), and LIB_DATA::row.
|
inherited |
Definition at line 1468 of file library_manager.cpp.
References find, globalLibs(), globalLibsMutex(), LOADED, m_libraries, and m_librariesMutex.
Referenced by BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), SYMBOL_LIBRARY_MANAGER::IsLibraryLoaded(), loadLibrary(), DRC_TEST_PROVIDER_LIBRARY_PARITY::Run(), and ERC_TESTER::TestLibSymbolIssues().
|
virtualinherited |
Return true if the given nickname exists and is not a read-only library.
Definition at line 1628 of file library_manager.cpp.
References fetchIfLoaded(), getUri(), IO_BASE::IsLibraryWritable(), LIB_DATA::plugin, pluginMutex(), result, and LIB_DATA::row.
|
virtualinherited |
Definition at line 1488 of file library_manager.cpp.
References find, globalLibs(), globalLibsMutex(), m_libraries, and m_librariesMutex.
Referenced by LIB_TABLE_GRID_TRICKS::onGridCellLeftClick().
|
protected |
Definition at line 254 of file design_block_library_adapter.cpp.
References _, describeMissingLibrary(), LIBRARY_MANAGER_ADAPTER::GetLibraryStatus(), LIBRARY_MANAGER_ADAPTER::GetRow(), LOAD_ERROR, and LIBRARY_MANAGER_ADAPTER::Rows().
Referenced by LoadDesignBlock().
| DESIGN_BLOCK * DESIGN_BLOCK_LIBRARY_ADAPTER::LoadDesignBlock | ( | const wxString & | aNickname, |
| const wxString & | aDesignBlockName, | ||
| bool | aKeepUUID = false, | ||
| wxString * | aErrorMsg = nullptr ) |
Load a design block having aDesignBlockName from the library given by aNickname.
| aNickname | is a locator for the "library", it is a "name" in #LIB_TABLE_ROW. |
| aDesignBlockName | is the name of the design block to load. |
| aKeepUUID | = true to keep initial items UUID, false to set new UUID normally true if loaded in the design block editor, false if loaded in the board editor. Used only in kicad_plugin |
| aErrorMsg | is an optional string that receives the reason a load failed. |
Definition at line 276 of file design_block_library_adapter.cpp.
References dbplugin(), LIBRARY_MANAGER_ADAPTER::fetchIfLoaded(), LIBRARY_TABLE_ROW::GetOptionsMap(), LIBRARY_MANAGER_ADAPTER::getUri(), libraryUnavailableMessage(), LIB_DATA::row, traceLibraries, and IO_ERROR::What().
Referenced by DesignBlockLoadWithOptionalNickname(), and PANEL_DESIGN_BLOCK_CHOOSER::rebuildHistoryNode().
|
protectedinherited |
Definition at line 1745 of file library_manager.cpp.
References createPlugin(), GLOBAL, LOADING, m_manager, LIBRARY_TABLE_ROW::Nickname(), plugin(), result, traceLibraries, and Type().
Referenced by enumerateLibrary(), loadIfNeeded(), and ReloadLibraryEntry().
|
protectedinherited |
Fetches a loaded library, triggering a load of that library if it isn't loaded yet.
Definition at line 1792 of file library_manager.cpp.
References _, GLOBAL, globalLibs(), globalLibsMutex(), loadFromScope(), m_libraries, m_librariesMutex, PROJECT, and result.
Referenced by CreateLibrary(), DeleteLibrary(), enumerateLibrary(), LoadLibraryEntry(), DESIGN_BLOCK_LIBRARY_ADAPTER::LoadOne(), FOOTPRINT_LIBRARY_ADAPTER::LoadOne(), SYMBOL_LIBRARY_ADAPTER::LoadOne(), and SYMBOL_LIBRARY_ADAPTER::SaveSymbol().
|
inherited |
Synchronously loads the named library to LOADED state.
Returns the resulting status, or nullopt if the library is not found in any table.
Definition at line 1562 of file library_manager.cpp.
References loadIfNeeded(), LoadOne(), and result.
Referenced by API_HANDLER_LIBRARIES::handleGetItemsFromLibrary(), API_HANDLER_LIBRARIES::handleGetLibraryItems(), and loadLibrary().
| std::optional< LIB_STATUS > DESIGN_BLOCK_LIBRARY_ADAPTER::LoadOne | ( | const wxString & | nickname | ) |
Definition at line 134 of file design_block_library_adapter.cpp.
References LOAD_ERROR, LIBRARY_MANAGER_ADAPTER::loadIfNeeded(), LoadOne(), and result.
|
overridevirtual |
Implements LIBRARY_MANAGER_ADAPTER.
Definition at line 110 of file design_block_library_adapter.cpp.
References dbplugin(), DESIGN_BLOCK_IO::DesignBlockEnumerate(), LIB_STATUS::error, LIBRARY_TABLE_ROW::GetOptionsMap(), LIBRARY_MANAGER_ADAPTER::getUri(), LOAD_ERROR, LIB_STATUS::load_status, LOADED, LOADING, LIBRARY_TABLE_ROW::Nickname(), IO_ERROR::Problem(), LIB_DATA::row, LIB_DATA::status, traceLibraries, IO_ERROR::What(), and IO_ERROR::Where().
Referenced by DESIGN_BLOCK_PANE::AddDesignBlockLibrary(), and LoadOne().
|
inherited |
Definition at line 1111 of file library_manager.cpp.
References m_manager.
Implements LIBRARY_MANAGER_ADAPTER.
Definition at line 96 of file design_block_library_adapter.cpp.
References dbplugin().
Referenced by createPlugin(), and IsDesignBlockLibWritable().
|
staticprotectedinherited |
Serializes access to a library's shared plugin instance so its single mutable cache is not raced by concurrent enumerate/load/save/delete calls from the loader pool, preview panels and tree refreshes.
Keyed by nickname, a safe over-approximation of the real resource (the plugin instance): sharing one mutex across two distinct resources can only over-serialize, never under-protect. Static because global-library plugins are shared process-wide. Recursive because database/http libraries resolve references back through the adapter into other plugins' LoadSymbol paths while already holding their own mutex.
Definition at line 53 of file library_manager.cpp.
Referenced by SYMBOL_LIBRARY_ADAPTER::CheckLibrary(), CreateLibrary(), FOOTPRINT_LIBRARY_ADAPTER::DeleteFootprint(), DeleteLibrary(), FOOTPRINT_LIBRARY_ADAPTER::enumerateLibrary(), SYMBOL_LIBRARY_ADAPTER::enumerateLibrary(), FOOTPRINT_LIBRARY_ADAPTER::FootprintExists(), FOOTPRINT_LIBRARY_ADAPTER::GetFootprintNames(), SYMBOL_LIBRARY_ADAPTER::GetSymbolNames(), SYMBOL_LIBRARY_ADAPTER::GetSymbols(), FOOTPRINT_LIBRARY_ADAPTER::IsFootprintLibWritable(), IsWritable(), FOOTPRINT_LIBRARY_ADAPTER::LoadFootprint(), FOOTPRINT_LIBRARY_ADAPTER::LoadOne(), SYMBOL_LIBRARY_ADAPTER::LoadOne(), SYMBOL_LIBRARY_ADAPTER::LoadSymbol(), plugin(), and FOOTPRINT_LIBRARY_ADAPTER::SaveFootprint().
|
virtualinherited |
Notify the adapter that the active project has changed.
Definition at line 1117 of file library_manager.cpp.
References resetProjectCache().
|
inherited |
Retrieves the project library table for this adapter type, or nullopt if one doesn't exist.
Definition at line 1308 of file library_manager.cpp.
References m_manager, PROJECT, and Type().
Referenced by BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), BOOST_AUTO_TEST_CASE(), SCH_IO_EAGLE::LoadSchematicFile(), SCH_EDIT_FRAME::LoadSheetFromFile(), SCH_EDIT_FRAME::OpenProjectFiles(), and Type().
|
inherited |
Notify the adapter that the project library tables are about to be rebuilt.
Mirrors GlobalTablesChanged: aborts any in-progress loads and invalidates cached LIB_DATA entries so raw LIBRARY_TABLE_ROW pointers do not dangle when the backing LIBRARY_TABLE objects are destroyed and rebuilt. Entries are reset in place (rather than erased) so their nicknames continue to mask same-named global libraries until the project scope is repopulated.
Definition at line 1189 of file library_manager.cpp.
References resetProjectCache(), and Type().
|
inherited |
Complements ProjectTablesChanged by erasing project-scope cache entries whose nicknames no longer appear in the rebuilt project table.
Must be called AFTER the new project table is loaded; otherwise removed libraries would be permanently masked by stale sentinels installed during the reset.
Definition at line 1209 of file library_manager.cpp.
References m_libraries, m_librariesMutex, m_manager, PROJECT, and Type().
|
inherited |
Definition at line 1573 of file library_manager.cpp.
References abortLoad(), BOTH, GLOBAL, globalLibs(), globalLibsMutex(), loadFromScope(), m_libraries, m_librariesMutex, PROJECT, result, traceLibraries, and UNINITIALIZED.
Referenced by SCH_IO_EAGLE::LoadSchematicFile().
|
protectedinherited |
Aborts pending loads and resets every project-scope cache entry in place (plugin and row cleared, status returned to INVALID) while preserving the nickname keys.
Keeping the keys acts as a sentinel: fetchIfLoaded() finds the entry, sees it is no longer LOADED, and returns nullopt instead of falling through to globalLibs(), which is what preserves project-over- global shadowing across a project table reload. Shared between ProjectChanged() and ProjectTablesChanged() so both hooks stay in sync.
Definition at line 1123 of file library_manager.cpp.
References abortLoad(), m_libraries, and m_librariesMutex.
Referenced by enumerateLibrary(), ProjectChanged(), and ProjectTablesChanged().
|
inherited |
Like LIBRARY_MANAGER::Rows but filtered to the LIBRARY_TABLE_TYPE of this adapter.
Definition at line 1394 of file library_manager.cpp.
References m_manager, and Type().
Referenced by API_HANDLER_LIBRARIES::handleGetLibraryItems(), DESIGN_BLOCK_LIBRARY_ADAPTER::libraryUnavailableMessage(), CVPCB_MAINFRAME::LoadFootprintFiles(), LoadNetlistFootprints(), ReconcileLegacyCacheSymbols(), and Type().
| DESIGN_BLOCK_LIBRARY_ADAPTER::SAVE_T DESIGN_BLOCK_LIBRARY_ADAPTER::SaveDesignBlock | ( | const wxString & | aNickname, |
| const DESIGN_BLOCK * | aDesignBlock, | ||
| bool | aOverwrite = true ) |
Write aDesignBlock to an existing library given by aNickname.
If a design block by the same name already exists, it is replaced.
| aNickname | is a locator for the "library", it is a "name" in #LIB_TABLE_ROW. |
| aDesignBlock | is what to store in the library. The caller continues to own the design block after this call. |
| aOverwrite | when true means overwrite any existing design block by the same name, else if false means skip the write and return SAVE_SKIPPED. |
| IO_ERROR | if there is a problem saving. |
Definition at line 344 of file design_block_library_adapter.cpp.
References dbplugin(), DesignBlockExists(), DESIGN_BLOCK_IO::DesignBlockSave(), LIBRARY_MANAGER_ADAPTER::fetchIfLoaded(), DESIGN_BLOCK::GetName(), LIBRARY_TABLE_ROW::GetOptionsMap(), LIBRARY_MANAGER_ADAPTER::getUri(), LIB_DATA::row, SAVE_OK, and SAVE_SKIPPED.
Referenced by PCB_EDIT_FRAME::SaveBoardAsDesignBlock(), SCH_EDIT_FRAME::SaveSelectionAsDesignBlock(), PCB_EDIT_FRAME::saveSelectionToDesignBlock(), SCH_EDIT_FRAME::SaveSheetAsDesignBlock(), PCB_EDIT_FRAME::UpdateDesignBlockFromBoard(), SCH_EDIT_FRAME::UpdateDesignBlockFromSelection(), and SCH_EDIT_FRAME::UpdateDesignBlockFromSheet().
|
inlinevirtualinherited |
Reimplemented in SYMBOL_LIBRARY_ADAPTER.
Definition at line 198 of file library_manager.h.
Referenced by LIB_TABLE_GRID_TRICKS::doPopupSelection(), and LIB_TABLE_GRID_TRICKS::onGridCellLeftClick().
|
inlinevirtualinherited |
Reimplemented in SYMBOL_LIBRARY_ADAPTER.
Definition at line 196 of file library_manager.h.
Referenced by LIB_TABLE_GRID_TRICKS::onGridCellLeftClick().
|
inlineoverridevirtual |
The type of library table this adapter works with.
Implements LIBRARY_MANAGER_ADAPTER.
Definition at line 42 of file design_block_library_adapter.h.
References DESIGN_BLOCK.
|
staticprivate |
Definition at line 166 of file design_block_library_adapter.h.
Referenced by globalLibs(), and globalLibs().
|
staticprivate |
Definition at line 170 of file design_block_library_adapter.h.
Referenced by globalLibsMutex(), and globalLibsMutex().
|
protectedinherited |
Definition at line 267 of file library_manager.h.
Referenced by abortLoad().
|
protectedinherited |
Definition at line 268 of file library_manager.h.
Referenced by abortLoad(), AsyncLoad(), and BlockUntilLoaded().
|
protectedinherited |
Definition at line 263 of file library_manager.h.
Referenced by AsyncLoad(), fetchIfLoaded(), fetchIfLoaded(), GetLibraryStatus(), IsLibraryLoaded(), LibraryError(), loadIfNeeded(), ProjectTablesReloaded(), ReloadLibraryEntry(), and resetProjectCache().
|
mutableprotectedinherited |
Definition at line 265 of file library_manager.h.
Referenced by AsyncLoad(), fetchIfLoaded(), fetchIfLoaded(), GetLibraryStatus(), IsLibraryLoaded(), LibraryError(), loadIfNeeded(), ProjectTablesReloaded(), ReloadLibraryEntry(), and resetProjectCache().
|
protectedinherited |
Definition at line 270 of file library_manager.h.
Referenced by abortLoad(), AsyncLoad(), AsyncLoadProgress(), and BlockUntilLoaded().
|
protectedinherited |
Definition at line 272 of file library_manager.h.
Referenced by abortLoad(), AsyncLoad(), and BlockUntilLoaded().
|
protectedinherited |
Definition at line 271 of file library_manager.h.
Referenced by abortLoad(), AsyncLoad(), AsyncLoadProgress(), and BlockUntilLoaded().
|
protectedinherited |
Definition at line 260 of file library_manager.h.
Referenced by AsyncLoad(), DESIGN_BLOCK_LIBRARY_ADAPTER::createPlugin(), FOOTPRINT_LIBRARY_ADAPTER::createPlugin(), SYMBOL_LIBRARY_ADAPTER::createPlugin(), FindLibraryByURI(), FindRowByURI(), GetLibraryNames(), GetLibraryStatuses(), SYMBOL_LIBRARY_ADAPTER::GetModifyHash(), GetRow(), getUri(), SYMBOL_LIBRARY_ADAPTER::globalLibs(), SYMBOL_LIBRARY_ADAPTER::globalLibs(), SYMBOL_LIBRARY_ADAPTER::globalLibsMutex(), SYMBOL_LIBRARY_ADAPTER::globalLibsMutex(), GlobalTable(), LIBRARY_MANAGER_ADAPTER(), loadFromScope(), Manager(), ProjectTable(), ProjectTablesReloaded(), and Rows().