MeVisLab Toolbox Reference
ml::BaseList Class Reference

Base object class BaseList which stores a list of BaseContainerItem entries. More...

#include <mlBaseList.h>

Inheritance diagram for ml::BaseList:
ml::BaseListTemplate< BaseContainerItem > ml::ListTemplate< T > ml::ListBase ml::Base

Public Member Functions

 BaseList ()
 Constructor, enables persistence.
 
 BaseList (const BaseList &other)
 
BaseListdeepCopy () const override
 Create a deep copy of the list.
 
- Public Member Functions inherited from ml::BaseListTemplate< BaseContainerItem >
BaseListTemplate< BaseContainerItem > & operator= (const BaseListTemplate &other)=default
 explicitly create default assignment operator
 
BaseItemgetItemAt (MLssize_t index) override
 This virtual function is reimplemented from ListBase, where it returns 0 in any case (also in ListTemplate<T>, because the items are not necessarily BaseItems there).
 
const BaseItemgetConstItemAt (MLssize_t index) const override
 Same as getItemAt(MLssize_t index) for constant access.
 
void insertItemAt (MLssize_t index, const BaseItem *item) override
 This virtual function is reimplemented from ListBase, where it does nothing at all.
 
void modifyItemAt (MLssize_t index, const BaseItem *item) override
 This virtual function is reimplemented from ListBase, where it does nothing at all.
 
void deleteItemAt (MLssize_t index) override
 This virtual function is reimplemented from ListBase, where it does nothing at all.
 
void selectItemAt (MLssize_t index) override
 This virtual function is reimplemented from ListBase, where it does nothing at all.
 
const RuntimeTypegetItemTypeId () const override
 This virtual function is reimplemented from ListBase, where it returns 0 in any case (also in ListTemplate<T>, because the items are not necessarily BaseItems there).
 
void clearList () override
 Clear complete list.
 
 BaseListTemplate ()
 Standard constructor, disables persistence.
 
 BaseListTemplate (bool persistance)
 Special constructor to explicitly enable/disable persistence.
 
 BaseListTemplate (const BaseListTemplate &other)
 
virtual MLssize_t newId ()
 Get new unused id.
 
virtual void usedId (MLssize_t id)
 Notify list that id is used.
 
virtual void resetId ()
 Reset next id.
 
virtual void doDeleteItem (MLssize_t index)
 Delete single item at position index and set the corresponding ActDelete action.
 
virtual void doInsertItem (MLssize_t index, const BaseContainerItem &item)
 Insert item at position index, assign a new id value to the inserted item and set the corresponding ActInsert action.
 
virtual void doModifyItem (MLssize_t index, const BaseContainerItem &item)
 Store item at position index and set the corresponding ActModify action.
 
virtual void doSelectItem (MLssize_t index)
 Select item at position index, or deselect if item == -1, and set the corresponding ActSelect action.
 
virtual void appendItem (const BaseContainerItem &item)
 Appends an item to the list.
 
void addStateToTree (TreeNode *parent) const override
 Attaches the object state as children of the given parent node.
 
 ML_SET_ADDSTATE_VERSION (1)
 Set addState version number.
 
void readStateFromTree (TreeNode *parent) override
 Reads the object state from the children of the given parent node.
 
- Public Member Functions inherited from ml::ListTemplate< T >
 ListTemplate ()
 Standard constructor, disables persistence.
 
 ListTemplate (bool persistance)
 Special constructor to explicitly enable/disable persistence.
 
 ListTemplate (const ListTemplate &other)
 
size_t getSize () const override
 Get number of list elements.
 
void clearList () override
 Clear complete list.
 
ListTemplate< T > & operator= (const ListTemplate< T > &list)
 Assignment operator.
 
ListTemplate< T > * clone () const override
 Create a copy of (*this) using the ML runtime system and the '='-operator.
 
ListTemplate< T > * deepCopy () const override
 Create a deep copy of the list.
 
std::string persistentState () const override
 Returns a string describing the object's internal state.
 
void setPersistentState (const std::string &state) override
 Initialize the list object from the string state.
 
void addStateToTree (TreeNode *parent) const override
 Attaches the state as children of the given parent node.
 
 ML_SET_ADDSTATE_VERSION (2)
 Set addState version number, version 2 indicates data saved by a 64 bit version.
 
void readStateFromTree (TreeNode *parent) override
 Reads the object state from the children of the given parent node.
 
