NX Open C++ 参考指南 2406 v1.1
载入中...
搜索中...
未找到
Annotations_PmiAttributeCollection.hxx
1//--------------------------------------------------------------------------
2// 版权所有 2024 Siemens
3//--------------------------------------------------------------------------
4// JA API 的 C++ 接口头文件
5//--------------------------------------------------------------------------
6//
7// 源文件:
8// Annotations_PmiAttributeCollection.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/Annotations_BalloonNoteBuilder.hxx>
23#include <NXOpen/Annotations_CompanyProprietaryInformationBuilder.hxx>
24#include <NXOpen/Annotations_CoordinateNoteBuilder.hxx>
25#include <NXOpen/Annotations_EnterpriseIdentificationBuilder.hxx>
26#include <NXOpen/Annotations_ExportControlBuilder.hxx>
27#include <NXOpen/Annotations_GeneralNoteBuilder.hxx>
28#include <NXOpen/Annotations_GovernmentSecurityInformationBuilder.hxx>
29#include <NXOpen/Annotations_LocatorDesignatorBuilder.hxx>
30#include <NXOpen/Annotations_MaterialSpecificationBuilder.hxx>
31#include <NXOpen/Annotations_PartIdentificationBuilder.hxx>
32#include <NXOpen/Annotations_PmiAttributeBuilder.hxx>
33#include <NXOpen/Annotations_PmiAttributeValueIntegerBuilder.hxx>
34#include <NXOpen/Annotations_PmiAttributeValueListBuilder.hxx>
35#include <NXOpen/Annotations_PmiAttributeValueMultipleStringBuilder.hxx>
36#include <NXOpen/Annotations_PmiAttributeValueNumberBuilder.hxx>
37#include <NXOpen/Annotations_PmiAttributeValueStringBuilder.hxx>
38#include <NXOpen/Annotations_PmiAttributeValueUrlBuilder.hxx>
39#include <NXOpen/Annotations_PmiIntegerBuilder.hxx>
40#include <NXOpen/Annotations_PmiNumberBuilder.hxx>
41#include <NXOpen/Annotations_PmiStringBuilder.hxx>
42#include <NXOpen/Annotations_PmiUrlNoteBuilder.hxx>
43#include <NXOpen/Annotations_PmiUserDefinedBuilder.hxx>
44#include <NXOpen/Annotations_ProcessSpecificationBuilder.hxx>
45#include <NXOpen/Annotations_SpecificNoteBuilder.hxx>
46#include <NXOpen/Annotations_SurfaceFinishBuilder.hxx>
47#include <NXOpen/TaggedObjectCollection.hxx>
48#include <NXOpen/TaggedObject.hxx>
49#include <NXOpen/libnxopencpp_annotations_exports.hxx>
50#ifdef _MSC_VER
51#pragma warning(push)
52#pragma warning(disable:4996)
53#endif
54#ifdef __GNUC__
55#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
56#endif
57namespace NXOpen
58{
59 namespace Annotations
60 {
62 }
63 namespace Annotations
64 {
65 class PmiManager;
66 }
67 namespace Annotations
68 {
69 class PmiAttribute;
70 }
71 namespace Annotations
72 {
73 class BalloonNote;
74 }
75 namespace Annotations
76 {
78 }
79 namespace Annotations
80 {
82 }
83 namespace Annotations
84 {
86 }
87 namespace Annotations
88 {
89 class CoordinateNote;
90 }
91 namespace Annotations
92 {
94 }
95 namespace Annotations
96 {
98 }
99namespace Annotations
100{
102}
103namespace Annotations
104{
105 class ExportControl;
106}
107namespace Annotations
108{
110}
111namespace Annotations
112{
113 class GeneralNote;
114}
115namespace Annotations
116{
117 class GeneralNoteBuilder;
118}
119namespace Annotations
120{
122}
123namespace Annotations
124{
126}
127namespace Annotations
128{
129 class LocatorDesignator;
130}
131namespace Annotations
132{
134}
135namespace Annotations
136{
138}
139namespace Annotations
140{
142}
143namespace Annotations
144{
145 class PartIdentification;
146}
147namespace Annotations
148{
150}
151namespace Annotations
152{
154}
155namespace Annotations
156{
158}
159namespace Annotations
160{
162}
163namespace Annotations
164{
166}
167namespace Annotations
168{
170}
171namespace Annotations
172{
174}
175namespace Annotations
176{
178}
179namespace Annotations
180{
182}
183namespace Annotations
184{
186}
187namespace Annotations
188{
190}
191namespace Annotations
192{
194}
195namespace Annotations
196{
198}
199namespace Annotations
200{
202}
203namespace Annotations
204{
205 class PmiInteger;
206}
207namespace Annotations
208{
209 class PmiIntegerBuilder;
210}
211namespace Annotations
212{
213 class PmiNumber;
214}
215namespace Annotations
216{
217 class PmiNumberBuilder;
218}
219namespace Annotations
220{
221 class PmiString;
222}
223namespace Annotations
224{
225 class PmiStringBuilder;
226}
227namespace Annotations
228{
229 class PmiUrlNote;
230}
231namespace Annotations
232{
233 class PmiUrlNoteBuilder;
234}
235namespace Annotations
236{
237 class PmiUserDefined;
238}
239namespace Annotations
240{
242}
243namespace Annotations
244{
246}
247namespace Annotations
248{
250}
251namespace Annotations
252{
253 class SpecificNote;
254}
255namespace Annotations
256{
258}
259namespace Annotations
260{
261 class SurfaceFinish;
262}
263namespace Annotations
264{
266}
267class TaggedObject;
268namespace Annotations
269{
270 class PmiAttributeCollectionImpl;
274 class NXOPENCPP_ANNOTATIONSEXPORT PmiAttributeCollection : public NXOpen::TaggedObjectCollection
275 {
276 private: PmiAttributeCollectionImpl * m_pmiattributecollection_impl;
277 private: NXOpen::Annotations::PmiManager* m_owner;
281 public:
283 tag_t Tag() const;
284 public: ~PmiAttributeCollection();
286 //lint -sem(NXOpen::Annotations::PmiAttributeCollection::iterator::copy,initializer)
287 class iterator : public std::iterator<std::forward_iterator_tag, NXOpen::Annotations::PmiAttribute *>
288 {
289 public:
291 iterator() : m_context(nullptr), m_current(NULL_TAG)
292 {
293 // coverity[uninit_member]
294 } //lint !e1401 m_state is not initialized
295
296 explicit iterator(NXOpen::Annotations::PmiAttributeCollection *context) : m_context(context), m_current(NULL_TAG)
297{
298 // coverity[uninit_member]
299 }//lint !e1401 m_state is not initialized
301
302 iterator(const iterator &other): m_context(nullptr), m_current(NULL_TAG)
303 {
304 copy(other);
305 }
306
307 iterator &operator =(const iterator &other)
308 {
309 if (&other != this)
310 copy(other);
311 return *this;
312 }
313
314 bool operator ==(const iterator &other) const
315 {
316 return m_current == other.m_current && m_context == other.m_context;
317 }
318
319 bool operator !=(const iterator &other) const
320 {
321 return !operator == (other);
322 }
323
324 NXOPENCPP_ANNOTATIONSEXPORT value_type operator * () const;
326 iterator & operator ++()
327 {
328 next();
329 return *this;
330 }
331
332 iterator operator ++(int)
333 {
334 iterator tmp(*this);
335 ++*this;
336 return tmp;
337 }
338 private:
339 void copy(const iterator &other)
340 {
341 m_context = other.m_context;
342 m_current = other.m_current;
343 for (int i = 0; i < sizeof(m_state)/sizeof(m_state[0]); i++)
344 m_state[i] = other.m_state[i];
345 }
346 NXOPENCPP_ANNOTATIONSEXPORT void next();
348 tag_t m_current;
349 unsigned int m_state[8];
350 };
351
355 {
356 return iterator(this);
357 }
358
362 (
364 );
369 (
371 );
376 (
378 );
383 (
385 );
390 (
392 );
397 (
399 );
404 (
405 NXOpen::Annotations::GovernmentSecurityInformation * governmentSecurityInformation
406 );
411 (
412 NXOpen::Annotations::CompanyProprietaryInformation * companyProprietaryInformation
413 );
418 (
420 );
425 (
427 );
432 (
434 );
439 (
441 );
446 (
447 NXOpen::Annotations::EnterpriseIdentification * enterpriseIdentification
448 );
453 (
454 NXOpen::Annotations::PartIdentification * partIdentification
455 );
460 (
461 NXOpen::Annotations::ProcessSpecification * processSpecification
462 );
467 (
468 NXOpen::Annotations::MaterialSpecification * materialSpecification
469 );
474 (
475 NXOpen::Annotations::LocatorDesignator * locatorDesignator
476 );
481 (
483 );
488 (
489 NXOpen::Annotations::PmiAttributeValueString * pmiAttributeValueString
490 );
495 (
496 NXOpen::Annotations::PmiAttributeValueMultipleString * pmiAttributeValueMultipleString
497 );
502 (
503 NXOpen::Annotations::PmiAttributeValueInteger * pmiAttributeValueInteger
504 );
509 (
510 NXOpen::Annotations::PmiAttributeValueList * pmiAttributeValueList
511 );
516 (
517 NXOpen::Annotations::PmiAttributeValueUrl * pmiAttributeValueUrl
518 );
523 (
524 NXOpen::Annotations::PmiAttributeValueNumber * pmiAttributeValueNumber
525 );
530 (
532 );
541 (
542 const NXString & journalIdentifier
543 );
552 (
553 const char * journalIdentifier
554 );
555 }; //lint !e1712 类未定义默认构造函数
556 }
557}
558#ifdef _MSC_VER
559#pragma warning(pop)
560#endif
561#ifdef __GNUC__
562#ifndef NX_NO_GCC_DEPRECATION_WARNINGS
563#pragma GCC diagnostic warning "-Wdeprecated-declarations"
564#endif
565#endif
566#undef EXPORTLIBRARY