LibrePCB Developers Documentation
OutputJob Class Referenceabstract

Base class for all output job types. More...

#include <outputjob.h>

+ Inheritance diagram for OutputJob:
+ Collaboration diagram for OutputJob:

Classes

struct  ObjectSet
 

Public Types

enum class  Event
 
typedef Slot< OutputJob, EventOnEditedSlot
 

Public Member Functions

 OutputJob ()=delete
 
virtual ~OutputJob () noexcept
 
const QString & getType () const noexcept
 
virtual QString getTypeTr () const noexcept=0
 
virtual QIcon getTypeIcon () const noexcept=0
 
const UuidgetUuid () const noexcept
 
const ElementNamegetName () const noexcept
 
virtual QSet< UuidgetDependencies () const noexcept
 
void setUuid (const Uuid &uuid) noexcept
 
void setName (const ElementName &name) noexcept
 
virtual void removeDependency (const Uuid &jobUuid)
 
virtual std::shared_ptr< OutputJobcloneShared () const noexcept=0
 
virtual void serialize (SExpression &root) const
 Serialize into librepcb::SExpression node. More...
 
bool operator== (const OutputJob &rhs) const noexcept
 
bool operator!= (const OutputJob &rhs) const noexcept
 
OutputJoboperator= (const OutputJob &rhs)=delete
 

Public Attributes

Signal< OutputJob, EventonEdited
 

Protected Member Functions

 OutputJob (const OutputJob &other) noexcept
 
 OutputJob (const SExpression &node)
 
 OutputJob (const QString &type, const Uuid &uuid, const ElementName &name) noexcept
 
virtual void serializeDerived (SExpression &root) const =0
 
virtual bool equals (const OutputJob &rhs) const noexcept=0
 

Protected Attributes

const QString mType
 
Uuid mUuid
 
ElementName mName
 
QMap< QString, QList< SExpression > > mOptions
 

Detailed Description

Base class for all output job types.

Member Typedef Documentation

◆ OnEditedSlot

Member Enumeration Documentation

◆ Event

enum class Event
strong
Enumerator
UuidChanged 
NameChanged 
PropertyChanged 

Constructor & Destructor Documentation

◆ OutputJob() [1/4]

OutputJob ( )
delete

◆ ~OutputJob()

~OutputJob ( )
virtualnoexcept

◆ OutputJob() [2/4]

OutputJob ( const OutputJob other)
protectednoexcept

◆ OutputJob() [3/4]

OutputJob ( const SExpression node)
explicitprotected
+ Here is the call graph for this function:

◆ OutputJob() [4/4]

OutputJob ( const QString &  type,
const Uuid uuid,
const ElementName name 
)
protectednoexcept

Member Function Documentation

◆ getType()

const QString & getType ( ) const
inlinenoexcept
+ Here is the caller graph for this function:

◆ getTypeTr()

◆ getTypeIcon()

◆ getUuid()

const Uuid & getUuid ( ) const
inlinenoexcept
+ Here is the caller graph for this function:

◆ getName()

const ElementName & getName ( ) const
inlinenoexcept

◆ getDependencies()

virtual QSet< Uuid > getDependencies ( ) const
inlinevirtualnoexcept

Reimplemented in ArchiveOutputJob.

◆ setUuid()

void setUuid ( const Uuid uuid)
noexcept

◆ setName()

void setName ( const ElementName name)
noexcept

◆ removeDependency()

virtual void removeDependency ( const Uuid jobUuid)
inlinevirtual

Reimplemented in ArchiveOutputJob.

◆ cloneShared()

◆ serialize()

void serialize ( SExpression root) const
virtual

Serialize into librepcb::SExpression node.

Parameters
rootRoot node to serialize into.

Reimplemented in UnknownOutputJob.

+ Here is the call graph for this function:

◆ operator==()

bool operator== ( const OutputJob rhs) const
noexcept

◆ operator!=()

bool operator!= ( const OutputJob rhs) const
inlinenoexcept

◆ operator=()

OutputJob & operator= ( const OutputJob rhs)
delete

◆ serializeDerived()

virtual void serializeDerived ( SExpression root) const
protectedpure virtual

Implemented in ArchiveOutputJob, Board3DOutputJob, BomOutputJob, CopyOutputJob, GerberExcellonOutputJob, GerberX3OutputJob, GraphicsOutputJob, LppzOutputJob, NetlistOutputJob, PickPlaceOutputJob, ProjectJsonOutputJob, and UnknownOutputJob.

+ Here is the caller graph for this function:

◆ equals()

Member Data Documentation

◆ onEdited

Signal<OutputJob, Event> onEdited

◆ mType

const QString mType
protected

◆ mUuid

Uuid mUuid
protected

◆ mName

ElementName mName
protected

◆ mOptions

QMap<QString, QList<SExpression> > mOptions
protected

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