| <large>libXpertMassCore and libXpertMassGui Developer Documentation</large>

- libXpertMassCore
- NoDeletePointerProp

# MsXpS::libXpertMassCore::NoDeletePointerProp Class

class MsXpS::libXpertMassCore::NoDeletePointerProp

The NoDeletePointerProp class provides a pointer property. More...

Header: | `#include <NoDeletePointerProp>`
Inherits: | MsXpS::libXpertMassCore::Prop

- List of all members, including inherited members
- NoDeletePointerProp is part of The property system.

## Public Functions

| NoDeletePointerProp(const QString &name = QString(), void *no_delete_data_p = 0)
| NoDeletePointerProp(const MsXpS::libXpertMassCore::NoDeletePointerProp &other)
virtual | ~NoDeletePointerProp()
virtual MsXpS::libXpertMassCore::NoDeletePointerProp & | operator=(const MsXpS::libXpertMassCore::NoDeletePointerProp &other)

## Reimplemented Public Functions

virtual MsXpS::libXpertMassCore::NoDeletePointerProp * | cloneOut() const override
virtual void | deleteData() override
virtual QString | formatXmlElement(int offset, const QString &indent = Utils::xmlIndentationToken) override
virtual bool | renderXmlElement(const QDomElement &element, int version = 1) override

## Detailed Description

A NoDeletePointerProp property is a simple property in which the data is a pointer to an allocated instance, but which may never be destroyed by the property itself. This property is regarded as a simple "message-containing property". The message is nothing but the name of the property.

## Member Function Documentation

### NoDeletePointerProp::NoDeletePointerProp(const QString &name = QString(), void *no_delete_data_p = 0)

Constructs a NoDeletePointerProp instance.

- name: The name of the property.
- no_delete_data_p: The data of the property.

The member data pointer (mpa_data) is assigned no_delete_data_p and is not going to be deleted upon destruction of this NoDeletePointerProp instance.

### NoDeletePointerProp::NoDeletePointerProp(const MsXpS::libXpertMassCore::NoDeletePointerProp &other)

Constructs a NoDeletePointerProp instance as a copy of other.

### `[virtual noexcept]` NoDeletePointerProp::~NoDeletePointerProp()

Destructs this NoDeletePointerProp instance.

Deletion of the data is delegated to deleteData(), that won't delete the data.

### `[override virtual]` MsXpS::libXpertMassCore::NoDeletePointerProp *NoDeletePointerProp::cloneOut() const

Duplicates this NoDeletePointerProp instance and returns a pointer to it.

### `[override virtual]` void NoDeletePointerProp::deleteData()

Reimplements: Prop::deleteData().

Does not delete the member data.

### `[override virtual]` QString NoDeletePointerProp::formatXmlElement(int offset, const QString &indent = Utils::xmlIndentationToken)

Reimplements: Prop::formatXmlElement(int offset, const QString &indent).

This function is a no-op.

The offset and the indent parameters are not used. The NoDeletePointerProp class is not used to store or read data to or from files.

### `[override virtual]` bool NoDeletePointerProp::renderXmlElement(const QDomElement &element, int version = 1)

Reimplements: Prop::renderXmlElement(const QDomElement &element, int version).

This function is a no-op.

The element and the version parameters are not used. The NoDeletePointerProp class is not used to store or read data to or from files.

Returns false if the element tag name is not "prop", true otherwise.

### `[virtual]` MsXpS::libXpertMassCore::NoDeletePointerProp &NoDeletePointerProp::operator=(const MsXpS::libXpertMassCore::NoDeletePointerProp &other)

Assigns other to this NoDeletePointerProp instance.

Returns a reference to this NoDeletePointerProp instance.