NX Open C++ 参考指南 2406 v1.1
载入中...
搜索中...
未找到
Assemblies_SubsetCollection.hxx
1//--------------------------------------------------------------------------
2// Copyright 2024 Siemens
3//--------------------------------------------------------------------------
4// C++ 接口访问 JA API 的头文件
5//--------------------------------------------------------------------------
6//
7// 源文件:
8// Assemblies_SubsetCollection.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/Assemblies_AttributeSearchTerm.hxx>
23#include <NXOpen/Assemblies_AttributeSearchTermBuilder.hxx>
24#include <NXOpen/Assemblies_BoxSearchTerm.hxx>
25#include <NXOpen/Assemblies_BoxSearchTermBuilder.hxx>
26#include <NXOpen/Assemblies_MechanicalRoutingSubsetBuilder.hxx>
27#include <NXOpen/Assemblies_PlaneSearchTerm.hxx>
28#include <NXOpen/Assemblies_PlaneSearchTermBuilder.hxx>
29#include <NXOpen/Assemblies_PositioningTask.hxx>
30#include <NXOpen/Assemblies_PositioningTaskBuilder.hxx>
31#include <NXOpen/Assemblies_ProximitySearchTerm.hxx>
32#include <NXOpen/Assemblies_ProximitySearchTermBuilder.hxx>
33#include <NXOpen/Assemblies_RunContentProximitySearchTerm.hxx>
34#include <NXOpen/Assemblies_RunContentProximitySearchTermBuilder.hxx>
35#include <NXOpen/Assemblies_Subset.hxx>
36#include <NXOpen/TaggedObjectCollection.hxx>
37#include <NXOpen/TaggedObject.hxx>
38#include <NXOpen/libnxopencpp_assemblies_exports.hxx>
39#ifdef _MSC_VER
40#pragma warning(push)
41#pragma warning(disable:4996)
42#endif
43#ifdef __GNUC__
44#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
45#endif
46namespace NXOpen
47{
48 namespace Assemblies
49 {
50 class SubsetCollection;
51 }
52 namespace Assemblies
53 {
55 }
56 namespace Assemblies
57 {
58 class Subset;
59 }
60 namespace Assemblies
61 {
63 }
64 namespace Assemblies
65 {
67 }
68 namespace Assemblies
69 {
70 class BoxSearchTerm;
71 }
72 namespace Assemblies
73 {
75 }
76 namespace Assemblies
77 {
79 }
80 namespace Assemblies
81 {
82 class PlaneSearchTerm;
83 }
84 namespace Assemblies
85 {
87 }
88 namespace Assemblies
89 {
90 class PositioningTask;
91 }
92 namespace Assemblies
93 {
95 }
96 namespace Assemblies
97 {
99 }
100namespace Assemblies
101{
103}
104namespace Assemblies
105{
107}
108namespace Assemblies
109{
111}
112namespace Assemblies
113{
114 class SubsetBuilder;
115}
116namespace Assemblies
117{
118 class SubsetCollectionImpl;
122 class NXOPENCPP_ASSEMBLIESEXPORT SubsetCollection : public NXOpen::TaggedObjectCollection
123 {
124 private: SubsetCollectionImpl * m_subsetcollection_impl;
129 public:
131 tag_t Tag() const;
132 public: ~SubsetCollection();
134 //lint -sem(NXOpen::Assemblies::SubsetCollection::iterator::copy,initializer)
135 class iterator : public std::iterator<std::forward_iterator_tag, NXOpen::Assemblies::Subset *>
136 {
137 public:
139 iterator() : m_context(nullptr), m_current(NULL_TAG)
140 {
141 // coverity[uninit_member]
142 } //lint !e1401 m_state is not initialized
143
144 explicit iterator(NXOpen::Assemblies::SubsetCollection *context) : m_context(context), m_current(NULL_TAG)
145 {
146 // coverity[uninit_member]
147 }//lint !e1401 m_state is not initialized
149
150 iterator(const iterator &other): m_context(nullptr), m_current(NULL_TAG)
151 {
152 copy(other);
153 }
154
155 iterator &operator =(const iterator &other)
156 {
157 if (&other != this)
158 copy(other);
159 return *this;
160 }
161
162 bool operator ==(const iterator &other) const
163 {
164 return m_current == other.m_current && m_context == other.m_context;
165 }
166
167 bool operator !=(const iterator &other) const
168 {
169 return !operator == (other);
170 }
171
172 NXOPENCPP_ASSEMBLIESEXPORT value_type operator * () const;
174 iterator & operator ++()
175 {
176 next();
177 return *this;
178 }
179
180 iterator operator ++(int)
181 {
182 iterator tmp(*this);
183 ++*this;
184 return tmp;
185 }
186 private:
187 void copy(const iterator &other)
188 {
189 m_context = other.m_context;
190 m_current = other.m_current;
191 for (int i = 0; i < sizeof(m_state)/sizeof(m_state[0]); i++)
192 m_state[i] = other.m_state[i];
193 }
194 NXOPENCPP_ASSEMBLIESEXPORT void next();
196 tag_t m_current;
197 unsigned int m_state[8];
198 };
199
203 {
204 return iterator(this);
205 }
206
210 (
212 );
217 (
218 NXOpen::Assemblies::BoxSearchTerm * boxSearchTerm
219 );
224 (
225 NXOpen::Assemblies::PlaneSearchTerm * planeSearchTerm
226 );
231 (
232 NXOpen::Assemblies::AttributeSearchTerm * attributeSearchTerm
233 );
238 (
239 NXOpen::Assemblies::ProximitySearchTerm * proximitySearchTerm
240 );
245 (
246 NXOpen::Assemblies::RunContentProximitySearchTerm * runContentProximitySearchTerm
247 );
252 (
253 NXOpen::Assemblies::PositioningTask * positioningTask
254 );
260 (
261 NXOpen::Assemblies::SubsetBuilder * subsetBuilderTag
262 );
268 (
269 NXOpen::Assemblies::SubsetBuilder * subsetBuilderTag
270 );
271 }; //lint !e1712 类未定义默认构造函数
272 }
273}
274#ifdef _MSC_VER
275#pragma warning(pop)
276#endif
277#ifdef __GNUC__
278#ifndef NX_NO_GCC_DEPRECATION_WARNINGS
279#pragma GCC diagnostic warning "-Wdeprecated-declarations"
280#endif
281#endif
282#undef EXPORTLIBRARY