3#include "MRPch/MRBindingMacros.h"
14enum class MRMESH_CLASS ObjectSelectivityType
29template<
typename ObjectT = Object>
30std::shared_ptr<ObjectT>
asSelectivityType( std::shared_ptr<Object> obj,
const ObjectSelectivityType& type );
34template<
typename ObjectT = Object>
35std::vector<std::shared_ptr<ObjectT>>
getAllObjectsInTree(
Object* root,
const ObjectSelectivityType& type = ObjectSelectivityType::Selectable );
36template<
typename ObjectT = Object>
41template<
typename ObjectT = Object>
44template<
typename ObjectT = Object>
49template<
typename ObjectT = Object>
50std::vector<std::shared_ptr<ObjectT>>
getTopmostObjects(
Object* root,
const ObjectSelectivityType& type = ObjectSelectivityType::Selectable,
bool visibilityCheck =
false );
51template<
typename ObjectT = Object>
52MR_BIND_IGNORE inline std::vector<std::shared_ptr<ObjectT>>
getTopmostObjects(
Object& root,
const ObjectSelectivityType& type = ObjectSelectivityType::Selectable,
bool visibilityCheck =
false )
56template<
typename ObjectT = Object>
58template<
typename ObjectT = Object>
68 for (
const auto& child :
object.children() )
78#include "MRObjectsAccess.hpp"
named object in the data model
Definition MRObject.h:62
Selectable
object itself and all its ancestors are selectable
Definition MRObjectsAccess.h:17
LocalSelectable
object itself is selectable
Definition MRObjectsAccess.h:19
std::vector< std::shared_ptr< ObjectT > > getAllObjectsInTree(Object *root, const ObjectSelectivityType &type=ObjectSelectivityType::Selectable)
std::shared_ptr< ObjectT > asSelectivityType(std::shared_ptr< Object > obj, const ObjectSelectivityType &type)
if input object is of given type then returns another pointer on it
LocalSelected
object itself is selected
Definition MRObjectsAccess.h:23
bool objectHasSelectableChildren(const MR::Object &object, bool recurse=false)
Definition MRObjectsAccess.h:66
std::vector< std::shared_ptr< ObjectT > > getTopmostVisibleObjects(Object *root, const ObjectSelectivityType &type=ObjectSelectivityType::Selectable)
Returns all topmost visible objects of given type (if an object is returned, its children are not) ex...
Definition MRObjectsAccess.h:42
Selected
object itself is selected and all its ancestors are selectable
Definition MRObjectsAccess.h:21
std::array< Vector3f, 3 > MR_BIND_IGNORE
Definition MRMeshBuilderTypes.h:13
std::vector< std::shared_ptr< ObjectT > > getTopmostObjects(Object *root, const ObjectSelectivityType &type=ObjectSelectivityType::Selectable, bool visibilityCheck=false)
Returns all topmost objects of given type (if an object is returned, its children are not) excluding ...
std::shared_ptr< ObjectT > getDepthFirstObject(Object *root, const ObjectSelectivityType &type)
return first object of given type in depth-first traverse order excluding root
only for bindings generation
Definition MRCameraOrientationPlugin.h:8