ARB
Public Member Functions | Protected Attributes | Friends | List of all members
ItemShader Class Referenceabstract

#include <item_shader.h>

Inheritance diagram for ItemShader:
Inheritance graph
[legend]
Collaboration diagram for ItemShader:
Collaboration graph
[legend]

Public Member Functions

 ItemShader (const std::string &id_, const std::string &description_, ReshadeCallback rcb, int undefined_gc_)
 
virtual ~ItemShader ()
 
virtual void register_plugin (ShaderPluginPtr plugin)=0
 
virtual bool activate_plugin (const std::string &id)=0
 
bool deactivate_plugin ()
 
virtual std::string active_plugin_name () const =0
 
bool is_active_plugin (const ShaderPlugin &plugin) const
 
virtual void init ()=0
 
virtual void popup_config_window (AW_root *awr)=0
 
virtual void check_dimension_change ()=0
 
const std::stringget_id () const
 
const std::stringget_description () const
 
bool active () const
 
bool overlay_marked () const
 
bool overlay_color_groups () const
 
ShadedValue shade (GBDATA *gb_item) const
 
int to_GC (const ShadedValue &val) const
 
void trigger_reshade_callback (ReshadeMode mode)
 

Protected Attributes

ShaderPluginPtr active_plugin
 
int first_range_gc
 
Phaser phaser
 

Friends

class DelayReshade
 

Detailed Description

Definition at line 258 of file item_shader.h.

Constructor & Destructor Documentation

ItemShader::ItemShader ( const std::string id_,
const std::string description_,
ReshadeCallback  rcb,
int  undefined_gc_ 
)
inline

Definition at line 292 of file item_shader.h.

virtual ItemShader::~ItemShader ( )
inlinevirtual

Definition at line 301 of file item_shader.h.

Member Function Documentation

virtual void ItemShader::register_plugin ( ShaderPluginPtr  plugin)
pure virtual

Implemented in FINAL_TYPE< SEQTYPE >.

Referenced by NT_TreeShader::NT_TreeShader().

virtual bool ItemShader::activate_plugin ( const std::string id)
pure virtual

Implemented in FINAL_TYPE< SEQTYPE >.

Referenced by deactivate_plugin().

bool ItemShader::deactivate_plugin ( )
inline

Definition at line 305 of file item_shader.h.

References activate_plugin(), and NO_PLUGIN_SELECTED.

virtual std::string ItemShader::active_plugin_name ( ) const
pure virtual

Implemented in FINAL_TYPE< SEQTYPE >.

Referenced by is_active_plugin().

bool ItemShader::is_active_plugin ( const ShaderPlugin plugin) const
inline
virtual void ItemShader::init ( )
pure virtual

Implemented in FINAL_TYPE< SEQTYPE >.

Referenced by NT_TreeShader::init().

virtual void ItemShader::popup_config_window ( AW_root awr)
pure virtual

Implemented in FINAL_TYPE< SEQTYPE >.

Referenced by NT_TreeShader::popup_config().

virtual void ItemShader::check_dimension_change ( )
pure virtual

Implemented in FINAL_TYPE< SEQTYPE >.

Referenced by trigger_reshade_callback().

const std::string& ItemShader::get_id ( ) const
inline

Definition at line 317 of file item_shader.h.

References id.

Referenced by ShaderPlugin::get_shader_local_id().

const std::string& ItemShader::get_description ( ) const
inline

Definition at line 318 of file item_shader.h.

bool ItemShader::active ( ) const
inline
bool ItemShader::overlay_marked ( ) const
inline

Definition at line 321 of file item_shader.h.

References active(), and ShaderPlugin::overlay_marked().

Referenced by NT_TreeShader::update_settings().

bool ItemShader::overlay_color_groups ( ) const
inline
ShadedValue ItemShader::shade ( GBDATA gb_item) const
inline
int ItemShader::to_GC ( const ShadedValue val) const
inline

Definition at line 328 of file item_shader.h.

References is_assert.

Referenced by NT_TreeShader::to_GC().

void ItemShader::trigger_reshade_callback ( ReshadeMode  mode)
inline

Friends And Related Function Documentation

friend class DelayReshade
friend

Definition at line 284 of file item_shader.h.

Member Data Documentation

ShaderPluginPtr ItemShader::active_plugin
protected

Definition at line 287 of file item_shader.h.

int ItemShader::first_range_gc
protected

Definition at line 288 of file item_shader.h.

Phaser ItemShader::phaser
protected

Definition at line 289 of file item_shader.h.


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