MeshLib C# Docs
Loading...
Searching...
No Matches
MR.Const_ObjectChildrenHolder Class Reference

the main purpose of this class is to avoid copy and move constructor and assignment operator implementation in Object class, which has too many fields for that; since every object stores a pointer on its parent, copying of this object does not copy the children and moving is taken with care Generated from class MR.ObjectChildrenHolder. Derived classes: Direct: (non-virtual) MR.Object Indirect: (non-virtual) MR.AddVisualProperties<MR.FeatureObject, MR.DimensionsVisualizePropertyType.diameter, MR.DimensionsVisualizePropertyType.angle, MR.DimensionsVisualizePropertyType.length> MR.AddVisualProperties<MR.FeatureObject, MR.DimensionsVisualizePropertyType.diameter, MR.DimensionsVisualizePropertyType.length> MR.AddVisualProperties<MR.FeatureObject, MR.DimensionsVisualizePropertyType.diameter> MR.AngleMeasurementObject MR.CircleObject MR.ConeObject MR.CylinderObject MR.DistanceMeasurementObject MR.FeatureObject MR.LineObject MR.MeasurementObject MR.ObjectDistanceMap MR.ObjectGcode MR.ObjectLabel MR.ObjectLines MR.ObjectLinesHolder MR.ObjectMesh MR.ObjectMeshHolder MR.ObjectPoints MR.ObjectPointsHolder MR.ObjectVoxels MR.PlaneObject MR.PointMeasurementObject MR.PointObject MR.RadiusMeasurementObject MR.SceneRootObject MR.SphereObject MR.VisualObject This is the const half of the class. More...

+ Inheritance diagram for MR.Const_ObjectChildrenHolder:

Classes

struct  _Underlying
 
struct  _UnderlyingShared
 

Public Member Functions

virtual void Dispose ()
 
unsafe Const_ObjectChildrenHolder ()
 Constructs an empty (default-constructed) instance.
 
unsafe Const_ObjectChildrenHolder (MR._ByValue_ObjectChildrenHolder _other)
 Generated from constructor MR.ObjectChildrenHolder.ObjectChildrenHolder.
 
unsafe MR.Object getSharedPtr ()
 Generated from method MR.ObjectChildrenHolder.getSharedPtr.
 
unsafe ulong heapBytes ()
 returns the amount of memory this object occupies on heap, including the memory of all recognized children Generated from method MR.ObjectChildrenHolder.heapBytes.
 

Protected Member Functions

unsafe void _LateMakeShared (_Underlying *ptr)
 
virtual unsafe void Dispose (bool disposing)
 

Properties

override unsafe bool _IsOwning [get]
 Check if the underlying shared pointer is owning or not.
 
- Properties inherited from MR.Misc.SharedObject< Const_ObjectChildrenHolder >
override bool _IsOwning [get]
 This checks if the shared_ptr itself is owning or not, rather than whether we own our shared_ptr, which isn't a given. The derived classes have to implement this, since it depends on the specific shared_ptr type.
 
bool _IsOwningSharedPtr [get]
 This checks if we own the underlying shared_ptr instance, regardless of whether it owns the underlying object, which is orthogonal. We repurpose _IsOwningVal for this.
 

Detailed Description

the main purpose of this class is to avoid copy and move constructor and assignment operator implementation in Object class, which has too many fields for that; since every object stores a pointer on its parent, copying of this object does not copy the children and moving is taken with care Generated from class MR.ObjectChildrenHolder. Derived classes: Direct: (non-virtual) MR.Object Indirect: (non-virtual) MR.AddVisualProperties<MR.FeatureObject, MR.DimensionsVisualizePropertyType.diameter, MR.DimensionsVisualizePropertyType.angle, MR.DimensionsVisualizePropertyType.length> MR.AddVisualProperties<MR.FeatureObject, MR.DimensionsVisualizePropertyType.diameter, MR.DimensionsVisualizePropertyType.length> MR.AddVisualProperties<MR.FeatureObject, MR.DimensionsVisualizePropertyType.diameter> MR.AngleMeasurementObject MR.CircleObject MR.ConeObject MR.CylinderObject MR.DistanceMeasurementObject MR.FeatureObject MR.LineObject MR.MeasurementObject MR.ObjectDistanceMap MR.ObjectGcode MR.ObjectLabel MR.ObjectLines MR.ObjectLinesHolder MR.ObjectMesh MR.ObjectMeshHolder MR.ObjectPoints MR.ObjectPointsHolder MR.ObjectVoxels MR.PlaneObject MR.PointMeasurementObject MR.PointObject MR.RadiusMeasurementObject MR.SceneRootObject MR.SphereObject MR.VisualObject This is the const half of the class.


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