RemovePropertyEx

This call is named remove property instead of a at first sight more logical name delete property as all content depending on this property is not lost per se. Each properties having the removed property as a parent will now inherit ther parents of the removed property. All property values in the context of an instance will become property values of the parent property, or in case no parent property is defined the values are lost. The return value represents a bit set defining findings during the removal, if a clean removal with no side effects was possible the return value is 0. In all other cases the following bits represent the findings during removal:
  bit 0:
    0  Iunput as expected
    1  Encountered an issue on input value, i.e. property was not recognized as property
  bit 1:
    0  No 'child' properties found
    1  Properties found that had this property as a parent, they are adjusted by inheriting directly removed properties parents if present
  bit 2:
    0  No instances found with value restrictions for this property
    1  Vertex does contain 3D point info
  bit 3:
    0  No instances found with values for this property
    1  Vertex does contain 3D normal vector info => if set, bit 4 will also be set
  bit 6:
    0  Vertex does not contain first 2D texture info
    1  Vertex does contain first 2D texture info
  bit 7:
    0  Vertex does not contain second 2D texture info
    1  Vertex does contain second 2D texture info => if set, bit 6 will also be set
    0 The property is not defined yet
    1 The property is an Object Type Property
    2 The property is an Data Type Property of type Boolean
    3 The property is an Data Type Property of type Char
    4 The property is an Data Type Property of type Integer
    5 The property is an Data Type Property of type Double

This call has the same behavior as RemoveProperty, however needs to be used in case properties are exchanged as a successive series of integers.

Syntax

//   Visual Studio for Windows
public:
__int64 __declspec(dllexport) __stdcall RemovePropertyEx(
            __int64             model,
            __int64             rdfProperty
        );

//   Linux, OS-X and non-Visual Studio Windows solutions
public:
int64_t RemovePropertyEx(
            int64_t             model,
            int64_t             rdfProperty
        );    

Property model

Size: 64 bit / 8 byte (value)
The handle to the model. The model handle is static during its existance. Several models can be opened simultaniously within one session. Different models are always independent, threads are allowed to be running on different models simultaniously.

Property rdfProperty

Size: 64 bit / 8 byte (value)
This attribute represents a handle to the property, this can be either a datatype property (attribute), an object property (relation) or non-defined property. The handle will be static during the life-time of the model, when the model (or part of it) is saved and opened again, the handle will most probably be different.