OrcaSlicer latest
OrcaSlicer
Loading...
Searching...
No Matches
Slic3r::PluginCapabilityInterface Class Referenceabstract

#include </home/runner/work/OrcaSlicer/OrcaSlicer/src/slic3r/plugin/PythonPluginInterface.hpp>

Inheritance diagram for Slic3r::PluginCapabilityInterface:
Collaboration diagram for Slic3r::PluginCapabilityInterface:

Classes

class  RefCounter

Public Member Functions

virtual ~PluginCapabilityInterface ()=default
virtual std::string get_name () const =0
virtual PluginCapabilityType get_type () const
virtual bool has_config_ui () const
virtual std::string get_config_ui () const
virtual nlohmann::json get_default_config () const
virtual void on_load ()
virtual void on_unload ()
virtual void on_cancelled ()
virtual void on_lifecycle_event (LifecycleEvent event, const LifecycleEventContext &ctx)
const std::string & name () const
PluginCapabilityType type () const
PluginCapabilityId identity () const
void set_resolved_identity (std::string name, PluginCapabilityType type)
bool is_enabled () const
void set_enabled (bool enabled)
bool config_ui_available () const
void set_config_ui_available (bool available)
void set_audit_plugin_key (std::string key)
const std::string & audit_plugin_key () const
void increment () const
void decrement () const
int ref_count () const

Private Attributes

std::string m_name
PluginCapabilityType m_type = PluginCapabilityType::Unknown
std::atomic< bool > m_enabled {true}
bool m_config_ui_available = false
std::string m_audit_plugin_key
std::atomic< int > m_refs {0}

Detailed Description

Constructor & Destructor Documentation

◆ ~PluginCapabilityInterface()

virtual Slic3r::PluginCapabilityInterface::~PluginCapabilityInterface ( )
virtualdefault

Member Function Documentation

◆ audit_plugin_key()

const std::string & Slic3r::PluginCapabilityInterface::audit_plugin_key ( ) const
inline
211{ return m_audit_plugin_key; }
std::string m_audit_plugin_key
Definition PythonPluginInterface.hpp:222

References m_audit_plugin_key.

Referenced by Slic3r::PyPrinterAgentPluginCapabilityTrampoline::log_failure().

Here is the caller graph for this function:

◆ config_ui_available()

bool Slic3r::PluginCapabilityInterface::config_ui_available ( ) const
inline
205{ return m_config_ui_available; }
bool m_config_ui_available
Definition PythonPluginInterface.hpp:221

References m_config_ui_available.

◆ decrement()

void Slic3r::PluginCapabilityInterface::decrement ( ) const
inline
214{ m_refs.fetch_sub(1, std::memory_order_acq_rel); }
std::atomic< int > m_refs
Definition PythonPluginInterface.hpp:224

References m_refs.

◆ get_config_ui()

virtual std::string Slic3r::PluginCapabilityInterface::get_config_ui ( ) const
inlinevirtual

◆ get_default_config()

virtual nlohmann::json Slic3r::PluginCapabilityInterface::get_default_config ( ) const
inlinevirtual

◆ get_name()

virtual std::string Slic3r::PluginCapabilityInterface::get_name ( ) const
pure virtual

◆ get_type()

virtual PluginCapabilityType Slic3r::PluginCapabilityInterface::get_type ( ) const
inlinevirtual

Reimplemented in Slic3r::PagesPluginCapability, Slic3r::PrinterAgentPluginCapability, Slic3r::PyPluginInterfaceTrampoline, Slic3r::ResourceTexturePluginCapability, Slic3r::ScriptPluginCapability, and Slic3r::SlicingPipelinePluginCapability.

156{ return PluginCapabilityType::Unknown; } // optional — typed bases override
@ Unknown
Definition PythonPluginInterface.hpp:17

References Slic3r::Unknown.

Referenced by Slic3r::bind_python_api().

Here is the caller graph for this function:

◆ has_config_ui()

virtual bool Slic3r::PluginCapabilityInterface::has_config_ui ( ) const
inlinevirtual

◆ identity()

