21#ifndef PCB_EASYEDAPRO_PLUGIN_H_
22#define PCB_EASYEDAPRO_PLUGIN_H_
24#include <nlohmann/json_fwd.hpp>
42 {
"elibz",
"epro",
"zip" } );
48 {
"elibz",
"efoo",
"epro",
"zip" } );
51 bool CanReadBoard(
const wxString& aFileName )
const override;
57 const std::map<std::string, UTF8>* aProperties =
nullptr )
override;
61 std::unique_ptr<FOOTPRINT>
FootprintLoad(
const wxString& aLibraryPath,
const wxString& aFootprintName,
62 bool aKeepUUID =
false,
63 const std::map<std::string, UTF8>* aProperties =
nullptr )
override;
71 void loadBoard(
const wxString& aFileName,
BOARD& aBoard,
bool aIsNewLoad,
72 const std::map<std::string, UTF8>* aProperties =
nullptr,
PROJECT* aProject =
nullptr )
override;
Information pertinent to a Pcbnew printed circuit board.
void LoadAllDataFromProject(const wxString &aLibraryPath, const nlohmann::json &aProject)
std::vector< FOOTPRINT * > GetImportedCachedLibraryFootprints() override
Return a container with the cached library footprints generated in the last call to Load.
bool CanReadBoard(const wxString &aFileName) const override
Checks if this PCB_IO can read the specified board file.
long long GetLibraryTimestamp(const wxString &aLibraryPath) const override
Generate a timestamp representing all the files in the library (including the library directory).
std::unique_ptr< FOOTPRINT > FootprintLoad(const wxString &aLibraryPath, const wxString &aFootprintName, bool aKeepUUID=false, const std::map< std::string, UTF8 > *aProperties=nullptr) override
Load a footprint having aFootprintName from the aLibraryPath containing a library format that this PC...
bool IsLibraryWritable(const wxString &aLibraryPath) override
Return true if the library at aLibraryPath is writable.
void loadBoard(const wxString &aFileName, BOARD &aBoard, bool aIsNewLoad, const std::map< std::string, UTF8 > *aProperties=nullptr, PROJECT *aProject=nullptr) override
Parse aFileName into aBoard.
const IO_BASE::IO_FILE_DESC GetBoardFileDesc() const override
Returns board file description for the PCB_IO.
void FootprintEnumerate(wxArrayString &aFootprintNames, const wxString &aLibraryPath, bool aBestEfforts, const std::map< std::string, UTF8 > *aProperties=nullptr) override
Return a list of footprint names contained within the library at aLibraryPath.
const IO_BASE::IO_FILE_DESC GetLibraryFileDesc() const override
Get the descriptor for the individual library elements that this IO plugin operates on.
const IO_BASE::IO_FILE_DESC GetLibraryDesc() const override
Get the descriptor for the library container that this IO plugin operates on.
PCB_IO(const wxString &aName)
Plugin class for import plugins that support choosing a project.
Container for project specific data.
Container that describes file type info.