20 #ifndef LIBREPCB_EAGLEIMPORT_EAGLELIBRARYIMPORT_H 21 #define LIBREPCB_EAGLEIMPORT_EAGLELIBRARYIMPORT_H 48 namespace eagleimport {
50 struct EagleLibraryConverterSettings;
67 std::shared_ptr<parseagle::Symbol>
symbol;
74 std::shared_ptr<parseagle::Package>
package;
91 std::shared_ptr<parseagle::Device>
device;
98 QObject* parent =
nullptr) noexcept;
102 std::shared_ptr<
MessageLogger> getLogger() const noexcept {
return mLogger; }
104 int getTotalElementsCount()
const noexcept;
105 int getCheckedElementsCount()
const noexcept;
106 int getCheckedSymbolsCount()
const noexcept;
107 int getCheckedPackagesCount()
const noexcept;
108 int getCheckedComponentsCount()
const noexcept;
109 int getCheckedDevicesCount()
const noexcept;
110 const QVector<Symbol>&
getSymbols() const noexcept {
return mSymbols; }
111 const QVector<Package>&
getPackages() const noexcept {
return mPackages; }
115 const QVector<Device>&
getDevices() const noexcept {
return mDevices; }
118 void setNamePrefix(
const QString& prefix) noexcept;
119 void setSymbolCategories(
const QSet<Uuid>& uuids) noexcept;
120 void setPackageCategories(
const QSet<Uuid>& uuids) noexcept;
121 void setComponentCategories(
const QSet<Uuid>& uuids) noexcept;
122 void setDeviceCategories(
const QSet<Uuid>& uuids) noexcept;
123 void setSymbolChecked(
const QString& name,
bool checked) noexcept;
124 void setPackageChecked(
const QString& name,
bool checked) noexcept;
125 void setComponentChecked(
const QString& name,
bool checked) noexcept;
126 void setDeviceChecked(
const QString& name,
bool checked) noexcept;
129 void reset() noexcept;
130 QStringList open(
const FilePath& lbr);
136 void symbolCheckStateChanged(
const QString& name, Qt::CheckState state);
137 void packageCheckStateChanged(
const QString& name, Qt::CheckState state);
138 void componentCheckStateChanged(
const QString& name, Qt::CheckState state);
139 void progressStatus(
const QString& status);
140 void progressPercent(
int percent);
144 template <
typename T>
145 int getCheckedElementsCount(
const QVector<T>& elements)
const noexcept;
146 template <
typename T>
147 void setElementChecked(QVector<T>& elements,
const QString& name,
148 bool checked) noexcept;
149 void updateDependencies() noexcept;
150 template <
typename T>
151 bool setElementDependent(T& element,
bool dependent) noexcept;
152 void run() noexcept
override;
156 QScopedPointer<EagleLibraryConverterSettings>
mSettings;
const QVector< Component > & getComponents() const noexcept
Definition: eaglelibraryimport.h:112
Definition: eaglelibraryimport.h:85
QVector< Symbol > mSymbols
Definition: eaglelibraryimport.h:164
std::shared_ptr< parseagle::DeviceSet > deviceSet
Definition: eaglelibraryimport.h:82
QString componentDisplayName
Definition: eaglelibraryimport.h:89
Qt::CheckState checkState
Definition: eaglelibraryimport.h:73
Definition: occmodel.cpp:77
Definition: eaglelibraryimport.h:63
QString description
Definition: eaglelibraryimport.h:87
QVector< Device > mDevices
Definition: eaglelibraryimport.h:167
QSet< QString > symbolDisplayNames
Definition: eaglelibraryimport.h:81
QString displayName
Definition: eaglelibraryimport.h:71
Qt::CheckState checkState
Definition: eaglelibraryimport.h:80
QString description
Definition: eaglelibraryimport.h:79
std::shared_ptr< parseagle::Device > device
Definition: eaglelibraryimport.h:91
std::shared_ptr< parseagle::Package > package
Definition: eaglelibraryimport.h:74
QScopedPointer< EagleLibraryConverterSettings > mSettings
Definition: eaglelibraryimport.h:156
QString displayName
Definition: eaglelibraryimport.h:64
Qt::CheckState checkState
Definition: eaglelibraryimport.h:88
FilePath mLoadedFilePath
Definition: eaglelibraryimport.h:161
QVector< Package > mPackages
Definition: eaglelibraryimport.h:165
bool mAbort
Definition: eaglelibraryimport.h:160
const QVector< Package > & getPackages() const noexcept
Definition: eaglelibraryimport.h:111
Generic logger class to pass messages between objects.
Definition: messagelogger.h:43
Definition: eaglelibraryimport.h:77
const FilePath & getLoadedFilePath() const noexcept
Definition: eaglelibraryimport.h:103
std::shared_ptr< parseagle::DeviceSet > deviceSet
Definition: eaglelibraryimport.h:92
std::shared_ptr< parseagle::Symbol > symbol
Definition: eaglelibraryimport.h:67
Definition: eaglelibraryimport.h:70
This class represents absolute, well-formatted paths to files or directories.
Definition: filepath.h:129
Qt::CheckState checkState
Definition: eaglelibraryimport.h:66
const QVector< Symbol > & getSymbols() const noexcept
Definition: eaglelibraryimport.h:110
QString packageDisplayName
Definition: eaglelibraryimport.h:90
QString displayName
Definition: eaglelibraryimport.h:86
Definition: eaglelibraryconverter.h:38
QString displayName
Definition: eaglelibraryimport.h:78
QString description
Definition: eaglelibraryimport.h:65
QString description
Definition: eaglelibraryimport.h:72
const FilePath mDestinationLibraryFp
Definition: eaglelibraryimport.h:155
EAGLE library (*.lbr) import.
Definition: eaglelibraryimport.h:59
QVector< Component > mComponents
Definition: eaglelibraryimport.h:166
std::shared_ptr< MessageLogger > mLogger
Definition: eaglelibraryimport.h:157
const QVector< Device > & getDevices() const noexcept
Definition: eaglelibraryimport.h:115