PluginCapabilityId Slic3r::PluginCapabilityInterface::identity ( ) const
inline
189{ return {m_type, m_name, m_audit_plugin_key}; }
std::string m_name
Definition PythonPluginInterface.hpp:218
PluginCapabilityType m_type
Definition PythonPluginInterface.hpp:219

References m_audit_plugin_key, m_name, and m_type.

Referenced by Slic3r::anonymous_namespace{PluginConfig.cpp}::capability_identity().

Here is the caller graph for this function:

◆ increment()

void Slic3r::PluginCapabilityInterface::increment ( ) const
inline
213{ m_refs.fetch_add(1, std::memory_order_acq_rel); }

References m_refs.

◆ is_enabled()

bool Slic3r::PluginCapabilityInterface::is_enabled ( ) const
inline
199{ return m_enabled.load(std::memory_order_acquire); }
std::atomic< bool > m_enabled
Definition PythonPluginInterface.hpp:220

References m_enabled.

◆ name()

const std::string & Slic3r::PluginCapabilityInterface::name ( ) const
inline
187{ return m_name; }

References m_name.

Referenced by Slic3r::PrinterAgentPluginCapability::RegisterBindings(), and set_resolved_identity().

Here is the caller graph for this function:

◆ on_cancelled()

◆ on_lifecycle_event()

virtual void Slic3r::PluginCapabilityInterface::on_lifecycle_event ( LifecycleEvent event,
const LifecycleEventContext & ctx )
inlinevirtual

◆ on_load()

virtual void Slic3r::PluginCapabilityInterface::on_load ( )
inlinevirtual

◆ on_unload()

virtual void Slic3r::PluginCapabilityInterface::on_unload ( )
inlinevirtual

◆ ref_count()

int Slic3r::PluginCapabilityInterface::ref_count ( ) const
inline
215{ return m_refs.load(std::memory_order_acquire); }

References m_refs.

◆ set_audit_plugin_key()

void Slic3r::PluginCapabilityInterface::set_audit_plugin_key ( std::string key)
inline
210{ m_audit_plugin_key = std::move(key); }

References m_audit_plugin_key.

◆ set_config_ui_available()

void Slic3r::PluginCapabilityInterface::set_config_ui_available ( bool available)
inline
206{ m_config_ui_available = available; }

References m_config_ui_available.

◆ set_enabled()

void Slic3r::PluginCapabilityInterface::set_enabled ( bool enabled)
inline
200{ m_enabled.store(enabled, std::memory_order_release); }

References m_enabled.

◆ set_resolved_identity()

void Slic3r::PluginCapabilityInterface::set_resolved_identity ( std::string name,
PluginCapabilityType type )
inline
191 {
192 m_name = std::move(name);
193 m_type = type;
194 }
PluginCapabilityType type() const
Definition PythonPluginInterface.hpp:188
const std::string & name() const
Definition PythonPluginInterface.hpp:187

References m_name, m_type, name(), and type().

Here is the call graph for this function:

◆ type()

PluginCapabilityType Slic3r::PluginCapabilityInterface::type ( ) const
inline
188{ return m_type; }

References m_type.

Referenced by set_resolved_identity().

Here is the caller graph for this function:

Member Data Documentation

◆ m_audit_plugin_key

std::string Slic3r::PluginCapabilityInterface::m_audit_plugin_key
private

◆ m_config_ui_available

bool Slic3r::PluginCapabilityInterface::m_config_ui_available = false
private

◆ m_enabled

std::atomic<bool> Slic3r::PluginCapabilityInterface::m_enabled {true}
private
220{true};

Referenced by is_enabled(), and set_enabled().

◆ m_name

std::string Slic3r::PluginCapabilityInterface::m_name
private

◆ m_refs

std::atomic<int> Slic3r::PluginCapabilityInterface::m_refs {0}
mutableprivate
224{0};

Referenced by decrement(), increment(), and ref_count().

◆ m_type

PluginCapabilityType Slic3r::PluginCapabilityInterface::m_type = PluginCapabilityType::Unknown
private

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