ml::WEMProcessor Class Reference

The WEMProcessor is the base class for all modules that process WEMs, be it automatically or interactive. More...

#include <WEMProcessor.h>

Inheritance diagram for ml::WEMProcessor:

ml::WEMGenerator ml::WEMModule ml::Module ml::FieldContainer ml::Base

List of all members.

Public Member Functions

 WEMProcessor (std::string type="WEMProcessor", bool useInput=true, int numInImages=0, int numOutImages=0)
 Standard constructor.

Protected Member Functions

virtual ~WEMProcessor ()
 Standard destructor.
WEMRequirementsgetRequirements ()
 Get requirements.
bool areEdgesRequired ()
 Are edges required?
bool isPatchTypeRequired (PatchTypes patchType)
 Is patch type required?
bool isOrientationTypeRequired (OrientationTypes orientationType)
 Is orientation type required?
void requireEdges (bool requireEdgesFlag=true)
 Require edges.
void requirePatchType (PatchTypes patchType)
 Require patch type.
void requireOrientationType (OrientationTypes orientationType)
 Require orientation type.
virtual void handleNotification (Field *field)
 Called when input changes.
virtual void activateAttachments ()
 Initialize module after loading.
virtual void _process ()
 Triggers the computation of the preprocessing.
virtual void _inWEMChanged ()
 Called when the inputWEM has changed.
virtual void _addWEMPatch (WEMPatch *wemPatch)
 Adds a new WEMPatch to the output list and optionally applies the default attributes.
WEMPatch_makeCompatible (WEMPatch *wemPatch)
 Make given WEMPatch compatible with module requirements.
void _copyWEMPatch (WEMPatch *wemPatch)
 Copy given WEM.

Static Protected Member Functions

static void _wemNotificationCB (void *userData, std::vector< WEMEventContainer > ecList)
 Callback method that gets triggered on notifications.

Protected Attributes

BoolField_copyInputWEMsFld
 Copy WEM?
ProgressField_progressFld
 Progress field.
EnumField_triangulationModeFld
 Triangulation mode (used to get compatible patch on requireTriangulation).
BoolField_modifyAttributesFld
 Modify attribute fields when using copy?
WEM_inWEM
 Pointer to inWEM.
bool _isInNotificationCB
 Is this module currently in the notification callback?
bool _isNotifyingMyself
 Is this module notifying itself?
bool _forceCompatible
 Make compatible during creation of _outWEM? If new patches are created, _copyInputWEMs is set to true.


Detailed Description

The WEMProcessor is the base class for all modules that process WEMs, be it automatically or interactive.

Basically it determines the type of the WEM and an id that can be used to associate WEMs with their processor. Modules with a WEM input and a WEM output derive from this module.

Definition at line 32 of file WEMProcessor.h.


Constructor & Destructor Documentation

ml::WEMProcessor::WEMProcessor ( std::string  type = "WEMProcessor",
bool  useInput = true,
int  numInImages = 0,
int  numOutImages = 0 
)

Standard constructor.

virtual ml::WEMProcessor::~WEMProcessor (  )  [protected, virtual]

Standard destructor.


Member Function Documentation

virtual void ml::WEMProcessor::_addWEMPatch ( WEMPatch wemPatch  )  [protected, virtual]

Adds a new WEMPatch to the output list and optionally applies the default attributes.

Reimplemented from ml::WEMGenerator.

void ml::WEMProcessor::_copyWEMPatch ( WEMPatch wemPatch  )  [protected]

Copy given WEM.

virtual void ml::WEMProcessor::_inWEMChanged (  )  [protected, virtual]

Called when the inputWEM has changed.

WEMPatch* ml::WEMProcessor::_makeCompatible ( WEMPatch wemPatch  )  [protected]

Make given WEMPatch compatible with module requirements.

virtual void ml::WEMProcessor::_process (  )  [protected, virtual]

Triggers the computation of the preprocessing.

Reimplemented from ml::WEMGenerator.

static void ml::WEMProcessor::_wemNotificationCB ( void *  userData,
std::vector< WEMEventContainer ecList 
) [static, protected]

Callback method that gets triggered on notifications.

virtual void ml::WEMProcessor::activateAttachments (  )  [protected, virtual]

Initialize module after loading.

Reimplemented from ml::WEMGenerator.

bool ml::WEMProcessor::areEdgesRequired (  )  [inline, protected]

Are edges required?

Definition at line 74 of file WEMProcessor.h.

WEMRequirements* ml::WEMProcessor::getRequirements (  )  [inline, protected]

Get requirements.

Definition at line 71 of file WEMProcessor.h.

virtual void ml::WEMProcessor::handleNotification ( Field field  )  [protected, virtual]

Called when input changes.

Reimplemented from ml::WEMGenerator.

bool ml::WEMProcessor::isOrientationTypeRequired ( OrientationTypes  orientationType  )  [inline, protected]

Is orientation type required?

Definition at line 78 of file WEMProcessor.h.

bool ml::WEMProcessor::isPatchTypeRequired ( PatchTypes  patchType  )  [inline, protected]

Is patch type required?

Definition at line 76 of file WEMProcessor.h.

void ml::WEMProcessor::requireEdges ( bool  requireEdgesFlag = true  )  [inline, protected]

Require edges.

Definition at line 81 of file WEMProcessor.h.

void ml::WEMProcessor::requireOrientationType ( OrientationTypes  orientationType  )  [inline, protected]

Require orientation type.

Definition at line 85 of file WEMProcessor.h.

void ml::WEMProcessor::requirePatchType ( PatchTypes  patchType  )  [inline, protected]

Require patch type.

Definition at line 83 of file WEMProcessor.h.


Member Data Documentation

Copy WEM?

Definition at line 49 of file WEMProcessor.h.

Make compatible during creation of _outWEM? If new patches are created, _copyInputWEMs is set to true.

Definition at line 89 of file WEMProcessor.h.

Pointer to inWEM.

Definition at line 63 of file WEMProcessor.h.

Is this module currently in the notification callback?

Definition at line 65 of file WEMProcessor.h.

Is this module notifying itself?

Definition at line 68 of file WEMProcessor.h.

Modify attribute fields when using copy?

Definition at line 57 of file WEMProcessor.h.

Progress field.

Definition at line 51 of file WEMProcessor.h.

Triangulation mode (used to get compatible patch on requireTriangulation).

Definition at line 54 of file WEMProcessor.h.


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

Generated on Sat Sep 3 18:39:41 2011 for MeVisLab Toolbox Reference by  doxygen 1.5.8