NX Open C++ 参考指南 2406 v1.1
载入中...
搜索中...
未找到
Features_CustomAttributeCollection.hxx
1//--------------------------------------------------------------------------
2// Copyright 2024 Siemens
3//--------------------------------------------------------------------------
4// C++接口JA API的头文件
5//--------------------------------------------------------------------------
6//
7// 源文件:
8// Features_CustomAttributeCollection.ja
9//
10// 生成方式:
11// apiwrap
12//
13// 警告:
14// 此文件为自动生成 - 请勿手动编辑
15//
16#pragma once
17#include <NXOpen/NXDeprecation.hxx>
18#include <iterator>
19#include <vector>
20#include <NXOpen/NXString.hxx>
21#include <NXOpen/Callback.hxx>
22#include <NXOpen/Features_CustomAttribute.hxx>
23#include <NXOpen/Features_CustomTagAttribute.hxx>
24#include <NXOpen/TaggedObjectCollection.hxx>
25#include <NXOpen/TaggedObject.hxx>
26#include <NXOpen/libnxopencpp_features_exports.hxx>
27#ifdef _MSC_VER
28#pragma warning(push)
29#pragma warning(disable:4996)
30#endif
31#ifdef __GNUC__
32#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
33#endif
34namespace NXOpen
35{
36 namespace Features
37 {
39 }
40 namespace Features
41 {
43 }
44 namespace Features
45 {
46 class Feature;
47 }
48 namespace Features
49 {
51 }
52 namespace Features
53 {
55 }
56 namespace Features
57 {
59 }
60 namespace Features
61 {
63 }
64 namespace Features
65 {
67 }
68 namespace Features
69 {
71 }
72 namespace Features
73 {
75 }
76 namespace Features
77 {
79 }
80 namespace Features
81 {
83 }
84 namespace Features
85 {
87 }
88 namespace Features
89 {
91 }
92 namespace Features
93 {
95 }
96 namespace Features
97 {
98 class CustomAttributeCollectionImpl;
102 class NXOPENCPP_FEATURESEXPORT CustomAttributeCollection : public NXOpen::TaggedObjectCollection
103 {
104 private: CustomAttributeCollectionImpl * m_customattributecollection_impl;
105 private: NXOpen::Features::FeatureCollection* m_owner;
109 public:
111 tag_t Tag() const;
114 //lint -sem(NXOpen::Features::CustomAttributeCollection::iterator::copy,initializer)
115 class iterator : public std::iterator<std::forward_iterator_tag, NXOpen::Features::Feature *>
116 {
117 public:
119 iterator() : m_context(nullptr), m_current(NULL_TAG)
120 {
121 // coverity[uninit_member]
122 } //lint !e1401 m_state is not initialized
123
124 explicit iterator(NXOpen::Features::CustomAttributeCollection *context) : m_context(context), m_current(NULL_TAG)
125 {
126 // coverity[uninit_member]
127 }//lint !e1401 m_state is not initialized
129
130 iterator(const iterator &other): m_context(nullptr), m_current(NULL_TAG)
131 {
132 copy(other);
133 }
134
135 iterator &operator =(const iterator &other)
136 {
137 if (&other != this)
138 copy(other);
139 return *this;
140 }
141
142 bool operator ==(const iterator &other) const
143 {
144 return m_current == other.m_current && m_context == other.m_context;
145 }
146
147 bool operator !=(const iterator &other) const
148 {
149 return !operator == (other);
150 }
151
152 NXOPENCPP_FEATURESEXPORT value_type operator * () const;
154 iterator & operator ++()
155 {
156 next();
157 return *this;
158 }
159
160 iterator operator ++(int)
161 {
162 iterator tmp(*this);
163 ++*this;
164 return tmp;
165 }
166 private:
167 void copy(const iterator &other)
168 {
169 m_context = other.m_context;
170 m_current = other.m_current;
171 for (int i = 0; i < sizeof(m_state)/sizeof(m_state[0]); i++)
172 m_state[i] = other.m_state[i];
173 }
174 NXOPENCPP_FEATURESEXPORT void next();
176 tag_t m_current;
177 unsigned int m_state[8];
178 };
179
183 {
184 return iterator(this);
185 }
186
190 (
191 const NXString & attributeName ,
192 const std::vector<NXOpen::Features::CustomAttribute::Property> & attributeProperties
193 );
198 (
199 const char * attributeName ,
200 const std::vector<NXOpen::Features::CustomAttribute::Property> & attributeProperties
201 );
206 (
207 const NXString & attributeName ,
208 const std::vector<NXOpen::Features::CustomAttribute::Property> & attributeProperties
209 );
214 (
215 const char * attributeName ,
216 const std::vector<NXOpen::Features::CustomAttribute::Property> & attributeProperties
217 );
222 (
223 const NXString & attributeName ,
224 const std::vector<NXOpen::Features::CustomAttribute::Property> & attributeProperties
225 );
230 (
231 const char * attributeName ,
232 const std::vector<NXOpen::Features::CustomAttribute::Property> & attributeProperties
233 );
238 (
239 const NXString & attributeName ,
240 const std::vector<NXOpen::Features::CustomAttribute::Property> & attributeProperties
241 );
246 (
247 const char * attributeName ,
248 const std::vector<NXOpen::Features::CustomAttribute::Property> & attributeProperties
249 );
254 (
255 const NXString & attributeName ,
256 const std::vector<NXOpen::Features::CustomAttribute::Property> & attributeProperties
257 );
262 (
263 const char * attributeName ,
264 const std::vector<NXOpen::Features::CustomAttribute::Property> & attributeProperties
265 );
270 (
271 const NXString & attributeName ,
272 const std::vector<NXOpen::Features::CustomAttribute::Property> & attributeProperties
273 );
278 (
279 const char * attributeName ,
280 const std::vector<NXOpen::Features::CustomAttribute::Property> & attributeProperties
281 );
286 (
287 const NXString & attributeName ,
288 const std::vector<NXOpen::Features::CustomAttribute::Property> & attributeProperties
289 );
294 (
295 const char * attributeName ,
296 const std::vector<NXOpen::Features::CustomAttribute::Property> & attributeProperties
297 );
302 (
303 const NXString & attributeName ,
304 const std::vector<NXOpen::Features::CustomAttribute::Property> & attributeProperties
305 );
310 (
311 const char * attributeName ,
312 const std::vector<NXOpen::Features::CustomAttribute::Property> & attributeProperties
313 );
318 (
319 const NXString & attributeName ,
320 const std::vector<NXOpen::Features::CustomAttribute::Property> & attributeProperties
321 );
326 (
327 const char * attributeName ,
328 const std::vector<NXOpen::Features::CustomAttribute::Property> & attributeProperties
329 );
334 (
335 const NXString & attributeName ,
336 const std::vector<NXOpen::Features::CustomAttribute::Property> & attributeProperties
337 );
342 (
343 const char * attributeName ,
344 const std::vector<NXOpen::Features::CustomAttribute::Property> & attributeProperties
345 );
350 (
351 const NXString & attributeName ,
352 const std::vector<NXOpen::Features::CustomAttribute::Property> & attributeProperties
353 );
358 (
359 const char * attributeName ,
360 const std::vector<NXOpen::Features::CustomAttribute::Property> & attributeProperties
361 );
366 (
367 const NXString & attributeName ,
368 const std::vector<NXOpen::Features::CustomAttribute::Property> & attributeProperties
369 );
374 (
375 const char * attributeName ,
376 const std::vector<NXOpen::Features::CustomAttribute::Property> & attributeProperties
377 );
378 }; //lint !e1712 类未定义默认构造函数
379 }
380}
381#ifdef _MSC_VER
382#pragma warning(pop)
383#endif
384#ifdef __GNUC__
385#ifndef NX_NO_GCC_DEPRECATION_WARNINGS
386#pragma GCC diagnostic warning "-Wdeprecated-declarations"
387#endif
388#endif
389#undef EXPORTLIBRARY