13#ifndef ML_MERGE_LISTS_H
14#define ML_MERGE_LISTS_H
42 AutoUpdateModeDoNothing = 0,
110 std::vector<ListBase::ActionClass> _listActionClassList[2];
113 std::vector<MLssize_t> _listActionIdList[2];
116 std::vector<MLssize_t> _listActionIndexList[2];
120 std::vector<MLssize_t> _inputItemIdList[2];
123 static const char* AutoUpdateModeNames[];
Field to encapsulate a pointer to an ML base object.
Field to encapsulate a boolean value.
Base class for all ML Engines which are derived from Module, which have no inputs or outputs and whic...
Field to encapsulate an enumerated value.
Base class for all fields used in the ML.
Engine module MergeLists merging two BaseListTemplate-derived objects.
void _updateActionLists(int touchedList)
Invoked by handleNotification(), assumes valid input lists! Determines whether a completely new outpu...
~MergeLists() override
Destructor.
NotifyField * _fldClear
Deletes the output object.
void activateAttachments() override
Update fields after an initialization without handleNotification() called.
EnumField * _fldAutoUpdateMode
Determines auto-update mode.
@ AutoUpdateModeAutoClear
@ AutoUpdateModeAutoUpdate
void handleNotification(Field *field) override
Called when any field data in the field container of this module is modified.
void _modifyOutputList()
relays stored events to the output list, assumes valid input lists!
void _deleteOutputList()
deletes the current output list
BoolField * _fldNotifyForEachEvent
Notify output list on each input list event (only for AutoApply and AlwaysRebuild OFF)
NotifyField * _fldUpdate
Rebuild output list.
bool _registerIdMapping(MLssize_t whichInList, MLssize_t inListId, MLssize_t outListId)
registers the mapping of the item with id inListId of list whichInList to the item in the output list...
BaseField * _fldOutputList
Output list field, initialized by derived class.
void _clearActionLists()
clear all action lists
void _rebuildOutputListFromScratch()
rebuilds from scratch, assumes valid input lists!
BoolField * _fldAlwaysRebuild
Always rebuild output list from scratch (instead of modifying it)
bool _needsCompleteRebuild
flag indicating whether a new output list is needed
Field without value for notifications.
#define ML_MODULE_CLASS_HEADER(className)
Like ML_CLASS_HEADER for the usage of derived classes from Module.
#define MLBASEEXPORT
defined Header file mlBaseInit.h
Target mlrange_cast(Source arg)
Generic version of checked ML casts.
SSIZE_T MLssize_t
The signed ML size type which is a signed 32 bit size_t on 32 bit platforms and 64 bit one on 64 bit ...