LibrePCB Developers Documentation
boardfabricationoutputsettings.h
Go to the documentation of this file.
1/*
2 * LibrePCB - Professional EDA for everyone!
3 * Copyright (C) 2013 LibrePCB Developers, see AUTHORS.md for contributors.
4 * https://librepcb.org/
5 *
6 * This program is free software: you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License as published by
8 * the Free Software Foundation, either version 3 of the License, or
9 * (at your option) any later version.
10 *
11 * This program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
15 *
16 * You should have received a copy of the GNU General Public License
17 * along with this program. If not, see <http://www.gnu.org/licenses/>.
18 */
19
20#ifndef LIBREPCB_CORE_BOARDFABRICATIONOUTPUTSETTINGS_H
21#define LIBREPCB_CORE_BOARDFABRICATIONOUTPUTSETTINGS_H
22
23/*******************************************************************************
24 * Includes
25 ******************************************************************************/
26#include <QtCore>
27
28/*******************************************************************************
29 * Namespace / Forward Declarations
30 ******************************************************************************/
31namespace librepcb {
32
33class Layer;
34class SExpression;
35
36/*******************************************************************************
37 * Class BoardFabricationOutputSettings
38 ******************************************************************************/
39
44public:
45 // Constructors / Destructor
48 const BoardFabricationOutputSettings& other) noexcept;
49 explicit BoardFabricationOutputSettings(const SExpression& node);
51
52 // Getters
53 const QString& getOutputBasePath() const noexcept { return mOutputBasePath; }
54 const QString& getSuffixDrills() const noexcept { return mSuffixDrills; }
55 const QString& getSuffixDrillsNpth() const noexcept {
56 return mSuffixDrillsNpth;
57 }
58 const QString& getSuffixDrillsPth() const noexcept {
59 return mSuffixDrillsPth;
60 }
61 const QString& getSuffixDrillsBlindBuried() const noexcept {
63 }
64 const QString& getSuffixOutlines() const noexcept { return mSuffixOutlines; }
65 const QString& getSuffixCopperTop() const noexcept {
66 return mSuffixCopperTop;
67 }
68 const QString& getSuffixCopperInner() const noexcept {
69 return mSuffixCopperInner;
70 }
71 const QString& getSuffixCopperBot() const noexcept {
72 return mSuffixCopperBot;
73 }
74 const QString& getSuffixSolderMaskTop() const noexcept {
76 }
77 const QString& getSuffixSolderMaskBot() const noexcept {
79 }
80 const QString& getSuffixSilkscreenTop() const noexcept {
82 }
83 const QString& getSuffixSilkscreenBot() const noexcept {
85 }
86 const QString& getSuffixSolderPasteTop() const noexcept {
88 }
89 const QString& getSuffixSolderPasteBot() const noexcept {
91 }
92 bool getMergeDrillFiles() const noexcept { return mMergeDrillFiles; }
93 bool getUseG85SlotCommand() const noexcept { return mUseG85SlotCommand; }
94 bool getEnableSolderPasteTop() const noexcept {
96 }
97 bool getEnableSolderPasteBot() const noexcept {
99 }
100
101 // Setters
102 void setOutputBasePath(const QString& p) noexcept { mOutputBasePath = p; }
103 void setSuffixDrills(const QString& s) noexcept { mSuffixDrills = s; }
104 void setSuffixDrillsNpth(const QString& s) noexcept { mSuffixDrillsNpth = s; }
105 void setSuffixDrillsPth(const QString& s) noexcept { mSuffixDrillsPth = s; }
106 void setSuffixDrillsBlindBuried(const QString& s) noexcept {
108 }
109 void setSuffixOutlines(const QString& s) noexcept { mSuffixOutlines = s; }
110 void setSuffixCopperTop(const QString& s) noexcept { mSuffixCopperTop = s; }
111 void setSuffixCopperInner(const QString& s) noexcept {
113 }
114 void setSuffixCopperBot(const QString& s) noexcept { mSuffixCopperBot = s; }
115 void setSuffixSolderMaskTop(const QString& s) noexcept {
117 }
118 void setSuffixSolderMaskBot(const QString& s) noexcept {
120 }
121 void setSuffixSilkscreenTop(const QString& s) noexcept {
123 }
124 void setSuffixSilkscreenBot(const QString& s) noexcept {
126 }
127 void setSuffixSolderPasteTop(const QString& s) noexcept {
129 }
130 void setSuffixSolderPasteBot(const QString& s) noexcept {
132 }
133 void setMergeDrillFiles(bool m) noexcept { mMergeDrillFiles = m; }
134 void setUseG85SlotCommand(bool u) noexcept { mUseG85SlotCommand = u; }
135 void setEnableSolderPasteTop(bool e) noexcept { mEnableSolderPasteTop = e; }
136 void setEnableSolderPasteBot(bool e) noexcept { mEnableSolderPasteBot = e; }
137
138 // General Methods
139
145 void serialize(SExpression& root) const;
146
147 // Operator Overloadings
149 const BoardFabricationOutputSettings& rhs) noexcept;
150 bool operator==(const BoardFabricationOutputSettings& rhs) const noexcept;
151 bool operator!=(const BoardFabricationOutputSettings& rhs) const noexcept {
152 return !(*this == rhs);
153 }
154
155private: // Data
157 QString mSuffixDrills; // NPTH and PTH combined
160 QString mSuffixDrillsBlindBuried; // Vias (plated)
175};
176
177/*******************************************************************************
178 * End of File
179 ******************************************************************************/
180
181} // namespace librepcb
182
183#endif
The BoardFabricationOutputSettings class.
Definition: boardfabricationoutputsettings.h:43
void setEnableSolderPasteBot(bool e) noexcept
Definition: boardfabricationoutputsettings.h:136
const QString & getSuffixDrillsPth() const noexcept
Definition: boardfabricationoutputsettings.h:58
bool operator==(const BoardFabricationOutputSettings &rhs) const noexcept
Definition: boardfabricationoutputsettings.cpp:179
void setSuffixCopperInner(const QString &s) noexcept
Definition: boardfabricationoutputsettings.h:111
void setSuffixDrillsPth(const QString &s) noexcept
Definition: boardfabricationoutputsettings.h:105
bool mEnableSolderPasteBot
Definition: boardfabricationoutputsettings.h:174
QString mSuffixCopperBot
Definition: boardfabricationoutputsettings.h:164
void setSuffixSilkscreenTop(const QString &s) noexcept
Definition: boardfabricationoutputsettings.h:121
const QString & getSuffixDrills() const noexcept
Definition: boardfabricationoutputsettings.h:54
bool getUseG85SlotCommand() const noexcept
Definition: boardfabricationoutputsettings.h:93
bool getEnableSolderPasteBot() const noexcept
Definition: boardfabricationoutputsettings.h:97
QString mOutputBasePath
Definition: boardfabricationoutputsettings.h:156
BoardFabricationOutputSettings() noexcept
Definition: boardfabricationoutputsettings.cpp:39
void setUseG85SlotCommand(bool u) noexcept
Definition: boardfabricationoutputsettings.h:134
const QString & getSuffixSolderMaskBot() const noexcept
Definition: boardfabricationoutputsettings.h:77
void setSuffixSolderMaskBot(const QString &s) noexcept
Definition: boardfabricationoutputsettings.h:118
const QString & getSuffixDrillsNpth() const noexcept
Definition: boardfabricationoutputsettings.h:55
QString mSuffixSolderMaskBot
Definition: boardfabricationoutputsettings.h:166
QString mSuffixCopperTop
Definition: boardfabricationoutputsettings.h:162
void setSuffixSolderMaskTop(const QString &s) noexcept
Definition: boardfabricationoutputsettings.h:115
bool mEnableSolderPasteTop
Definition: boardfabricationoutputsettings.h:173
void setSuffixSilkscreenBot(const QString &s) noexcept
Definition: boardfabricationoutputsettings.h:124
void setSuffixDrillsNpth(const QString &s) noexcept
Definition: boardfabricationoutputsettings.h:104
BoardFabricationOutputSettings & operator=(const BoardFabricationOutputSettings &rhs) noexcept
Definition: boardfabricationoutputsettings.cpp:155
QString mSuffixDrills
Definition: boardfabricationoutputsettings.h:157
const QString & getSuffixSilkscreenTop() const noexcept
Definition: boardfabricationoutputsettings.h:80
void setSuffixDrills(const QString &s) noexcept
Definition: boardfabricationoutputsettings.h:103
void setEnableSolderPasteTop(bool e) noexcept
Definition: boardfabricationoutputsettings.h:135
void setSuffixOutlines(const QString &s) noexcept
Definition: boardfabricationoutputsettings.h:109
QString mSuffixSolderPasteBot
Definition: boardfabricationoutputsettings.h:170
QString mSuffixSilkscreenBot
Definition: boardfabricationoutputsettings.h:168
bool operator!=(const BoardFabricationOutputSettings &rhs) const noexcept
Definition: boardfabricationoutputsettings.h:151
QString mSuffixSilkscreenTop
Definition: boardfabricationoutputsettings.h:167
void setSuffixDrillsBlindBuried(const QString &s) noexcept
Definition: boardfabricationoutputsettings.h:106
void setMergeDrillFiles(bool m) noexcept
Definition: boardfabricationoutputsettings.h:133
const QString & getSuffixCopperInner() const noexcept
Definition: boardfabricationoutputsettings.h:68
const QString & getSuffixCopperTop() const noexcept
Definition: boardfabricationoutputsettings.h:65
void setSuffixCopperBot(const QString &s) noexcept
Definition: boardfabricationoutputsettings.h:114
QString mSuffixSolderPasteTop
Definition: boardfabricationoutputsettings.h:169
QString mSuffixDrillsNpth
Definition: boardfabricationoutputsettings.h:158
const QString & getSuffixSolderPasteTop() const noexcept
Definition: boardfabricationoutputsettings.h:86
QString mSuffixDrillsPth
Definition: boardfabricationoutputsettings.h:159
void setOutputBasePath(const QString &p) noexcept
Definition: boardfabricationoutputsettings.h:102
void serialize(SExpression &root) const
Serialize into librepcb::SExpression node.
Definition: boardfabricationoutputsettings.cpp:104
bool getMergeDrillFiles() const noexcept
Definition: boardfabricationoutputsettings.h:92
const QString & getSuffixDrillsBlindBuried() const noexcept
Definition: boardfabricationoutputsettings.h:61
const QString & getSuffixSolderMaskTop() const noexcept
Definition: boardfabricationoutputsettings.h:74
const QString & getOutputBasePath() const noexcept
Definition: boardfabricationoutputsettings.h:53
QString mSuffixOutlines
Definition: boardfabricationoutputsettings.h:161
QString mSuffixSolderMaskTop
Definition: boardfabricationoutputsettings.h:165
bool mUseG85SlotCommand
Definition: boardfabricationoutputsettings.h:172
const QString & getSuffixCopperBot() const noexcept
Definition: boardfabricationoutputsettings.h:71
void setSuffixSolderPasteBot(const QString &s) noexcept
Definition: boardfabricationoutputsettings.h:130
QString mSuffixCopperInner
Definition: boardfabricationoutputsettings.h:163
const QString & getSuffixSolderPasteBot() const noexcept
Definition: boardfabricationoutputsettings.h:89
QString mSuffixDrillsBlindBuried
Definition: boardfabricationoutputsettings.h:160
bool getEnableSolderPasteTop() const noexcept
Definition: boardfabricationoutputsettings.h:94
bool mMergeDrillFiles
Definition: boardfabricationoutputsettings.h:171
const QString & getSuffixOutlines() const noexcept
Definition: boardfabricationoutputsettings.h:64
void setSuffixSolderPasteTop(const QString &s) noexcept
Definition: boardfabricationoutputsettings.h:127
const QString & getSuffixSilkscreenBot() const noexcept
Definition: boardfabricationoutputsettings.h:83
void setSuffixCopperTop(const QString &s) noexcept
Definition: boardfabricationoutputsettings.h:110
~BoardFabricationOutputSettings() noexcept
Definition: boardfabricationoutputsettings.cpp:97
The SExpression class.
Definition: sexpression.h:69
Definition: occmodel.cpp:77