62 {
"SCH",
"sch",
"LIA",
"lia" } );
73 const std::map<std::string, UTF8>* aProperties =
nullptr )
override;
78 const std::map<std::string, UTF8>* aProperties =
nullptr )
override;
80 void EnumerateSymbolLib( std::vector<LIB_SYMBOL*>& aSymbolList,
const wxString& aLibraryPath,
81 const std::map<std::string, UTF8>* aProperties =
nullptr )
override;
84 const std::map<std::string, UTF8>* aProperties =
nullptr )
override;
89 static wxString
getLibName( const ::SCHEMATIC* aSchematic,
const wxString& aFileName );
Define a library symbol object.
Holds all the data relating to one schematic.
const IO_BASE::IO_FILE_DESC GetLibraryDesc() const override
Get the descriptor for the library container that this IO plugin operates on.
bool CanReadLibrary(const wxString &aFileName) const override
Checks if this IO object can read the specified library file/directory.
LIB_SYMBOL * LoadSymbol(const wxString &aLibraryPath, const wxString &aPartName, const std::map< std::string, UTF8 > *aProperties=nullptr) override
Load a LIB_SYMBOL object having aPartName from the aLibraryPath containing a library format that this...
int GetModifyHash() const override
Return the modification hash from the library cache.
static wxString getLibName(const ::SCHEMATIC *aSchematic, const wxString &aFileName)
long long m_cacheTimestamp
void ensureLoadedLibrary(const wxString &aLibraryPath)
Parse the library file once and serve cache-owned symbols, invalidated by path or file timestamp chan...
bool CanReadSchematicFile(const wxString &aFileName) const override
Checks if this SCH_IO can read the specified schematic file.
SCH_SHEET * LoadSchematicFile(const wxString &aFileName, SCHEMATIC *aSchematic, SCH_SHEET *aAppendToMe=nullptr, const std::map< std::string, UTF8 > *aProperties=nullptr) override
Load information from some input file format that this SCH_IO implementation knows about,...
void EnumerateSymbolLib(wxArrayString &aSymbolNameList, const wxString &aLibraryPath, const std::map< std::string, UTF8 > *aProperties=nullptr) override
Populate a list of LIB_SYMBOL alias names contained within the library aLibraryPath.
bool IsLibraryWritable(const wxString &aLibraryPath) override
Return true if the library at aLibraryPath is writable.
void populateScreen(SCH_SCREEN *aScreen, const PCAD_SCH::SHEET &aSheet, const PCAD_SCH::SCHEMATIC &aPcad, double aPageH, const LIB_SYMBOL_STORE &aLibSymbols, const wxString &aLibName)
std::map< wxString, std::unique_ptr< LIB_SYMBOL > > m_libCache
const IO_BASE::IO_FILE_DESC GetSchematicFileDesc() const override
Returns schematic file description for the SCH_IO.
SCH_IO(const wxString &aName)
Sheet symbol placed in a schematic, and is the entry point for a sub schematic.
Container that describes file type info.