20#ifndef LIBREPCB_CORE_ORGANIZATION_H
21#define LIBREPCB_CORE_ORGANIZATION_H
26#include "../../job/outputjob.h"
27#include "../librarybaseelement.h"
55 const ElementName& name_en_US,
const QString& description_en_US,
56 const QString& keywords_en_US);
73 const Uuid& uuid)
const noexcept;
78 const QString& type)
const noexcept;
95 const QVector<OrganizationPcbDesignRules>& rules)
noexcept;
108 virtual void save()
override;
114 static std::unique_ptr<Organization>
open(
115 std::unique_ptr<TransactionalDirectory> directory,
116 bool abortBeforeMigration =
false);
118 return QStringLiteral(
"org");
121 return QStringLiteral(
"organization");
131 Organization(std::unique_ptr<TransactionalDirectory> directory,
The LibraryBaseElement class.
Definition librarybaseelement.h:48
The Organization class represents a PCB manufacturer, assembly house etc.
Definition organization.h:47
void setUrl(const QUrl &url) noexcept
Definition organization.h:88
QUrl mUrl
Definition organization.h:136
const QStringList & getShipping() const noexcept
Definition organization.h:65
std::shared_ptr< const OutputJob > findPcbOutputJob(const QString &type) const noexcept
Definition organization.cpp:126
const QString & getCountry() const noexcept
Definition organization.h:63
void setUserOutputJobs(const OutputJobList &jobs) noexcept
Definition organization.h:102
const QStringList & getFabs() const noexcept
Definition organization.h:64
const QVector< OrganizationPcbDesignRules > & getPcbDesignRules() const noexcept
Definition organization.h:68
virtual RuleCheckMessageList runChecks() const override
Definition organization.cpp:152
const OutputJobList & getUserOutputJobs() const noexcept
Definition organization.h:82
const OutputJobList & getPcbOutputJobs() const noexcept
Definition organization.h:74
Organization & operator=(const Organization &rhs)=delete
int getPriority() const noexcept
Definition organization.h:67
const QByteArray & getLogoPng() const noexcept
Definition organization.h:60
QMap< QString, QList< SExpression > > mOptions
Definition organization.h:158
OutputJobList mUserOutputJobs
Definition organization.h:154
Organization(const Organization &other)=delete
void setPcbDesignRules(const QVector< OrganizationPcbDesignRules > &rules) noexcept
Definition organization.cpp:140
void setLogoPng(const QByteArray &png) noexcept
Definition organization.h:87
int mPriority
Priority to influence the sort order of organizations.
Definition organization.h:150
const OrganizationPcbDesignRules * findPcbDesignRules(const Uuid &uuid) const noexcept
Definition organization.cpp:116
OutputJobList mPcbOutputJobs
Definition organization.h:152
QString mCountry
Definition organization.h:137
void setIsSponsor(bool sponsor) noexcept
Definition organization.h:92
QVector< OrganizationPcbDesignRules > mPcbDesignRules
Definition organization.h:151
~Organization() noexcept
Definition organization.cpp:103
const OutputJobList & getAssemblyOutputJobs() const noexcept
Definition organization.h:79
void setPcbOutputJobs(const OutputJobList &jobs) noexcept
Definition organization.h:96
void setCountry(const QString &country) noexcept
Definition organization.h:89
virtual void save() override
Definition organization.cpp:157
void setShipping(const QStringList &list) noexcept
Definition organization.h:91
OutputJobList mAssemblyOutputJobs
Definition organization.h:153
QPixmap getLogoPixmap() const noexcept
Definition organization.cpp:110
static std::unique_ptr< Organization > open(std::unique_ptr< TransactionalDirectory > directory, bool abortBeforeMigration=false)
Definition organization.cpp:168
void setPriority(int priority) noexcept
Definition organization.h:93
static QString getLongElementName() noexcept
Definition organization.h:120
void pcbDesignRulesModified()
const QUrl & getUrl() const noexcept
Definition organization.h:62
QStringList mFabs
Definition organization.h:138
virtual void serialize(SExpression &root) const override
Serialize into librepcb::SExpression node.
Definition organization.cpp:201
void setFabs(const QStringList &list) noexcept
Definition organization.h:90
QStringList mShipping
Definition organization.h:139
QByteArray mLogoPng
Definition organization.h:135
bool mIsSponsor
Definition organization.h:140
static QString getShortElementName() noexcept
Definition organization.h:117
void setAssemblyOutputJobs(const OutputJobList &jobs) noexcept
Definition organization.h:99
bool isSponsor() const noexcept
Definition organization.h:66
The OrganizationPcbDesignRules class.
Definition organizationpcbdesignrules.h:43
The SExpression class.
Definition sexpression.h:69
The Uuid class is a replacement for QUuid to get UUID strings without {} braces.
Definition uuid.h:56
The Version class represents a version number in the format "1.42.7".
Definition version.h:58
Definition occmodel.cpp:77
QVector< std::shared_ptr< const RuleCheckMessage > > RuleCheckMessageList
Definition rulecheckmessage.h:104
type_safe::constrained_type< QString, ElementNameConstraint, ElementNameVerifier > ElementName
Definition elementname.h:84