20#ifndef LIBREPCB_CORE_PROJECTLOADER_H
21#define LIBREPCB_CORE_PROJECTLOADER_H
26#include "../serialization/fileformatmigration.h"
43class TransactionalDirectory;
64 QByteArray
toHtml(
bool isTemporary)
const noexcept;
78 std::unique_ptr<Project>
open(
79 std::unique_ptr<TransactionalDirectory> directory,
80 const QString& filename);
93 template <
typename ElementType>
The Board class represents a PCB of a project and is always part of a circuit.
Definition board.h:74
The Project class represents a whole (opened) project with all its content.
Definition project.h:71
The ProjectLibrary class.
Definition projectlibrary.h:52
Helper to load a librepcb::Project from the file system.
Definition projectloader.h:52
void loadSchematicUserSettings(Schematic &s)
Definition projectloader.cpp:778
void loadBoardDeviceInstance(Board &b, const SExpression &node)
Definition projectloader.cpp:892
std::unique_ptr< Project > open(std::unique_ptr< TransactionalDirectory > directory, const QString &filename)
Definition projectloader.cpp:204
void loadBoardUserSettings(Board &b)
Definition projectloader.cpp:1071
void loadSchematicBusSegment(Schematic &s, const SExpression &node)
Definition projectloader.cpp:627
void loadMetadata(Project &p)
Definition projectloader.cpp:319
void loadBoard(Project &p, const QString &relativeFilePath)
Definition projectloader.cpp:804
void loadSchematics(Project &p)
Definition projectloader.cpp:550
ProjectLoader & operator=(const ProjectLoader &rhs)=delete
void loadCircuit(Project &p)
Definition projectloader.cpp:424
bool mAutoAssignDeviceModels
Definition projectloader.h:114
void loadErc(Project &p)
Definition projectloader.cpp:534
void loadProjectUserSettings(Project &p)
Definition projectloader.cpp:1105
void loadLibraryElements(Project &p, const QString &dirname, const QString &type, void(ProjectLibrary::*addFunction)(ElementType &))
Definition projectloader.cpp:397
void loadOutputJobs(Project &p)
Definition projectloader.cpp:374
void loadBoardPlane(Board &b, const SExpression &node)
Definition projectloader.cpp:1037
std::optional< MigrationLog > mMigrationLog
Definition projectloader.h:115
void loadLibrary(Project &p)
Definition projectloader.cpp:383
void loadSchematicSymbol(Schematic &s, const SExpression &node)
Definition projectloader.cpp:605
void loadBoardNetSegment(Board &b, const SExpression &node)
Definition projectloader.cpp:929
void loadSettings(Project &p)
Definition projectloader.cpp:335
void setAutoAssignDeviceModels(bool v) noexcept
Definition projectloader.h:73
void loadBoards(Project &p)
Definition projectloader.cpp:793
const std::optional< MigrationLog > & getMigrationLog() const noexcept
Definition projectloader.h:81
void loadSchematic(Project &p, const QString &relativeFilePath)
Definition projectloader.cpp:562
void loadSchematicNetSegment(Schematic &s, const SExpression &node)
Definition projectloader.cpp:682
The SExpression class.
Definition sexpression.h:69
The Schematic class represents one schematic page of a project and is always part of a circuit.
Definition schematic.h:81
The Version class represents a version number in the format "1.42.7".
Definition version.h:58
Definition occmodel.cpp:77
Definition projectloader.h:57
QDateTime dateTime
Definition projectloader.h:59
Version toVersion
Definition projectloader.h:61
QString projectName
Definition projectloader.h:58
QByteArray toHtml(bool isTemporary) const noexcept
Definition projectloader.cpp:120
Version fromVersion
Definition projectloader.h:60
QList< FileFormatMigration::Message > messages
Sorted.
Definition projectloader.h:62