LibrePCB Developers Documentation
Zone Class Referencefinal

The Zone class. More...

#include <zone.h>

+ Collaboration diagram for Zone:

Public Types

enum class  Layer : quint32
 
enum class  Rule : quint32
 
enum class  Event
 
typedef Slot< Zone, EventOnEditedSlot
 

Public Member Functions

 Zone ()=delete
 
 Zone (const Zone &other) noexcept
 
 Zone (const Uuid &uuid, const Zone &other) noexcept
 
 Zone (const Uuid &uuid, Layers layers, Rules rules, const Path &outline) noexcept
 
 Zone (const SExpression &node)
 
 ~Zone () noexcept
 
const UuidgetUuid () const noexcept
 
Layers getLayers () const noexcept
 
Rules getRules () const noexcept
 
const PathgetOutline () const noexcept
 
bool setLayers (Layers layers) noexcept
 
bool setRules (Rules rules) noexcept
 
bool setOutline (const Path &outline) noexcept
 
void serialize (SExpression &root) const
 Serialize into librepcb::SExpression node. More...
 
bool operator== (const Zone &rhs) const noexcept
 
bool operator!= (const Zone &rhs) const noexcept
 
Zoneoperator= (const Zone &rhs) noexcept
 

Public Attributes

Signal< Zone, EventonEdited
 

Private Attributes

Uuid mUuid
 
Layers mLayers
 
Rules mRules
 
Path mOutline
 

Detailed Description

The Zone class.

Member Typedef Documentation

◆ OnEditedSlot

Member Enumeration Documentation

◆ Layer

enum class Layer : quint32
strong
Enumerator
Top 
Inner 
Bottom 

◆ Rule

enum class Rule : quint32
strong
Enumerator
NoCopper 

Except planes!

NoPlanes 
NoExposure 
NoDevices 
All 

◆ Event

enum class Event
strong
Enumerator
UuidChanged 
LayersChanged 
RulesChanged 
OutlineChanged 

Constructor & Destructor Documentation

◆ Zone() [1/5]

Zone ( )
delete

◆ Zone() [2/5]

Zone ( const Zone other)
noexcept

◆ Zone() [3/5]

Zone ( const Uuid uuid,
const Zone other 
)
noexcept

◆ Zone() [4/5]

Zone ( const Uuid uuid,
Layers  layers,
Rules  rules,
const Path outline 
)
noexcept

◆ Zone() [5/5]

Zone ( const SExpression node)
explicit
+ Here is the call graph for this function:

◆ ~Zone()

~Zone ( )
noexcept

Member Function Documentation

◆ getUuid()

const Uuid & getUuid ( ) const
inlinenoexcept

◆ getLayers()

Layers getLayers ( ) const
inlinenoexcept
+ Here is the caller graph for this function:

◆ getRules()

Rules getRules ( ) const
inlinenoexcept

◆ getOutline()

const Path & getOutline ( ) const
inlinenoexcept

◆ setLayers()

bool setLayers ( Layers  layers)
noexcept
+ Here is the caller graph for this function:

◆ setRules()

bool setRules ( Rules  rules)
noexcept
+ Here is the caller graph for this function:

◆ setOutline()

bool setOutline ( const Path outline)
noexcept
+ Here is the caller graph for this function:

◆ serialize()

void serialize ( SExpression root) const

Serialize into librepcb::SExpression node.

Parameters
rootRoot node to serialize into.
+ Here is the call graph for this function:

◆ operator==()

bool operator== ( const Zone rhs) const
noexcept

◆ operator!=()

bool operator!= ( const Zone rhs) const
inlinenoexcept

◆ operator=()

Zone & operator= ( const Zone rhs)
noexcept

Member Data Documentation

◆ onEdited

Signal<Zone, Event> onEdited

◆ mUuid

Uuid mUuid
private

◆ mLayers

Layers mLayers
private

◆ mRules

Rules mRules
private

◆ mOutline

Path mOutline
private

The documentation for this class was generated from the following files: