21#ifndef SCH_IO_CADSTAR_ARCHIVE_H_
22#define SCH_IO_CADSTAR_ARCHIVE_H_
71 const std::map<std::string, UTF8>* aProperties =
nullptr )
override;
74 const wxString& aLibraryPath,
75 const std::map<std::string, UTF8>* aProperties =
nullptr )
override;
78 const wxString& aLibraryPath,
79 const std::map<std::string, UTF8>* aProperties =
nullptr )
override;
82 const std::map<std::string, UTF8>* aProperties =
nullptr )
override;
90 void GetLibraryOptions( std::map<std::string, UTF8>* aListToAppendTo )
const override;
94 void ensureLoadedLibrary(
const wxString& aLibraryPath,
const std::map<std::string, UTF8>* aProperties );
REPORTER * m_reporter
Reporter to log errors/warnings to, may be nullptr.
PROGRESS_REPORTER * m_progressReporter
Progress reporter to track the progress of the operation, may be nullptr.
Define a library symbol object.
A progress reporter interface for use in multi-threaded environments.
A pure virtual class used to derive REPORTER objects from.
Holds all the data relating to one schematic.
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 SetProgressReporter(PROGRESS_REPORTER *aReporter) override
Set an optional progress reporter.
bool IsLibraryWritable(const wxString &aLibraryPath) override
Return true if the library at aLibraryPath is writable.
int GetModifyHash() const override
Return the modification hash from the library cache.
LIB_SYMBOL * LoadSymbol(const wxString &aLibraryPath, const wxString &aAliasName, 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...
virtual ~SCH_IO_CADSTAR_ARCHIVE()
std::map< const wxString, std::unique_ptr< LIB_SYMBOL > > NAME_TO_SYMBOL_MAP
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.
long long m_cacheTimestamp
void ensureLoadedLibrary(const wxString &aLibraryPath, const std::map< std::string, UTF8 > *aProperties)
void GetAvailableSymbolFields(std::vector< wxString > &aNames) override
Retrieves a list of (custom) field names that are present on symbols in this library.
const IO_BASE::IO_FILE_DESC GetSchematicFileDesc() const override
Returns schematic file description for the SCH_IO.
void SetReporter(REPORTER *aReporter) override
Set an optional reporter for warnings/errors.
const IO_BASE::IO_FILE_DESC GetLibraryDesc() const override
Get the descriptor for the library container that this IO plugin operates on.
void GetLibraryOptions(std::map< std::string, UTF8 > *aListToAppendTo) const override
Append supported SCH_IO options to aListToAppenTo along with internationalized descriptions.
bool CanReadLibrary(const wxString &aFileName) const override
Checks if this IO object can read the specified library file/directory.
NAME_TO_SYMBOL_MAP m_libCache
wxString m_cachefplibname
Base class that schematic file and library loading and saving plugins should derive from.
Sheet symbol placed in a schematic, and is the entry point for a sub schematic.
static REPORTER & GetInstance()
static const std::string CadstarPartsLibraryFileExtension
static const std::string CadstarSchematicFileExtension
Container that describes file type info.
Definition of file extensions used in Kicad.