NX Open C++ 参考指南 2406 v1.1
载入中...
搜索中...
未找到
Annotations_DimensionSetCollection.hxx
1//--------------------------------------------------------------------------
2// Copyright 2024 Siemens
3//--------------------------------------------------------------------------
4// C++ 接口访问 JA API 的头文件
5//--------------------------------------------------------------------------
6//
7// 源文件:
8// Annotations_DimensionSetCollection.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_Associativity.hxx>
23#include <NXOpen/Annotations_DimensionData.hxx>
24#include <NXOpen/Annotations_PmiData.hxx>
25#include <NXOpen/TaggedObjectCollection.hxx>
26#include <NXOpen/TaggedObject.hxx>
27#include <NXOpen/ugmath.hxx>
28#include <NXOpen/libnxopencpp_annotations_exports.hxx>
29#ifdef _MSC_VER
30#pragma warning(push)
31#pragma warning(disable:4996)
32#endif
33#ifdef __GNUC__
34#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
35#endif
36namespace NXOpen
37{
38 namespace Annotations
39 {
41 }
42 namespace Annotations
43 {
45 }
46 namespace Annotations
47 {
48 class DimensionSet;
49 }
50 namespace Annotations
51 {
52 class Associativity;
53 }
54 namespace Annotations
55 {
57 }
58 namespace Annotations
59 {
60 class ChainDimension;
61 }
62 namespace Annotations
63 {
64 class DimensionData;
65 }
66 namespace Annotations
67 {
69 }
70 namespace Annotations
71 {
73 }
74 namespace Annotations
75 {
76 class PmiData;
77 }
78 class Xform;
79 namespace Annotations
80 {
81 class DimensionSetCollectionImpl;
85 class NXOPENCPP_ANNOTATIONSEXPORT DimensionSetCollection : public NXOpen::TaggedObjectCollection
86 {
87 private: DimensionSetCollectionImpl * m_dimensionsetcollection_impl;
92 public:
94 tag_t Tag() const;
97 //lint -sem(NXOpen::Annotations::DimensionSetCollection::iterator::copy,initializer)
98 class iterator : public std::iterator<std::forward_iterator_tag, NXOpen::Annotations::DimensionSet *>
99 {
100 public:
102 iterator() : m_context(nullptr), m_current(NULL_TAG)
103 {
104 // coverity[uninit_member]
105 } //lint !e1401 m_state is not initialized
106
107 explicit iterator(NXOpen::Annotations::DimensionSetCollection *context) : m_context(context), m_current(NULL_TAG)
108 {
109 // coverity[uninit_member]
110 }//lint !e1401 m_state is not initialized
112
113 iterator(const iterator &other): m_context(nullptr), m_current(NULL_TAG)
114 {
115 copy(other);
116 }
117
118 iterator &operator =(const iterator &other)
119 {
120 if (&other != this)
121 copy(other);
122 return *this;
123 }
124
125 bool operator ==(const iterator &other) const
126 {
127 return m_current == other.m_current && m_context == other.m_context;
128 }
129
130 bool operator !=(const iterator &other) const
131 {
132 return !operator == (other);
133 }
134
135 NXOPENCPP_ANNOTATIONSEXPORT value_type operator * () const;
137 iterator & operator ++()
138 {
139 next();
140 return *this;
141 }
142
143 iterator operator ++(int)
144 {
145 iterator tmp(*this);
146 ++*this;
147 return tmp;
148 }
149 private:
150 void copy(const iterator &other)
151 {
152 m_context = other.m_context;
153 m_current = other.m_current;
154 for (int i = 0; i < sizeof(m_state)/sizeof(m_state[0]); i++)
155 m_state[i] = other.m_state[i];
156 }
157 NXOPENCPP_ANNOTATIONSEXPORT void next();
159 tag_t m_current;
160 unsigned int m_state[8];
161 };
162
166 {
167 return iterator(this);
168 }
169
173 (
174 NXOpen::Annotations::DimensionData * dimensionData ,
175 const NXOpen::Point3d & origin
176 );
181 (
182 NXOpen::Annotations::DimensionData * dimensionData ,
183 const std::vector<NXOpen::Annotations::PmiData *> & pmidata ,
184 NXOpen::Xform * annotationPlane ,
185 const NXOpen::Point3d & origin
186 );
191 (
192 NXOpen::Annotations::DimensionData * dimensionData ,
193 const NXOpen::Point3d & origin
194 );
199 (
200 NXOpen::Annotations::DimensionData * dimensionData ,
201 const std::vector<NXOpen::Annotations::PmiData *> & pmidata ,
202 NXOpen::Xform * annotationPlane ,
203 const NXOpen::Point3d & origin
204 );
209 (
210 NXOpen::Annotations::DimensionData * dimensionData ,
211 const NXOpen::Point3d & origin
212 );
217 (
218 NXOpen::Annotations::DimensionData * dimensionData ,
219 const std::vector<NXOpen::Annotations::PmiData *> & pmidata ,
220 NXOpen::Xform * annotationPlane ,
221 const NXOpen::Point3d & origin
222 );
227 (
228 NXOpen::Annotations::DimensionData * dimensionData ,
229 const NXOpen::Point3d & origin
230 );
235 (
236 NXOpen::Annotations::DimensionData * dimensionData ,
237 const std::vector<NXOpen::Annotations::PmiData *> & pmidata ,
238 NXOpen::Xform * annotationPlane ,
239 const NXOpen::Point3d & origin
240 );
241 }; //lint !e1712 类未定义默认构造函数
242 }
243}
244#ifdef _MSC_VER
245#pragma warning(pop)
246#endif
247#ifdef __GNUC__
248#ifndef NX_NO_GCC_DEPRECATION_WARNINGS
249#pragma GCC diagnostic warning "-Wdeprecated-declarations"
250#endif
251#endif
252#undef EXPORTLIBRARY