- Public Member Functions inherited from ml::ListBase
 ListBase (bool persistance)
 Constructor. Derived class should indicate whether persistence is implemented.
 
 ListBase (const ListBase &other)
 
virtual void setAction (ActionClass actionClass, MLssize_t id, MLssize_t index)
 Set actionClass, affected item id and index.
 
virtual void setAction (ActionClass actionClass)
 Set actionClass for actions affecting the whole list.
 
virtual void getAction (ActionClass &actionClass, MLssize_t &id, MLssize_t &index) const
 Get actionClass, affected item id and index.
 
virtual ActionClass getActionClass () const
 Get actionClass of last action.
 
virtual MLssize_t getActionId () const
 Get id of item affected by last action.
 
virtual MLssize_t getActionIndex () const
 Get index of item affected by last action.
 
virtual MLssize_t getCurrentIndex () const
 Get index of currently selected item, or -1 if no item selected.
 
virtual bool isModified () const
 Tests, if the last action has been an action that has modified the content of the list.
 
virtual bool hasPersistance () const
 Test if persistence is available and enabled.
 
virtual void setPersistance (bool persistance)
 Enable/disable persistence functionality.
 
 ML_SET_ADDSTATE_VERSION (0)
 Set addState version number.
 
- Public Member Functions inherited from ml::Base
 Base ()
 Constructor.
 
virtual ~Base ()
 Destructor.
 
bool isOfAllowedType (const std::vector< const RuntimeType * > &types) const
 Check if this object's type is equal to or derived from one of the types given in the argument.
 
virtual bool isRefCountedBase () const
 Returns if the instance is derived from RefCountedBase.
 
virtual std::string detailString () const
 Return 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 void writeTo (AbstractPersistenceOutputStream *) const
 Write the objects state to the data stream object.
 
virtual void readFrom (AbstractPersistenceInputStream *, int)
 Read the objects state from the data stream object.
 

Additional Inherited Members

- Public Types inherited from ml::ListTemplate< T >
typedef T itemType
 Declare type name for item type (this allows declarations like: ObjectList::itemType obj)
 
- Public Types inherited from ml::ListBase
enum  ActionClass {
  ActNone = 0 , ActUnknown , ActNew , ActSelect ,
  ActModify , ActDelete , ActInsert , ActInsertOvw ,
  ActNumActions
}
 Constants to describe the type of action most recently performed. More...
 
- Public Types inherited from ml::Base
enum  PersistenceInterface { PersistenceByString , PersistenceByTreeNode , PersistenceByStream }
 This enum describes the different persistence interfaces available. More...
 
- Static Public Attributes inherited from ml::ListBase
static const char *const ActionClassNames [ActNumActions]
 Action class name constants.
 
- Protected Member Functions inherited from ml::BaseListTemplate< BaseContainerItem >
std::string itemState (typename ListTemplate< BaseContainerItem >::const_iterator it) const override
 Return a string representation of the item object.
 
void setItemState (typename ListTemplate< BaseContainerItem >::iterator it, const std::string &state) override
 Initialize the item object from the string state.
 
- Protected Member Functions inherited from ml::ListTemplate< T >
virtual std::string itemState (typename ListTemplate< T >::const_iterator it) const
 Return a string representation of the item object.
 
virtual void setItemState (typename ListTemplate< T >::iterator, const std::string &)
 Initialize the item object from the string state.
 
- Protected Member Functions inherited from ml::ListBase
charnewString (const std::string &str) const
 Convenience method to create a copy of the string str allocated on the heap.
 
void deleteString (char *str) const
 Dispose a string allocated with newString()
 
ListBaseoperator= (const ListBase &list)
 Assignment operator, used in derived list classes.
 

Detailed Description

Base object class BaseList which stores a list of BaseContainerItem entries.

Definition at line 184 of file mlBaseList.h.

Constructor & Destructor Documentation

◆ BaseList() [1/2]

ml::BaseList::BaseList ( )
inline

Constructor, enables persistence.

Definition at line 190 of file mlBaseList.h.

◆ BaseList() [2/2]

ml::BaseList::BaseList ( const BaseList & other)
inline

Definition at line 192 of file mlBaseList.h.

Member Function Documentation

◆ deepCopy()

BaseList * ml::BaseList::deepCopy ( ) const
overridevirtual

Create a deep copy of the list.

Reimplemented from ml::Base.


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