ElementTemplateNode.h
Go to the documentation of this file.
1 /*--------------------------------------------------------------------------------------+
2 |
3 | Supplied under applicable software license agreement.
4 |
5 | Copyright (c) 2018 Bentley Systems, Incorporated. All rights reserved.
6 |
7 +---------------------------------------------------------------------------------------*/
8 #pragma once
9 
10 #include "ElementTemplateUtils.h"
11 
12 DGNPLATFORM_TYPEDEFS(ElementTemplateNode);
13 DGNPLATFORM_REF_COUNTED_PTR(ElementTemplateNode);
14 
16 
17 
20 
21 //=======================================================================================
144 //=======================================================================================
145 
146 
147 /*=================================================================================**/
157 {
159 
160 public:
164  DGNPLATFORM_EXPORT static ElementTemplateNodePtr FindByElementId (ElementId elemID, XDataTreeOwner& owner);
165 
167  DGNPLATFORM_EXPORT static ElementTemplateNodePtr CreateNode
168  (
169  WCharCP name,
170  ElementId parentId,
171  bool allowChildNodes,
172  int sortPriority,
173  XDataTreeOwner& owner,
174  XInstanceContainer* seedContainer=NULL
175  );
176 
178  DGNPLATFORM_EXPORT static ElementTemplateNodePtr CreateNode
179  (
180  WCharCP name,
181  ElementTemplateNodeP parentNode,
182  bool allowChildNodes,
183  int sortPriority,
184  XDataTreeOwner& owner,
185  XInstanceContainer* seedContainer=NULL
186  );
187 
189  DGNPLATFORM_EXPORT static ElementTemplateNodePtr CreateNode
190  (
191  WCharCP name,
192  ElementTemplateNodePtr& parentNode,
193  bool allowChildNodes,
194  int sortPriority,
195  XDataTreeOwner& owner,
196  XInstanceContainer* seedContainer=NULL
197  );
198 
201  DGNPLATFORM_EXPORT static ElementTemplateNodePtr FromXDataTreeNodePtr (XDataTreeNodeP xDataTreeNode);
202 
205  DGNPLATFORM_EXPORT ECN::IECInstancePtr GetDefaultInstance () const;
206 
209  DGNPLATFORM_EXPORT ECN::IECInstancePtr GetOrCreateDefaultInstance ();
210 
212  DGNPLATFORM_EXPORT static HandlerId GetNodeHandlerId ();
213 };
214 
216 
218 
#define END_BENTLEY_DGNPLATFORM_NAMESPACE
Definition: DgnPlatformBaseType.r.h:69
Definition: XInstanceContainer.h:24
DGNPLATFORM_TYPEDEFS(ElementTemplateNode)
#define DGNPLATFORM_EXPORT
Definition: DgnPlatform/ExportMacros.h:58
wchar_t const * WCharCP
Definition: Bentley.h:224
#define NULL
Definition: Bentley.h:157
! Class used to hold XAttribute data that contains the name, sort priority, and ! parent node informa...
Definition: XDataTreeNode.h:60
DGNPLATFORM_REF_COUNTED_PTR(ElementTemplateNode)
A shared pointer template for reference-counted objects.
Definition: RefCounted.h:119
#define DEFINE_T_SUPER(B)
Definition: Bentley.h:167
#define BEGIN_BENTLEY_DGNPLATFORM_NAMESPACE
Definition: DgnPlatformBaseType.r.h:68
UInt64 ElementId
Definition: DgnPlatformBaseType.r.h:83
Definition: XDataTreeOwner.h:23
Element templates define symbology properties.
Definition: ElementTemplateNode.h:156
A two-part identifier, consisting of a major ID and a minor ID.
Definition: DgnCore.h:21

Copyright © 2017 Bentley Systems, Incorporated. All rights reserved.