|
| WEMProcessor (std::string type="WEMProcessor", bool useInput=true, int numInImages=0, int numOutImages=0, std::string inWEMFieldName="inWEM") |
| Standard constructor.
|
|
| WEMGenerator (std::string type="WEMGenerator", int numInImages=0, int numOutImages=0, bool shouldGenerateApplyField=true) |
| Standard constructor.
|
|
| WEMModule (std::string type="WEMModule", int numInImages=0, int numOutImages=0) |
| Standard constructor.
|
|
std::string | getType () |
| Returns the type of the WEMGenerator.
|
|
MLMetaProfilePtr & | getMetaProfile () const |
| Returns the metaprofile for the base operator.
|
|
const char * | getTypeNameFast () const |
| Macro to declare methods for the ML runtime type system (see mlRuntimeSubClass.h).
|
|
| Module (int numInputImages, int numOutputImages) |
| Constructor: Initializes numInputImages input images and numOutputImages output images of the module.
|
|
| ~Module () override |
| Destructor: Destroys this module.
|
|
InputConnectorField * | getInputImageField (MLint i) const |
| Returns the field representing input image i . i must be a valid index.
|
|
OutputConnectorField * | getOutputImageField (MLint i=0) const |
| Returns the field representing output image i . i must be a valid index.
|
|
MLint | getNumInputImages () const |
| Returns the number of input images of this module.
|
|
MLint | getNumOutputImages () const |
| Returns the number of output images of this module.
|
|
PagedImage * | getOutputImage (MLint outputIndex=0) const |
| Returns the output image outputIndex . The index needs to be in the range [0, getNumOutputImages()-1].
|
|
InputConnectorField * | addInputImage (const char *name=nullptr) |
| Adds a new input image with name to the module.
|
|
OutputConnectorField * | addOutputImage (const char *name=nullptr) |
| Adds a new output image with name to the module.
|
|
PagedImage * | getInputImage (MLint inputIndex, bool getReal=false) const |
| Returns the output image of the module connected to input inputIndex .
|
|
PagedImage * | getUpdatedInputImage (MLint inputIndex, bool getReal=false) const |
| Convenience method for a safe access to the input image at index inputIndex .
|
|
MLErrorCode | processAllPages (int outputIndex=-1, SubImageBox region=SubImageBox(), MLRequestProgressCB *progressCallback=nullptr, void *progressCallbackUserData=nullptr) |
| Processes all pages of a module for easy implementation of page-based image processing of complete images.
|
|
MLErrorCode | processAllPages (ProcessAllPagesHandler &handler, SubImageBox region=SubImageBox(), MLRequestProgressCB *progressCallback=nullptr, void *progressCallbackUserData=nullptr) |
| Processes input images with a ProcessAllPagesHandler handler on a temporary output image (which allocates no data).
|
|
MLErrorCode | processMissingPages (int outputIndex=0, SubImageBox region=SubImageBox(), MLRequestProgressCB *progressCallback=nullptr, void *progressCallbackUserData=nullptr) |
| Processes all missing pages on the given output image.
|
|
void | clearOutputImage (MLint i=0) |
| Clears cached output image pages of output image i .
|
|
MLint | getOutputImageInplace (MLint outputIndex=0) const |
| Returns the optimization flag: returns the index of input image whose input tile is used also as output page for output outputIndex in calculateOutputSubImage() (instead of allocating its own memory).
|
|
MLint | getBypass (MLint outputIndex=0) const |
| Returns the currently bypass index or -1 if bypassing if disabled (default).
|
|
THREAD_SUPPORT | getThreadSupport () const |
| Returns the multithreading mode supported by this module, default is NO_THREAD_SUPPORT.
|
|
bool | areRecursiveHandleNotificationsPermitted () const |
| Returns whether recursive entries in handleNotification are permitted.
|
|
MLint | getHandleNotificationEntryCounter () const |
| A counter returning the current number of (recursive re-)entries in handleNotification.
|
|
PERMITTED_TYPES | getVoxelDataTypeSupport () const |
| Returns the current state of supported voxel datatypes.
|
|
bool | isSupportedVoxelDataType (MLDataType dt) const |
| Checks whether a given data type is supported on the module as configured with setVoxelDataTypeSupport.
|
|
virtual INPUT_HANDLE | handleInput (int, INPUT_STATE) const |
| This method may be reimplemented to enable support for invalid input images on the module.
|
|
INPUT_STATE | getInputState (MLint index) |
| Returns the current state of the input connection.
|
|
INPUT_STATE | getUpdatedInputState (MLint index) |
| Returns the updated state of the input image by calling updateImageProperties(index) and returning getInputState(index) afterwards.
|
|
bool | isInputImageField (Field *field) const |
| Returns whether the given field is an input image field.
|
|
void | touchOutputImageFields () const |
| Touches all output image fields to indicate that the images have changed.
|
|
virtual void | beginSaveFields () |
| Called before all fields data contents of this modules are saved.
|
|
virtual void | endSaveFields () |
| Called after saving all field contents of this module.
|
|
| FieldContainer () |
| Constructor.
|
|
| ~FieldContainer () override |
| Destructor: Deletes all added fields.
|
|
std::string | whoAmI (bool withInstanceName=true) const |
| Returns the type and the instance name of format 'ClassTypeName(instanceName)' if the instance name is not empty and withInstanceName is true .
|
|
Field * | addField (const char *name, const char *type, const char *value) |
| Adds a new field with name name , type type , and value value (encoded as string) to the container.
|
|
Field * | addField (Field *field) |
| Adds a field , the ownership of the field is passed to the FieldContainer.
|
|
BoolField * | addBool (const char *name) |
| Creates a BoolField with name and adds it to the container. Default value is false .
|
|
BoolField * | addBool (const char *name, bool value) |
| Creates a BoolField with name and adds it to the container.
|
|
IntField * | addInt (const char *name) |
| Creates an IntField with name and adds it to the container. Default value is 0.
|
|
IntField * | addInt (const char *name, MLint value) |
| Creates an IntField with name and adds it to the container.
|
|
EnumField * | addEnum (const char *name, const char *const *enumerationItemNames, MLint numEnumerationItems) |
| Creates an EnumField field with name and adds it to the container.
|
|
EnumField * | addEnum (const char *name, const std::vector< std::string > &enumerationItemNames) |
| Creates an EnumField field with name and adds it to the container.
|
|
template<typename EnumType > |
TypedEnumField< EnumType > * | addEnum (const char *name, const EnumValues< EnumType > &values, EnumType initialValue) |
| Creates a TypedEnumField field with name and adds it to the container.
|
|
FloatField * | addFloat (const char *name) |
| Creates a FloatField with name and adds it to the container. Default value is 0.f.
|
|
FloatField * | addFloat (const char *name, float value) |
| Creates a FloatField with name and adds it to the container.
|
|
ProgressField * | addProgress (const char *name) |
| Creates a float ProgressField with name and adds it to the container. Default value is 0.f.
|
|
ProgressField * | addProgress (const char *name, float value) |
| Creates a float ProgressField with name and adds it to the container.
|
|
DoubleField * | addDouble (const char *name) |
| Creates a DoubleField with name and adds it to the container. Default value is 0.
|
|
DoubleField * | addDouble (const char *name, double value) |
| Creates a DoubleField with name and adds it to the container.
|
|
StringField * | addString (const char *name) |
| Creates a StringField with name and adds it to the container. Default value is empty string.
|
|
StringField * | addString (const char *name, const std::string &value) |
| Creates a StringField with name and adds it to the container.
|
|
NotifyField * | addNotify (const char *name) |
| Creates a NotifyField field with name and adds it to the container.
|
|
TriggerField * | addTrigger (const char *name) |
| Creates a TriggerField field with name and adds it to the container.
|
|
BaseField * | addBase (const char *name) |
| Creates a Base field with name and adds it to the container. Default value is NULL.
|
|
BaseField * | addBase (const char *name, Base *value) |
| Creates a Base field with name and adds it to the container.
|
|
BaseField * | addBase (const char *name, const RefCountedBasePtr &value) |
| Creates a Base field with name and adds it to the container. Sets the value from intrusive pointer.
|
|
template<typename T > |
BaseField * | addBaseWithAllowedType (const char *name, T *value=nullptr) |
| As above, but also sets the allowed type of the field.
|
|
template<typename T > |
BaseField * | addBaseWithAllowedType (const char *name, const ::boost::intrusive_ptr< T > &value) |
| As above, but also sets the allowed type of the field.
|
|
template<typename T > |
TypedBaseField< T > * | addTypedBase (const char *name) |
| Creates a TypedBaseField with name and adds it to the container. Default value is NULL.
|
|
template<typename T > |
TypedBaseField< T > * | addTypedBase (const char *name, T *value) |
| Creates a TypedBaseField with name and adds it to the container.
|
|
template<typename T > |
TypedBaseField< T > * | addTypedBase (const char *name, const ::boost::intrusive_ptr< T > &value) |
| Creates a TypedBaseField with name and adds it to the container. Sets the value from intrusive pointer.
|
|
SoNodeField * | addSoNode (const char *name) |
| Creates a SoNodeField with name and adds it to the container. Default value is NULL.
|
|
SoNodeField * | addSoNode (const char *name, SoNode *value) |
| Creates a SoNodeField with name and adds it to the container.
|
|
PointerField * | addPointer (const char *name) |
| Creates a PointerField with name and adds it to the container.
|
|
Vector2Field * | addVector2 (const char *name) |
| Creates a Vector2Field with name and adds it to the container.
|
|
Vector2Field * | addVector2 (const char *name, const Vector2 &value) |
| Creates a Vector2Field with name and adds it to the container.
|
|
Vector2Field * | addVector2 (const char *name, double x, double y) |
| Creates a Vector2Field with name and adds it to the container.
|
|
Vector3Field * | addVector3 (const char *name) |
| Creates a Vector3Field with name and adds it to the container.
|
|
Vector3Field * | addVector3 (const char *name, const Vector3 &value) |
| Creates a Vector3Field with name and adds it to the container.
|
|
Vector3Field * | addVector3 (const char *name, double x, double y, double z) |
| Creates a Vector3Field with name and adds it to the container.
|
|
Vector4Field * | addVector4 (const char *name) |
| Creates a Vector4Field with name and adds it to the container.
|
|
Vector4Field * | addVector4 (const char *name, const Vector4 &value) |
| Creates a Vector4Field with name and adds it to the container.
|
|
Vector4Field * | addVector4 (const char *name, double x, double y, double z, double w) |
| Creates a Vector4Field with name and adds it to the container.
|
|
Vector5Field * | addVector5 (const char *name) |
| Creates a Vector5Field with name and adds it to the container.
|
|
Vector5Field * | addVector5 (const char *name, const Vector5 &value) |
| Creates a Vector5Field with name and adds it to the container.
|
|
Vector6Field * | addVector6 (const char *name) |
| Creates a Vector6Field with name and adds it to the container.
|
|
Vector6Field * | addVector6 (const char *name, const Vector6 &value) |
| Creates a Vector6Field with name and adds it to the container.
|
|
Vector10Field * | addVector10 (const char *name) |
| Creates a Vector10Field with name and adds it to the container.
|
|
Vector10Field * | addVector10 (const char *name, const Vector10 &value) |
| Creates a Vector10Field with name and adds it to the container.
|
|
ImageVectorField * | addImageVector (const char *name) |
| Creates a ImageVectorField with name and adds it to the container.
|
|
ImageVectorField * | addImageVector (const char *name, const ImageVector &value) |
| Creates a ImageVectorField with name and adds it to the container.
|
|
ImageVectorField * | addImageVector (const char *name, MLint x, MLint y, MLint z, MLint c, MLint t, MLint u) |
| Creates a ImageVectorField with name and adds it to the container.
|
|
SubImageBoxField * | addSubImageBox (const char *name) |
| Creates a SubImageBoxField with name and adds it to the container.
|
|
SubImageBoxField * | addSubImageBox (const char *name, const SubImageBox &value) |
| Creates a SubImageBoxField with name and adds it to the container.
|
|
SubImageBoxdField * | addSubImageBoxd (const char *name) |
| Creates a SubImageBoxd field with name and adds it to the container.
|
|
SubImageBoxdField * | addSubImageBoxd (const char *name, const SubImageBoxd &value) |
| Creates a SubImageBoxd field with name and adds it to the container.
|
|
ColorField * | addColor (const char *name) |
| Creates a ColorField with name and adds it to the container.
|
|
ColorField * | addColor (const char *name, float r, float g, float b) |
| Creates a ColorField with name and adds it to the container.
|
|
ColorField * | addColor (const char *name, const Vector3 &value) |
| Creates a ColorField with name and adds it to the container.
|
|
PlaneField * | addPlane (const char *name) |
| Creates a PlaneField with name and adds it to the container.
|
|
PlaneField * | addPlane (const char *name, double f0, double f1, double f2, double f3) |
| Creates a PlaneField with name and adds it to the container.
|
|
PlaneField * | addPlane (const char *name, const Plane &value) |
| Creates a PlaneField with name and adds it to the container.
|
|
RotationField * | addRotation (const char *name) |
| Creates a RotationField with name and adds it to the container.
|
|
RotationField * | addRotation (const char *name, const Rotation &value) |
| Creates a RotationField with name and adds it to the container.
|
|
Matrix2Field * | addMatrix2 (const char *name) |
| Creates a Matrix2Field with name and adds it to the container.
|
|
Matrix2Field * | addMatrix2 (const char *name, const Matrix2 &value) |
| Creates a Matrix2Field with name and adds it to the container.
|
|
Matrix3Field * | addMatrix3 (const char *name) |
| Creates a Matrix3Field with name and adds it to the container.
|
|
Matrix3Field * | addMatrix3 (const char *name, const Matrix3 &value) |
| Creates a Matrix3Field with name and adds it to the container.
|
|
Matrix4Field * | addMatrix4 (const char *name) |
| Creates a Matrix4Field with name and adds it to the container.
|
|
Matrix4Field * | addMatrix4 (const char *name, const Matrix4 &value) |
| Creates a Matrix4Field with name and adds it to the container.
|
|
Matrix5Field * | addMatrix5 (const char *name) |
| Creates a Matrix5Field with name and adds it to the container.
|
|
Matrix5Field * | addMatrix5 (const char *name, const Matrix5 &value) |
| Creates a Matrix5Field with name and adds it to the container.
|
|
Matrix6Field * | addMatrix6 (const char *name) |
| Creates a Matrix6Field with name and adds it to the container.
|
|
Matrix6Field * | addMatrix6 (const char *name, const Matrix6 &value) |
| Creates a Matrix6Field with name and adds it to the container.
|
|
MatrixField * | addMatrix (const char *name) |
| Creates a MatrixField with name and adds it to the container.
|
|
MatrixField * | addMatrix (const char *name, const Matrix4 &value) |
| Creates a MatrixField with name and adds it to the container.
|
|
MLDataTypeField * | addMLDataType (const char *name) |
| Creates a MTDataTypeField with name and adds it to the container.
|
|
MLDataTypeField * | addMLDataType (const char *name, MLDataType value) |
| Creates a MTDataTypeField with name and adds it to the container.
|
|
UniversalTypeField * | addUniversalType (const char *name) |
| Creates an UniversalTypeField field with name and adds it to the container.
|
|
IntListField * | addIntList (const char *name) |
| Creates an IntListField field with name and empty list value and adds it to the container.
|
|
IntListField * | addIntList (const char *name, const std::vector< MLint > &value) |
| Creates an IntListField field with name and given list value and adds it to the container.
|
|
DoubleListField * | addDoubleList (const char *name) |
| Creates an DoubleListField field with name and empty list value and adds it to the container.
|
|
DoubleListField * | addDoubleList (const char *name, const std::vector< double > &value) |
| Creates an DoubleListField field with name and given list value and adds it to the container.
|
|
Vector2ListField * | addVector2List (const char *name) |
| Creates an Vector2ListField field with name and empty list value and adds it to the container.
|
|
Vector2ListField * | addVector2List (const char *name, const std::vector< Vector2 > &value) |
| Creates an Vector2ListField field with name and given list value and adds it to the container.
|
|
Vector3ListField * | addVector3List (const char *name) |
| Creates an Vector3ListField field with name and empty list value and adds it to the container.
|
|
Vector3ListField * | addVector3List (const char *name, const std::vector< Vector3 > &value) |
| Creates an Vector3ListField field with name and given list value and adds it to the container.
|
|
Vector4ListField * | addVector4List (const char *name) |
| Creates an Vector4ListField field with name and empty list value and adds it to the container.
|
|
Vector4ListField * | addVector4List (const char *name, const std::vector< Vector4 > &value) |
| Creates an Vector4ListField field with name and given list value and adds it to the container.
|
|
size_t | getNumFields () const |
| Returns the number of added fields.
|
|
bool | hasField (const std::string &name) const |
| Returns true if the field with name name exists; otherwise, false is returned.
|
|
Field * | getField (const std::string &name) const |
| Returns the pointer to the field with name name .
|
|
Field * | getField (MLint index) const |
| Returns pointer of field at index if it exists. If not, -1 is returned.
|
|
MLint | getFieldIndex (Field *field) const |
| Returns index of field if it exists. If not, -1 is returned.
|
|
void | setFieldStringValue (const std::string &name, const std::string &value) |
| Sets the value of the field with name if it exists.
|
|
std::string | getFieldStringValue (const std::string &name) const |
| Returns the string value of the field with name if it is found.
|
|
virtual void | deactivateAttachments () |
| Disables notification handling, i.e., all fields of this module will not send notifications to attached sensors and fields anymore if their values are set or changed.
|
|
| Base () |
| Constructor.
|
|
virtual | ~Base () |
| Destructor.
|
|
virtual Base * | deepCopy () const |
| Creates a deep copy of the given object.
|
|
bool | isOfAllowedType (const std::vector< const RuntimeType * > &types) const |
| Checks whether this object's type is equal to or derived from one of the types given in the argument.
|
|
virtual bool | isRefCountedBase () const |
| Returns whether the instance is derived from RefCountedBase.
|
|
virtual std::string | detailString () const |
| Returns a string describing this object.
|
|
virtual bool | implementsPersistence (PersistenceInterface) const |
| Override this method to declare which persistence interfaces are implemented by your derived class.
|
|
virtual std::string | persistentState () const |
| Returns a string describing the object's internal state.
|
|
virtual void | setPersistentState (const std::string &state) |
| Restores the object's internal state from a string that had been previously generated using persistentState().
|
|
virtual void | addStateToTree (TreeNode *) const |
| Attaches the object state as children of the given parent node.
|
|
virtual void | readStateFromTree (TreeNode *) |
| Reads the object state from the children of the given parent node.
|
|
virtual void | writeTo (AbstractPersistenceOutputStream *) const |
| Writes the objects state to the data stream object.
|
|
virtual void | readFrom (AbstractPersistenceInputStream *, int) |
| Reads the objects state from the data stream object.
|
|
|
| ~WEMProcessor () override |
| Standard destructor.
|
|
WEMRequirements * | getRequirements () |
| Get requirements.
|
|
bool | areEdgesRequired () |
| Are edges required?
|
|
bool | isSinglePatchRequired () |
| Is a single patch 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 | requireSinglePatch (bool requireSinglePatchFlag=true) |
| Require single patch.
|
|
void | requirePatchType (PatchTypes patchType) |
| Require patch type.
|
|
void | requireOrientationType (OrientationTypes orientationType) |
| Require orientation type.
|
|
void | handleNotification (Field *field) override |
| Called when input changes.
|
|
void | activateAttachments () override |
| Initialize module after loading.
|
|
void | _process () override |
| Triggers the computation of the preprocessing.
|
|
virtual void | _addWEMPatch (WEMPatch *wemPatch, bool mergeAllPatches=false) |
| Adds a new WEMPatch to the output list and optionally applies the default attributes.
|
|
void | _notifyObservers () override |
| Notify observers with FINISHED | SELECTION | REPAINT message.
|
|
WEMPatch * | _makeCompatible (WEMPatch *wemPatch) |
| Make given WEMPatch compatible with module requirements.
|
|
void | _copyWEMPatch (WEMPatch *wemPatch) |
| Copy given WEM.
|
|
| ~WEMGenerator () override |
| Standard destructor.
|
|
virtual void | _finish (WEMPatch *wemPatch) |
| Finish generation of given WEMPatch.
|
|
void | _applyFields (WEMPatch *wemPatch) |
| Applies the default parameters to the given WEMPatch.
|
|
void | _applyMetaFields (WEMPatch *wemPatch) |
| Applies meta information parameters to the given WEMPatch.
|
|
void | _finishProcessing () override |
| Finishing processing: measuring time and optionally apply meta field values.
|
|
| ~WEMModule () override |
| Standard destructor.
|
|
void | _startProcessing () |
| Start processing timer.
|
|
void | handleNotificationInternal (Field *field, FieldSensor::Strength strength) override |
| Called from FieldContainer whenever a field changes.
|
|
virtual CalculateOutputImageHandler * | createCalculateOutputImageHandler (PagedImage *outputImage) |
| Creates the CalculateOutputImageHandler for the given output image outputImage .
|
|
virtual void | calculateOutputImageProperties (int outputIndex, PagedImage *outputImage) |
| Set properties of output image outputImage with output index outputIndex .
|
|
virtual SubImageBox | calculateInputSubImageBox (int, const SubImageBox &outputSubImageBox, int) |
| Called by the Host to determine which input image region (tile) of input inputIndex is required to calculate a certain output image region (page) of output outputIndex .
|
|
virtual void | calculateOutputSubImage (SubImage *outputSubImage, int outputIndex, SubImage *inputSubImages) |
| Calculates page outputSubImage of output image with index outputIndex given the input image tiles in array inputSubImages .
|
|
virtual void | provideCustomPage (int, const SubImageBox &, MLMemoryBlockHandle &) |
| This method allows a Module to provide its own pages to the Host for the outputIndex output image.
|
|
void | handleNotificationOff () |
| Decreases lock counter for handleNotification calls.
|
|
void | handleNotificationOn () |
| Increases lock counter for handleNotification calls.
|
|
bool | isHandleNotificationOn () |
| Returns true if handleNotification calls are permitted; otherwise, it returns false .
|
|
void | setOutputImageInplace (MLint outputIndex=0, MLint inputIndex=0) |
| Sets the optimization flag: if calculating a page in calculateOutputSubImage(), the output image page of output outputIndex shall use the same memory as the input page of input inputIndex .
|
|
void | unsetOutputImageInplace (MLint outputIndex=0) |
| Clears the optimization flag: output page of output at outputIndex and input tile shall use different memory buffers in calculateOutputSubImage().
|
|
void | setBypass (MLint outputIndex=0, MLint inputIndex=0) |
| Sets the input image whose pages can also be used instead of output pages for the output image at outputIndex to avoid recalculations.
|
|
void | setClampPagesToImageExtent (bool flag=true) |
| Enables/disables page clamping on all output images.
|
|
void | setThreadSupport (THREAD_SUPPORT supportMode) |
| Passes any THREAD_SUPPORT supportMode to decide whether and what type of multithreading is supported by this module.
|
|
void | permitRecursiveHandleNotifications (bool enable) |
| If this flag is set to enable =true, recursive entries in handleNotification are permitted.
|
|
void | setVoxelDataTypeSupport (PERMITTED_TYPES permTypes) |
| Specifies which types this module supports.
|
|