MeshLib C Docs
Loading...
Searching...
No Matches
MRMeasurementObject.h
Go to the documentation of this file.
1#pragma once
2
3#include <MRCMisc/common.h>
4#include <MRCMisc/exports.h>
5
6#include <stddef.h>
7
8#ifdef __cplusplus
9extern "C" {
10#endif
11
12typedef struct MR_AngleMeasurementObject MR_AngleMeasurementObject; // Defined in `#include <MRCMesh/MRAngleMeasurementObject.h>`.
13typedef struct MR_DistanceMeasurementObject MR_DistanceMeasurementObject; // Defined in `#include <MRCMesh/MRDistanceMeasurementObject.h>`.
14typedef struct MR_Object MR_Object; // Defined in `#include <MRCMesh/MRObject.h>`.
15typedef struct MR_ObjectChildrenHolder MR_ObjectChildrenHolder; // Defined in `#include <MRCMesh/MRObject.h>`.
16typedef struct MR_RadiusMeasurementObject MR_RadiusMeasurementObject; // Defined in `#include <MRCMesh/MRRadiusMeasurementObject.h>`.
17typedef struct MR_VisualObject MR_VisualObject; // Defined in `#include <MRCMesh/MRVisualObject.h>`.
18
19
20// A common base class for measurement objects.
21// Can't be constructed directly.
35
39
42
45
49
52
56
59
63
66
71
75
80
84
91
97
102
106
111
115
122
128
133
137
142
146
153
159
162
165
170
171#ifdef __cplusplus
172} // extern "C"
173#endif
struct MR_VisualObject MR_VisualObject
Definition MRAddVisualPropertiesMixin.h:21
struct MR_ObjectChildrenHolder MR_ObjectChildrenHolder
Definition MRAddVisualPropertiesMixin.h:18
struct MR_AngleMeasurementObject MR_AngleMeasurementObject
Definition MRAngleMeasurementObject.h:32
struct MR_MeasurementObject MR_MeasurementObject
Definition MRAngleMeasurementObject.h:14
struct MR_DistanceMeasurementObject MR_DistanceMeasurementObject
Definition MRDistanceMeasurementObject.h:33
struct MR_Object MR_Object
Definition MRGltf.h:10
MRC_API MR_DistanceMeasurementObject * MR_MeasurementObject_MutableStaticDowncastTo_MR_DistanceMeasurementObject(MR_MeasurementObject *object)
MRC_API MR_RadiusMeasurementObject * MR_MeasurementObject_MutableStaticDowncastTo_MR_RadiusMeasurementObject(MR_MeasurementObject *object)
MRC_API const MR_DistanceMeasurementObject * MR_MeasurementObject_DynamicDowncastToOrFail_MR_DistanceMeasurementObject(const MR_MeasurementObject *object)
MRC_API MR_MeasurementObject * MR_MeasurementObject_AssignFromAnother(MR_MeasurementObject *_this, MR_PassBy _other_pass_by, MR_MeasurementObject *_other)
MRC_API MR_AngleMeasurementObject * MR_MeasurementObject_MutableStaticDowncastTo_MR_AngleMeasurementObject(MR_MeasurementObject *object)
MRC_API MR_AngleMeasurementObject * MR_MeasurementObject_MutableDynamicDowncastTo_MR_AngleMeasurementObject(MR_MeasurementObject *object)
MRC_API const MR_DistanceMeasurementObject * MR_MeasurementObject_StaticDowncastTo_MR_DistanceMeasurementObject(const MR_MeasurementObject *object)
MRC_API MR_DistanceMeasurementObject * MR_MeasurementObject_MutableDynamicDowncastTo_MR_DistanceMeasurementObject(MR_MeasurementObject *object)
MRC_API void MR_MeasurementObject_DestroyArray(const MR_MeasurementObject *_this)
Destroys a heap-allocated array of MR_MeasurementObject. Does nothing if the pointer is null.
MRC_API MR_AngleMeasurementObject * MR_MeasurementObject_MutableDynamicDowncastToOrFail_MR_AngleMeasurementObject(MR_MeasurementObject *object)
MRC_API const MR_AngleMeasurementObject * MR_MeasurementObject_DynamicDowncastTo_MR_AngleMeasurementObject(const MR_MeasurementObject *object)
MRC_API MR_RadiusMeasurementObject * MR_MeasurementObject_MutableDynamicDowncastToOrFail_MR_RadiusMeasurementObject(MR_MeasurementObject *object)
MRC_API const MR_MeasurementObject * MR_MeasurementObject_OffsetPtr(const MR_MeasurementObject *ptr, ptrdiff_t i)
Offsets a pointer to an array element by i positions (not bytes). Use only if you're certain that the...
MRC_API const MR_RadiusMeasurementObject * MR_MeasurementObject_StaticDowncastTo_MR_RadiusMeasurementObject(const MR_MeasurementObject *object)
MRC_API const MR_RadiusMeasurementObject * MR_MeasurementObject_DynamicDowncastToOrFail_MR_RadiusMeasurementObject(const MR_MeasurementObject *object)
MRC_API const MR_ObjectChildrenHolder * MR_MeasurementObject_UpcastTo_MR_ObjectChildrenHolder(const MR_MeasurementObject *object)
MRC_API const MR_RadiusMeasurementObject * MR_MeasurementObject_DynamicDowncastTo_MR_RadiusMeasurementObject(const MR_MeasurementObject *object)
MRC_API const MR_AngleMeasurementObject * MR_MeasurementObject_DynamicDowncastToOrFail_MR_AngleMeasurementObject(const MR_MeasurementObject *object)
MRC_API void MR_MeasurementObject_Destroy(const MR_MeasurementObject *_this)
Destroys a heap-allocated instance of MR_MeasurementObject. Does nothing if the pointer is null.
MRC_API const MR_DistanceMeasurementObject * MR_MeasurementObject_DynamicDowncastTo_MR_DistanceMeasurementObject(const MR_MeasurementObject *object)
MRC_API const MR_Object * MR_MeasurementObject_UpcastTo_MR_Object(const MR_MeasurementObject *object)
MRC_API MR_ObjectChildrenHolder * MR_MeasurementObject_MutableUpcastTo_MR_ObjectChildrenHolder(MR_MeasurementObject *object)
Upcasts an instance of MR::MeasurementObject to its base class MR::ObjectChildrenHolder.
MRC_API MR_DistanceMeasurementObject * MR_MeasurementObject_MutableDynamicDowncastToOrFail_MR_DistanceMeasurementObject(MR_MeasurementObject *object)
MRC_API MR_Object * MR_MeasurementObject_MutableUpcastTo_MR_Object(MR_MeasurementObject *object)
Upcasts an instance of MR::MeasurementObject to its base class MR::Object.
MRC_API MR_RadiusMeasurementObject * MR_MeasurementObject_MutableDynamicDowncastTo_MR_RadiusMeasurementObject(MR_MeasurementObject *object)
struct MR_RadiusMeasurementObject MR_RadiusMeasurementObject
Definition MRMeasurementObject.h:16
MRC_API const MR_VisualObject * MR_MeasurementObject_UpcastTo_MR_VisualObject(const MR_MeasurementObject *object)
MRC_API const MR_AngleMeasurementObject * MR_MeasurementObject_StaticDowncastTo_MR_AngleMeasurementObject(const MR_MeasurementObject *object)
MRC_API MR_MeasurementObject * MR_MeasurementObject_OffsetMutablePtr(MR_MeasurementObject *ptr, ptrdiff_t i)
Offsets a pointer to an array element by i positions (not bytes). Use only if you're certain that the...
MRC_API MR_VisualObject * MR_MeasurementObject_MutableUpcastTo_MR_VisualObject(MR_MeasurementObject *object)
Upcasts an instance of MR::MeasurementObject to its base class MR::VisualObject.
MRC_API MR_MeasurementObject * MR_MeasurementObject_ConstructFromAnother(MR_PassBy _other_pass_by, MR_MeasurementObject *_other)
MR_PassBy
Definition common.h:19
#define MRC_API
Definition exports.h:11