MeshLib C++ Docs
Loading...
Searching...
No Matches
MRAncillaryMesh.h
Go to the documentation of this file.
1#pragma once
2
3#include "exports.h"
4#include "MRMesh/MRMeshFwd.h"
5#include <memory>
6
7namespace MR
8{
11
12
14struct MRVIEWER_CLASS AncillaryMesh
15{
16 std::shared_ptr<ObjectMesh> obj;
17
18 AncillaryMesh() = default;
19
21 AncillaryMesh( AncillaryMesh && b ) noexcept = default;
22 AncillaryMesh & operator =( AncillaryMesh && b ) { reset(); obj = std::move( b.obj ); return *this; }
23
25 explicit AncillaryMesh( Object& parent ) { make( parent ); }
26
28 MRVIEWER_API void make( Object& parent );
29
31 MRVIEWER_API void reset();
32
34 ~AncillaryMesh() { reset(); }
35};
36
37}
named object in the data model
Definition MRObject.h:62
MRVIEWER_API void make(Object &parent)
Make not-pickable object, link it to parent object.
AncillaryMesh()=default
~AncillaryMesh()
detach owned object from parent, stops owning it
Definition MRAncillaryMesh.h:34
AncillaryMesh(Object &parent)
Make not-pickable object, link it to parent object.
Definition MRAncillaryMesh.h:25
AncillaryMesh(AncillaryMesh &&b) noexcept=default
since this uniquely owns an ancillary object, we provide only move operations, not copy
MRVIEWER_API void reset()
detach owned object from parent, stops owning it
std::shared_ptr< ObjectMesh > obj
Definition MRAncillaryMesh.h:16
only for bindings generation
Definition MRCameraOrientationPlugin.h:8
Helper class to manage ancillary visual mesh used by plugins.
Definition MRAncillaryMesh.h:15