MeshLib C Docs
Loading...
Searching...
No Matches
MRObjectsAccess.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 <stdbool.h>
7
8#ifdef __cplusplus
9extern "C" {
10#endif
11
12typedef struct MR_Object MR_Object; // Defined in `#include <MRCMesh/MRObject.h>`.
13typedef struct MR_std_shared_ptr_MR_Object MR_std_shared_ptr_MR_Object; // Defined in `#include <MRCMisc/std_shared_ptr_MR_Object.h>`.
14typedef struct MR_std_shared_ptr_MR_ObjectDistanceMap MR_std_shared_ptr_MR_ObjectDistanceMap; // Defined in `#include <MRCMisc/std_shared_ptr_MR_ObjectDistanceMap.h>`.
15typedef struct MR_std_shared_ptr_MR_ObjectLines MR_std_shared_ptr_MR_ObjectLines; // Defined in `#include <MRCMisc/std_shared_ptr_MR_ObjectLines.h>`.
16typedef struct MR_std_shared_ptr_MR_ObjectLinesHolder MR_std_shared_ptr_MR_ObjectLinesHolder; // Defined in `#include <MRCMisc/std_shared_ptr_MR_ObjectLinesHolder.h>`.
17typedef struct MR_std_shared_ptr_MR_ObjectMesh MR_std_shared_ptr_MR_ObjectMesh; // Defined in `#include <MRCMisc/std_shared_ptr_MR_ObjectMesh.h>`.
18typedef struct MR_std_shared_ptr_MR_ObjectMeshHolder MR_std_shared_ptr_MR_ObjectMeshHolder; // Defined in `#include <MRCMisc/std_shared_ptr_MR_ObjectMeshHolder.h>`.
19typedef struct MR_std_shared_ptr_MR_ObjectPoints MR_std_shared_ptr_MR_ObjectPoints; // Defined in `#include <MRCMisc/std_shared_ptr_MR_ObjectPoints.h>`.
20typedef struct MR_std_shared_ptr_MR_ObjectPointsHolder MR_std_shared_ptr_MR_ObjectPointsHolder; // Defined in `#include <MRCMisc/std_shared_ptr_MR_ObjectPointsHolder.h>`.
21typedef struct MR_std_shared_ptr_MR_ObjectVoxels MR_std_shared_ptr_MR_ObjectVoxels; // Defined in `#include <MRCMisc/std_shared_ptr_MR_ObjectVoxels.h>`.
22typedef struct MR_std_shared_ptr_MR_VisualObject MR_std_shared_ptr_MR_VisualObject; // Defined in `#include <MRCMisc/std_shared_ptr_MR_VisualObject.h>`.
23typedef struct MR_std_vector_std_shared_ptr_MR_Object MR_std_vector_std_shared_ptr_MR_Object; // Defined in `#include <MRCMisc/std_vector_std_shared_ptr_MR_Object.h>`.
24typedef struct MR_std_vector_std_shared_ptr_MR_ObjectDistanceMap MR_std_vector_std_shared_ptr_MR_ObjectDistanceMap; // Defined in `#include <MRCMisc/std_vector_std_shared_ptr_MR_ObjectDistanceMap.h>`.
25typedef struct MR_std_vector_std_shared_ptr_MR_ObjectLines MR_std_vector_std_shared_ptr_MR_ObjectLines; // Defined in `#include <MRCMisc/std_vector_std_shared_ptr_MR_ObjectLines.h>`.
26typedef struct MR_std_vector_std_shared_ptr_MR_ObjectLinesHolder MR_std_vector_std_shared_ptr_MR_ObjectLinesHolder; // Defined in `#include <MRCMisc/std_vector_std_shared_ptr_MR_ObjectLinesHolder.h>`.
27typedef struct MR_std_vector_std_shared_ptr_MR_ObjectMesh MR_std_vector_std_shared_ptr_MR_ObjectMesh; // Defined in `#include <MRCMisc/std_vector_std_shared_ptr_MR_ObjectMesh.h>`.
28typedef struct MR_std_vector_std_shared_ptr_MR_ObjectMeshHolder MR_std_vector_std_shared_ptr_MR_ObjectMeshHolder; // Defined in `#include <MRCMisc/std_vector_std_shared_ptr_MR_ObjectMeshHolder.h>`.
29typedef struct MR_std_vector_std_shared_ptr_MR_ObjectPoints MR_std_vector_std_shared_ptr_MR_ObjectPoints; // Defined in `#include <MRCMisc/std_vector_std_shared_ptr_MR_ObjectPoints.h>`.
30typedef struct MR_std_vector_std_shared_ptr_MR_ObjectPointsHolder MR_std_vector_std_shared_ptr_MR_ObjectPointsHolder; // Defined in `#include <MRCMisc/std_vector_std_shared_ptr_MR_ObjectPointsHolder.h>`.
31typedef struct MR_std_vector_std_shared_ptr_MR_ObjectVoxels MR_std_vector_std_shared_ptr_MR_ObjectVoxels; // Defined in `#include <MRCMisc/std_vector_std_shared_ptr_MR_ObjectVoxels.h>`.
32typedef struct MR_std_vector_std_shared_ptr_MR_VisualObject MR_std_vector_std_shared_ptr_MR_VisualObject; // Defined in `#include <MRCMisc/std_vector_std_shared_ptr_MR_VisualObject.h>`.
33
34
48
54
60
66
72
78
84
90
96
102
108
114
120
126
132
138
144
150
156
162
168
175
182
189
196
203
210
217
224
231
238
246
254
262
270
278
286
294
302
310
318
323
328
333
338
343
348
353
358
363
368
374MRC_API bool MR_objectHasSelectableChildren(const MR_Object *object, const bool *recurse);
375
380
385
390
395
400
405
410
415
420
425
426#ifdef __cplusplus
427} // extern "C"
428#endif
struct MR_std_shared_ptr_MR_Object MR_std_shared_ptr_MR_Object
Definition MRAddVisualPropertiesMixin.h:36
struct MR_std_shared_ptr_MR_VisualObject MR_std_shared_ptr_MR_VisualObject
Definition MRChangeColoringActions.h:18
struct MR_std_shared_ptr_MR_ObjectMeshHolder MR_std_shared_ptr_MR_ObjectMeshHolder
Definition MRChangeColoringActions.h:17
struct MR_std_shared_ptr_MR_ObjectLinesHolder MR_std_shared_ptr_MR_ObjectLinesHolder
Definition MRChangeColoringActions.h:16
struct MR_std_shared_ptr_MR_ObjectMesh MR_std_shared_ptr_MR_ObjectMesh
Definition MRChangeMeshAction.h:20
struct MR_std_shared_ptr_MR_ObjectPoints MR_std_shared_ptr_MR_ObjectPoints
Definition MRChangePointCloudAction.h:17
struct MR_std_shared_ptr_MR_ObjectLines MR_std_shared_ptr_MR_ObjectLines
Definition MRChangePolylineAction.h:17
struct MR_std_vector_std_shared_ptr_MR_Object MR_std_vector_std_shared_ptr_MR_Object
Definition MRConstChildren.h:13
struct MR_Object MR_Object
Definition MRGltf.h:10
struct MR_std_shared_ptr_MR_ObjectVoxels MR_std_shared_ptr_MR_ObjectVoxels
Definition MRLoadedObjects.h:18
struct MR_std_vector_std_shared_ptr_MR_ObjectLines MR_std_vector_std_shared_ptr_MR_ObjectLines
Definition MRObjectLines.h:44
struct MR_std_vector_std_shared_ptr_MR_ObjectMesh MR_std_vector_std_shared_ptr_MR_ObjectMesh
Definition MRObjectMesh.h:54
struct MR_std_vector_std_shared_ptr_MR_ObjectPoints MR_std_vector_std_shared_ptr_MR_ObjectPoints
Definition MRObjectPoints.h:46
struct MR_std_vector_std_shared_ptr_MR_ObjectLinesHolder MR_std_vector_std_shared_ptr_MR_ObjectLinesHolder
Definition MRObjectsAccess.h:26
MRC_API MR_std_shared_ptr_MR_ObjectDistanceMap * MR_getDepthFirstObject_MR_ObjectDistanceMap(MR_Object *root, const MR_ObjectSelectivityType *type)
MRC_API MR_std_vector_std_shared_ptr_MR_ObjectLines * MR_getAllObjectsInTree_MR_ObjectLines(MR_Object *root, const MR_ObjectSelectivityType *type)
MRC_API bool MR_objectHasSelectableChildren(const MR_Object *object, const bool *recurse)
MRC_API MR_std_vector_std_shared_ptr_MR_ObjectVoxels * MR_getAllObjectsInTree_MR_ObjectVoxels(MR_Object *root, const MR_ObjectSelectivityType *type)
MRC_API MR_std_vector_std_shared_ptr_MR_ObjectPoints * MR_getTopmostVisibleObjects_MR_ObjectPoints(MR_Object *root, const MR_ObjectSelectivityType *type)
MRC_API MR_std_vector_std_shared_ptr_MR_ObjectMesh * MR_getTopmostVisibleObjects_MR_ObjectMesh(MR_Object *root, const MR_ObjectSelectivityType *type)
MRC_API MR_std_vector_std_shared_ptr_MR_ObjectLines * MR_getTopmostVisibleObjects_MR_ObjectLines(MR_Object *root, const MR_ObjectSelectivityType *type)
MRC_API MR_std_shared_ptr_MR_ObjectVoxels * MR_asSelectivityType_MR_ObjectVoxels(MR_PassBy obj_pass_by, MR_std_shared_ptr_MR_Object *obj, const MR_ObjectSelectivityType *type)
MRC_API void MR_appendObjectFromTreeRecursive_MR_VisualObject(MR_PassBy obj_pass_by, MR_std_shared_ptr_MR_Object *obj, MR_std_vector_std_shared_ptr_MR_VisualObject *res, const MR_ObjectSelectivityType *type)
MRC_API MR_std_shared_ptr_MR_ObjectPoints * MR_asSelectivityType_MR_ObjectPoints(MR_PassBy obj_pass_by, MR_std_shared_ptr_MR_Object *obj, const MR_ObjectSelectivityType *type)
MRC_API MR_std_vector_std_shared_ptr_MR_ObjectPoints * MR_getAllObjectsInTree_MR_ObjectPoints(MR_Object *root, const MR_ObjectSelectivityType *type)
struct MR_std_vector_std_shared_ptr_MR_ObjectMeshHolder MR_std_vector_std_shared_ptr_MR_ObjectMeshHolder
Definition MRObjectsAccess.h:28
MRC_API MR_std_vector_std_shared_ptr_MR_ObjectLinesHolder * MR_getTopmostVisibleObjects_MR_ObjectLinesHolder(MR_Object *root, const MR_ObjectSelectivityType *type)
MRC_API void MR_appendObjectFromTreeRecursive_MR_Object(MR_PassBy obj_pass_by, MR_std_shared_ptr_MR_Object *obj, MR_std_vector_std_shared_ptr_MR_Object *res, const MR_ObjectSelectivityType *type)
MRC_API MR_std_vector_std_shared_ptr_MR_ObjectPoints * MR_getTopmostObjects_MR_ObjectPoints(MR_Object *root, const MR_ObjectSelectivityType *type, const bool *visibilityCheck)
MRC_API MR_std_shared_ptr_MR_ObjectLinesHolder * MR_getDepthFirstObject_MR_ObjectLinesHolder(MR_Object *root, const MR_ObjectSelectivityType *type)
struct MR_std_vector_std_shared_ptr_MR_ObjectVoxels MR_std_vector_std_shared_ptr_MR_ObjectVoxels
Definition MRObjectsAccess.h:31
MRC_API MR_std_vector_std_shared_ptr_MR_Object * MR_getTopmostObjects_MR_Object(MR_Object *root, const MR_ObjectSelectivityType *type, const bool *visibilityCheck)
MRC_API void MR_appendObjectFromTreeRecursive_MR_ObjectVoxels(MR_PassBy obj_pass_by, MR_std_shared_ptr_MR_Object *obj, MR_std_vector_std_shared_ptr_MR_ObjectVoxels *res, const MR_ObjectSelectivityType *type)
MR_ObjectSelectivityType
Definition MRObjectsAccess.h:36
@ MR_ObjectSelectivityType_Selected
object itself is selected and all its ancestors are selectable
Definition MRObjectsAccess.h:42
@ MR_ObjectSelectivityType_LocalSelected
object itself is selected
Definition MRObjectsAccess.h:44
@ MR_ObjectSelectivityType_Any
any object
Definition MRObjectsAccess.h:46
@ MR_ObjectSelectivityType_LocalSelectable
object itself is selectable
Definition MRObjectsAccess.h:40
@ MR_ObjectSelectivityType_Selectable
object itself and all its ancestors are selectable
Definition MRObjectsAccess.h:38
struct MR_std_vector_std_shared_ptr_MR_ObjectPointsHolder MR_std_vector_std_shared_ptr_MR_ObjectPointsHolder
Definition MRObjectsAccess.h:30
MRC_API MR_std_vector_std_shared_ptr_MR_VisualObject * MR_getAllObjectsInTree_MR_VisualObject(MR_Object *root, const MR_ObjectSelectivityType *type)
MRC_API void MR_appendObjectFromTreeRecursive_MR_ObjectMeshHolder(MR_PassBy obj_pass_by, MR_std_shared_ptr_MR_Object *obj, MR_std_vector_std_shared_ptr_MR_ObjectMeshHolder *res, const MR_ObjectSelectivityType *type)
MRC_API void MR_appendObjectFromTreeRecursive_MR_ObjectLines(MR_PassBy obj_pass_by, MR_std_shared_ptr_MR_Object *obj, MR_std_vector_std_shared_ptr_MR_ObjectLines *res, const MR_ObjectSelectivityType *type)
struct MR_std_shared_ptr_MR_ObjectPointsHolder MR_std_shared_ptr_MR_ObjectPointsHolder
Definition MRObjectsAccess.h:20
MRC_API MR_std_shared_ptr_MR_ObjectLines * MR_asSelectivityType_MR_ObjectLines(MR_PassBy obj_pass_by, MR_std_shared_ptr_MR_Object *obj, const MR_ObjectSelectivityType *type)
MRC_API MR_std_vector_std_shared_ptr_MR_ObjectLines * MR_getTopmostObjects_MR_ObjectLines(MR_Object *root, const MR_ObjectSelectivityType *type, const bool *visibilityCheck)
MRC_API MR_std_shared_ptr_MR_Object * MR_getDepthFirstObject_MR_Object(MR_Object *root, const MR_ObjectSelectivityType *type)
MRC_API MR_std_vector_std_shared_ptr_MR_ObjectVoxels * MR_getTopmostObjects_MR_ObjectVoxels(MR_Object *root, const MR_ObjectSelectivityType *type, const bool *visibilityCheck)
MRC_API MR_std_vector_std_shared_ptr_MR_VisualObject * MR_getTopmostVisibleObjects_MR_VisualObject(MR_Object *root, const MR_ObjectSelectivityType *type)
MRC_API MR_std_vector_std_shared_ptr_MR_ObjectMeshHolder * MR_getTopmostVisibleObjects_MR_ObjectMeshHolder(MR_Object *root, const MR_ObjectSelectivityType *type)
MRC_API MR_std_shared_ptr_MR_ObjectPoints * MR_getDepthFirstObject_MR_ObjectPoints(MR_Object *root, const MR_ObjectSelectivityType *type)
MRC_API MR_std_shared_ptr_MR_VisualObject * MR_asSelectivityType_MR_VisualObject(MR_PassBy obj_pass_by, MR_std_shared_ptr_MR_Object *obj, const MR_ObjectSelectivityType *type)
MRC_API MR_std_vector_std_shared_ptr_MR_ObjectLinesHolder * MR_getTopmostObjects_MR_ObjectLinesHolder(MR_Object *root, const MR_ObjectSelectivityType *type, const bool *visibilityCheck)
MRC_API MR_std_shared_ptr_MR_ObjectMesh * MR_getDepthFirstObject_MR_ObjectMesh(MR_Object *root, const MR_ObjectSelectivityType *type)
MRC_API MR_std_vector_std_shared_ptr_MR_ObjectPointsHolder * MR_getTopmostVisibleObjects_MR_ObjectPointsHolder(MR_Object *root, const MR_ObjectSelectivityType *type)
MRC_API MR_std_vector_std_shared_ptr_MR_VisualObject * MR_getTopmostObjects_MR_VisualObject(MR_Object *root, const MR_ObjectSelectivityType *type, const bool *visibilityCheck)
MRC_API MR_std_vector_std_shared_ptr_MR_ObjectMesh * MR_getTopmostObjects_MR_ObjectMesh(MR_Object *root, const MR_ObjectSelectivityType *type, const bool *visibilityCheck)
MRC_API MR_std_vector_std_shared_ptr_MR_ObjectLinesHolder * MR_getAllObjectsInTree_MR_ObjectLinesHolder(MR_Object *root, const MR_ObjectSelectivityType *type)
MRC_API MR_std_shared_ptr_MR_ObjectPointsHolder * MR_getDepthFirstObject_MR_ObjectPointsHolder(MR_Object *root, const MR_ObjectSelectivityType *type)
MRC_API MR_std_shared_ptr_MR_ObjectMeshHolder * MR_asSelectivityType_MR_ObjectMeshHolder(MR_PassBy obj_pass_by, MR_std_shared_ptr_MR_Object *obj, const MR_ObjectSelectivityType *type)
struct MR_std_vector_std_shared_ptr_MR_VisualObject MR_std_vector_std_shared_ptr_MR_VisualObject
Definition MRObjectsAccess.h:32
MRC_API MR_std_vector_std_shared_ptr_MR_ObjectMeshHolder * MR_getAllObjectsInTree_MR_ObjectMeshHolder(MR_Object *root, const MR_ObjectSelectivityType *type)
MRC_API void MR_appendObjectFromTreeRecursive_MR_ObjectPointsHolder(MR_PassBy obj_pass_by, MR_std_shared_ptr_MR_Object *obj, MR_std_vector_std_shared_ptr_MR_ObjectPointsHolder *res, const MR_ObjectSelectivityType *type)
MRC_API MR_std_shared_ptr_MR_ObjectVoxels * MR_getDepthFirstObject_MR_ObjectVoxels(MR_Object *root, const MR_ObjectSelectivityType *type)
MRC_API MR_std_vector_std_shared_ptr_MR_Object * MR_getAllObjectsInTree_MR_Object(MR_Object *root, const MR_ObjectSelectivityType *type)
MRC_API MR_std_shared_ptr_MR_ObjectDistanceMap * MR_asSelectivityType_MR_ObjectDistanceMap(MR_PassBy obj_pass_by, MR_std_shared_ptr_MR_Object *obj, const MR_ObjectSelectivityType *type)
MRC_API MR_std_shared_ptr_MR_Object * MR_asSelectivityType_MR_Object(MR_PassBy obj_pass_by, MR_std_shared_ptr_MR_Object *obj, const MR_ObjectSelectivityType *type)
MRC_API MR_std_vector_std_shared_ptr_MR_ObjectMeshHolder * MR_getTopmostObjects_MR_ObjectMeshHolder(MR_Object *root, const MR_ObjectSelectivityType *type, const bool *visibilityCheck)
MRC_API void MR_appendObjectFromTreeRecursive_MR_ObjectPoints(MR_PassBy obj_pass_by, MR_std_shared_ptr_MR_Object *obj, MR_std_vector_std_shared_ptr_MR_ObjectPoints *res, const MR_ObjectSelectivityType *type)
MRC_API MR_std_shared_ptr_MR_ObjectPointsHolder * MR_asSelectivityType_MR_ObjectPointsHolder(MR_PassBy obj_pass_by, MR_std_shared_ptr_MR_Object *obj, const MR_ObjectSelectivityType *type)
MRC_API void MR_appendObjectFromTreeRecursive_MR_ObjectMesh(MR_PassBy obj_pass_by, MR_std_shared_ptr_MR_Object *obj, MR_std_vector_std_shared_ptr_MR_ObjectMesh *res, const MR_ObjectSelectivityType *type)
struct MR_std_vector_std_shared_ptr_MR_ObjectDistanceMap MR_std_vector_std_shared_ptr_MR_ObjectDistanceMap
Definition MRObjectsAccess.h:24
MRC_API MR_std_shared_ptr_MR_ObjectMesh * MR_asSelectivityType_MR_ObjectMesh(MR_PassBy obj_pass_by, MR_std_shared_ptr_MR_Object *obj, const MR_ObjectSelectivityType *type)
MRC_API MR_std_vector_std_shared_ptr_MR_ObjectMesh * MR_getAllObjectsInTree_MR_ObjectMesh(MR_Object *root, const MR_ObjectSelectivityType *type)
MRC_API MR_std_vector_std_shared_ptr_MR_ObjectDistanceMap * MR_getAllObjectsInTree_MR_ObjectDistanceMap(MR_Object *root, const MR_ObjectSelectivityType *type)
struct MR_std_shared_ptr_MR_ObjectDistanceMap MR_std_shared_ptr_MR_ObjectDistanceMap
Definition MRObjectsAccess.h:14
MRC_API MR_std_shared_ptr_MR_ObjectLinesHolder * MR_asSelectivityType_MR_ObjectLinesHolder(MR_PassBy obj_pass_by, MR_std_shared_ptr_MR_Object *obj, const MR_ObjectSelectivityType *type)
MRC_API void MR_appendObjectFromTreeRecursive_MR_ObjectLinesHolder(MR_PassBy obj_pass_by, MR_std_shared_ptr_MR_Object *obj, MR_std_vector_std_shared_ptr_MR_ObjectLinesHolder *res, const MR_ObjectSelectivityType *type)
MRC_API MR_std_vector_std_shared_ptr_MR_ObjectDistanceMap * MR_getTopmostObjects_MR_ObjectDistanceMap(MR_Object *root, const MR_ObjectSelectivityType *type, const bool *visibilityCheck)
MRC_API MR_std_vector_std_shared_ptr_MR_ObjectDistanceMap * MR_getTopmostVisibleObjects_MR_ObjectDistanceMap(MR_Object *root, const MR_ObjectSelectivityType *type)
MRC_API MR_std_vector_std_shared_ptr_MR_ObjectVoxels * MR_getTopmostVisibleObjects_MR_ObjectVoxels(MR_Object *root, const MR_ObjectSelectivityType *type)
MRC_API MR_std_vector_std_shared_ptr_MR_ObjectPointsHolder * MR_getTopmostObjects_MR_ObjectPointsHolder(MR_Object *root, const MR_ObjectSelectivityType *type, const bool *visibilityCheck)
MRC_API void MR_appendObjectFromTreeRecursive_MR_ObjectDistanceMap(MR_PassBy obj_pass_by, MR_std_shared_ptr_MR_Object *obj, MR_std_vector_std_shared_ptr_MR_ObjectDistanceMap *res, const MR_ObjectSelectivityType *type)
MRC_API MR_std_shared_ptr_MR_ObjectLines * MR_getDepthFirstObject_MR_ObjectLines(MR_Object *root, const MR_ObjectSelectivityType *type)
MRC_API MR_std_shared_ptr_MR_VisualObject * MR_getDepthFirstObject_MR_VisualObject(MR_Object *root, const MR_ObjectSelectivityType *type)
MRC_API MR_std_vector_std_shared_ptr_MR_Object * MR_getTopmostVisibleObjects_MR_Object(MR_Object *root, const MR_ObjectSelectivityType *type)
MRC_API MR_std_shared_ptr_MR_ObjectMeshHolder * MR_getDepthFirstObject_MR_ObjectMeshHolder(MR_Object *root, const MR_ObjectSelectivityType *type)
MRC_API MR_std_vector_std_shared_ptr_MR_ObjectPointsHolder * MR_getAllObjectsInTree_MR_ObjectPointsHolder(MR_Object *root, const MR_ObjectSelectivityType *type)
MR_PassBy
Definition common.h:13
#define MRC_API
Definition include/MRCMisc/exports.h:11