|
KiCad PCB EDA Suite
|
Loading designs, library items and projects. More...
#include <map>#include <memory>#include <optional>#include <vector>#include <wx/string.h>#include <io/easypc/easypc_archive.h>#include <io/easypc/easypc_classes_project.h>#include <io/easypc/easypc_file.h>Go to the source code of this file.
Classes | |
| struct | EASYPC::DESIGN_DOCUMENT |
| struct | EASYPC::LIBRARY_STREAM |
| struct | EASYPC::LIBRARY_ITEM |
| One stream, or for a component library every stream of the component's storage. More... | |
| struct | EASYPC::PROJECT_DOCUMENT |
| struct | EASYPC::FILE_INFO |
| class | EASYPC::LIBRARY_FILE |
| A library parsed once; items are then served by name without reading the file again. More... | |
Namespaces | |
| namespace | EASYPC |
Functions | |
| std::unique_ptr< DESIGN_DOCUMENT > | EASYPC::LoadDesign (const wxString &aPath) |
| std::unique_ptr< PROJECT_DOCUMENT > | EASYPC::LoadProject (const wxString &aPath) |
| wxString | EASYPC::ResolveProjectItem (const wxString &aProjectPath, const wxString &aItemName) |
| The file a project item names, as Easy-PC opens it: the Windows path relative to the project's directory, the file name matched without regard to case. | |
| FILE_INFO | EASYPC::Probe (const wxString &aPath) |
| Identify a file; projects are parsed fully, while designs and libraries are only inspected. Never throws. | |
Loading designs, library items and projects.
A design (.pcb .sch) is one archive, the Contents stream, read to its exact end. A symbol library (.psl .ssl) holds one archive per item stream and a component library (.cml) one storage per component with a "[ScmComponent]" stream and one stream per package. Each library stream is one ReadObject, after which the program ignores the rest, since items rewritten in place leave stale bytes. A project (.prj) is a bare archive.
Definition in file easypc_document.h.