25#ifndef EASYEDAPRO_IMPORT_UTILS_H_
26#define EASYEDAPRO_IMPORT_UTILS_H_
31#include <nlohmann/json_fwd.hpp>
35#define EASY_IT_CONTINUE return false
36#define EASY_IT_BREAK return true
46 bool aPcbOnly =
false,
47 bool aSchOnly =
false );
52 const wxString& aFileName,
53 std::function<
bool(
const wxString&,
const wxString&, wxInputStream& )> aCallback );
55std::vector<nlohmann::json>
ParseJsonLines( wxInputStream& aInput,
const wxString& aSource );
A logical library item identifier and consists of various portions much like a URI.
LIB_ID ToKiCadLibID(const wxString &aLibName, const wxString &aLibReference)
void IterateZipFiles(const wxString &aFileName, std::function< bool(const wxString &, const wxString &, wxInputStream &)> aCallback)
std::vector< nlohmann::json > ParseJsonLines(wxInputStream &aInput, const wxString &aSource)
std::vector< IMPORT_PROJECT_DESC > ProjectToSelectorDialog(const nlohmann::json &aProject, bool aPcbOnly=false, bool aSchOnly=false)
nlohmann::json ReadProjectOrDeviceFile(const wxString &aZipFileName)
wxString ShortenLibName(wxString aProjectName)
Describes how non-KiCad boards and schematics should be imported as KiCad projects.