ufe  1.0
Universal Front End is a DCC-agnostic component that will allow a DCC to browse and edit data in multiple data models
hierarchy.h
Go to the documentation of this file.
1 #line 1 "E:/jenkins/workspace/ufe-full-windows/ufe/include/hierarchy.h"
2 #ifndef _hierarchy
3 #define _hierarchy
4 // ===========================================================================
5 // Copyright 2018 Autodesk, Inc. All rights reserved.
6 //
7 // Use of this software is subject to the terms of the Autodesk license
8 // agreement provided at the time of installation or download, or which
9 // otherwise accompanies this software in either electronic or hard copy form.
10 // ===========================================================================
11 
12 #include "common/ufeExport.h"
13 #include "sceneItemList.h"
14 #include "sceneItem.h"
15 
16 #include <memory>
17 
18 UFE_NS_DEF {
19 
21 
27 
32  AppendedChild(const SceneItem::Ptr&, const Path&, const int);
33 
40 };
41 
43 
65 {
66 public:
67  typedef std::shared_ptr<Hierarchy> Ptr;
68 
75  static Ptr hierarchy(const SceneItem::Ptr& item);
76 
83  static SceneItem::Ptr createItem(const Path& path);
84 
86  Hierarchy();
87 
89  Hierarchy(const Hierarchy&) = default;
90 
92  virtual ~Hierarchy();
93 
95  virtual SceneItem::Ptr sceneItem() const = 0;
96 
100  virtual bool hasChildren() const = 0;
101 
103  virtual SceneItemList children() const = 0;
104 
106  virtual SceneItem::Ptr parent() const = 0;
107 
113  virtual AppendedChild appendChild(const SceneItem::Ptr& child) = 0;
114 };
115 
116 }
117 
118 #endif /* _hierarchy */
std::list< std::shared_ptr< SceneItem > > SceneItemList
Definition: sceneItemList.h:19
SceneItem::Ptr child
Root of the appended hierarchy.
Definition: hierarchy.h:35
int previousIndex
Child&#39;s index position in its previous parent&#39;s children list.
Definition: hierarchy.h:39
std::shared_ptr< Hierarchy > Ptr
Definition: hierarchy.h:67
Definition of macros for symbol visibility.
Result for child item appended to parent.
Definition: hierarchy.h:26
Path previousPath
Child&#39;s previous path.
Definition: hierarchy.h:37
Identify an object or 3D path in the scene.
Definition: path.h:37
#define UFE_NS_DEF
Definition: ufe.h:35
std::shared_ptr< SceneItem > Ptr
Definition: sceneItem.h:39
Abstract base class for scene hierarchy interface.
Definition: hierarchy.h:64
#define UFE_SDK_DECL
Definition: ufeExport.h:36