![]() |
LibrePCB Developers Documentation
|
Plane fragments builder working on a librepcb::Board. More...
#include <boardplanefragmentsbuilder.h>
Inherits QObject.
Collaboration diagram for BoardPlaneFragmentsBuilder:Classes | |
| struct | JobData |
| struct | KeepoutZoneData |
| struct | LayerJobResult |
| struct | PadData |
| struct | PlaneData |
| struct | PolygonData |
| struct | Result |
| struct | TraceData |
| struct | ViaData |
Signals | |
| void | started () |
| void | finished (Result result) |
Public Member Functions | |
| BoardPlaneFragmentsBuilder (QObject *parent=nullptr) noexcept | |
| BoardPlaneFragmentsBuilder (const BoardPlaneFragmentsBuilder &other)=delete | |
| ~BoardPlaneFragmentsBuilder () noexcept | |
| QHash< Uuid, QVector< Path > > | runAndApply (Board &board, const QSet< const Layer * > *layers=nullptr) |
| Build and apply plane fragments (blocking) | |
| bool | start (Board &board, const QSet< const Layer * > *layers=nullptr) noexcept |
| Start building plane fragments asynchronously. | |
| Result | waitForFinished () const noexcept |
| Wait until the asynchronous operation is finished. | |
| bool | isBusy () const noexcept |
| Check if there is currently a build in progress. | |
| void | cancel () noexcept |
| Cancel the current asynchronous job. | |
| BoardPlaneFragmentsBuilder & | operator= (const BoardPlaneFragmentsBuilder &rhs)=delete |
Private Member Functions | |
| std::shared_ptr< JobData > | createJob (Board &board, const QSet< const Layer * > *filter) noexcept |
| Result | run (QPointer< Board > board, std::shared_ptr< JobData > data) noexcept |
| LayerJobResult | runLayer (std::shared_ptr< const JobData > data, const Layer *layer) noexcept |
Static Private Member Functions | |
| static QVector< std::pair< Point, Angle > > | determineThermalSpokes (const PadGeometry &geometry) noexcept |
| static PositiveLength | maxArcTolerance () noexcept |
Private Attributes | |
| QFuture< Result > | mFuture |
| bool | mAbort |
Plane fragments builder working on a librepcb::Board.
|
explicitnoexcept |
|
delete |
|
noexcept |
Here is the call graph for this function:| QHash< Uuid, QVector< Path > > runAndApply | ( | Board & | board, |
| const QSet< const Layer * > * | layers = nullptr |
||
| ) |
Build and apply plane fragments (blocking)
| board | The board to rebuild the planes of. |
| layers | If not nullptr, rebuild only planes which are scheduled to rebuild and located on the given layers (quick rebuild). If nullptr (default), rebuild all planes (more reliable, but slower). |
| Exception | if any error occurred. |
Here is the call graph for this function:
Here is the caller graph for this function:Start building plane fragments asynchronously.
The calculated fragments will automatically be applied to the board once the rebuild is finished.
| board | The board to rebuild the planes of. |
| layers | If not nullptr, rebuild only planes which are scheduled to rebuild and located on the given layers (quick rebuild). If nullptr (default), rebuild all planes (more reliable, but slower). |
| true | If the build started. |
| false | If none of the planes need a rebuild, thus did not start a rebuild. |
Here is the call graph for this function:
Here is the caller graph for this function:
|
noexcept |
Wait until the asynchronous operation is finished.
Here is the caller graph for this function:
|
noexcept |
Check if there is currently a build in progress.
| true | if a build is in progress. |
| false | if idle. |
|
noexcept |
Cancel the current asynchronous job.
Here is the caller graph for this function:
|
delete |
|
signal |
Here is the caller graph for this function:
|
signal |
Here is the caller graph for this function:
|
privatenoexcept |
Here is the call graph for this function:
Here is the caller graph for this function:
|
privatenoexcept |
Here is the call graph for this function:
Here is the caller graph for this function:
|
privatenoexcept |
Here is the call graph for this function:
Here is the caller graph for this function:
|
staticprivatenoexcept |
Here is the call graph for this function:
|
inlinestaticprivatenoexcept |
Returns the maximum allowed arc tolerance when flattening arcs. Do not change this if you don't know exactly what you're doing (it affects all planes in all existing boards)!
Here is the caller graph for this function:
|
private |
|
private |