open_iA  2019.12
A tool for the visual analysis and processing of volumetric datasets, with a focus on industrial computed tomography.
Classes | Macros | Typedefs
iAFilterRegistry.h File Reference
#include "open_iA_Core_export.h"
#include "iAGenericFactory.h"
#include <QSharedPointer>
#include <QVector>
Include dependency graph for iAFilterRegistry.h:
This graph shows which files directly or indirectly include this file:

Classes

class  iAFilterRegistry
 Registry for image filters. More...
 

Macros

#define REGISTER_FILTER(FilterType)   iAFilterRegistry::addFilterFactory(QSharedPointer<iAIFilterFactory>(new iAFilterFactory<FilterType>()));
 Macro to register a class derived from iAFilter in the iAFilterRegistry, with a default GUI runner. More...
 
#define REGISTER_FILTER_WITH_RUNNER(FilterType, FilterRunnerType)
 Macro to register a class derived from iAFilter in the iAFilterRegistry, along with a runner. More...
 

Typedefs

template<typename iAFilterDerived >
using iAFilterFactory = iASpecificFactory< iAFilterDerived, iAFilter >
 
template<typename FilterRunnerGUIType >
using iAFilterRunnerGUIFactory = iASpecificFactory< FilterRunnerGUIType, iAFilterRunnerGUI >
 
using iAIFilterFactory = iAGenericFactory< iAFilter >
 For internal use in iAFilterRegistry and iAFilterFactory only. More...
 
using iAIFilterRunnerGUIFactory = iAGenericFactory< iAFilterRunnerGUI >
 For internal use in iAFilterRegistry and iAFilterFactory only. More...
 

Macro Definition Documentation

◆ REGISTER_FILTER

#define REGISTER_FILTER (   FilterType)    iAFilterRegistry::addFilterFactory(QSharedPointer<iAIFilterFactory>(new iAFilterFactory<FilterType>()));

Macro to register a class derived from iAFilter in the iAFilterRegistry, with a default GUI runner.

See iAFilterRegistry for more details

◆ REGISTER_FILTER_WITH_RUNNER

#define REGISTER_FILTER_WITH_RUNNER (   FilterType,
  FilterRunnerType 
)
Value:
iAFilterRegistry::addFilterFactory(QSharedPointer<iAIFilterFactory>(new iAFilterFactory<FilterType>()), \
QSharedPointer<iAIFilterRunnerGUIFactory>(new iAFilterRunnerGUIFactory<FilterRunnerType>()));

Macro to register a class derived from iAFilter in the iAFilterRegistry, along with a runner.

In comparison to the macro above, you can provide your own runner class here (derived from iAFilterRunnerGUI to extend or modify the behavior of the filter when run from the GUI. See iAFilterRegistry for more details

Typedef Documentation

◆ iAFilterFactory

template<typename iAFilterDerived >
using iAFilterFactory = iASpecificFactory<iAFilterDerived, iAFilter>

◆ iAFilterRunnerGUIFactory

template<typename FilterRunnerGUIType >
using iAFilterRunnerGUIFactory = iASpecificFactory<FilterRunnerGUIType, iAFilterRunnerGUI>

◆ iAIFilterFactory

For internal use in iAFilterRegistry and iAFilterFactory only.

There should be no need to use this class directly; use REGISTER_FILTER or REGISTER_FILTER_WITH_RUNNER macros below instead!

◆ iAIFilterRunnerGUIFactory

For internal use in iAFilterRegistry and iAFilterFactory only.

There should be no need to use this class directly; use REGISTER_FILTER or REGISTER_FILTER_WITH_RUNNER macros below instead!

iAFilterRegistry::addFilterFactory
static void addFilterFactory(QSharedPointer< iAIFilterFactory > factory)
Adds a given filter factory to the registry, which will be run with the default GUI runner.
Definition: iAFilterRegistry.cpp:27
iASpecificFactory
Factory for a specific typed derived from BaseType.
Definition: iAGenericFactory.h:36