NX Open C++ 参考指南 2406 v1.1
载入中...
搜索中...
未找到
Die_DieCollection.hxx
1//--------------------------------------------------------------------------
2// Copyright 2024 Siemens
3//--------------------------------------------------------------------------
4// C++接口头文件 - 对应JA API
5//--------------------------------------------------------------------------
6//
7// 源文件:
8// Die_DieCollection.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/TaggedObjectCollection.hxx>
23#include <NXOpen/TaggedObject.hxx>
24#include <NXOpen/libnxopencpp_die_exports.hxx>
25#ifdef _MSC_VER
26#pragma warning(push)
27#pragma warning(disable:4996)
28#endif
29#ifdef __GNUC__
30#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
31#endif
32namespace NXOpen
33{
34 namespace Die
35 {
36 class DieCollection;
37 }
38 namespace Features
39 {
41 }
42 namespace Features
43 {
44 class Feature;
45 }
46 namespace Die
47 {
48 class AddSurfBuilder;
49 }
50 namespace Die
51 {
53 }
54 namespace Die
55 {
57 }
58 namespace Die
59 {
60 class CastRelief;
61 }
62 namespace Die
63 {
65 }
66 namespace Die
67 {
68 class ClampingSlot;
69 }
70 namespace Die
71 {
73 }
74 namespace Die
75 {
76 class Clearance;
77 }
78 namespace Die
79 {
80 class ClearanceBuilder;
81 }
82 namespace Die
83 {
85 }
86 namespace Die
87 {
89 }
90 namespace Die
91 {
93 }
94 namespace Die
95 {
97 }
98namespace Die
99 {
100 class DieLimitsBuilder;
101 }
102 namespace Die
103 {
104 class DieLocationBuilder;
105 }
106 namespace Die
107 {
109 }
110 namespace Die
111 {
112 class DiePlaneBuilder;
113 }
114 namespace Die
115 {
116 class DieShoe;
117 }
118 namespace Die
119 {
120 class DieShoeBuilder;
121 }
122 namespace Die
123 {
124 class DrawBead;
125 }
126 namespace Die
127 {
128 class DrawBeadBuilder;
129 }
130 namespace Die
131 {
133 }
134 namespace Die
135 {
136 class FaceSheetBuilder;
137 }
138 namespace Die
139 {
140 class FillArea;
141 }
142 namespace Die
143 {
144 class FillAreaBuilder;
145 }
146 namespace Die
147 {
148 class FillBuilder;
149 }
150 namespace Die
151 {
153 }
154 namespace Die
155 {
157 }
158 namespace Die
159 {
160 class FlangeTaskBuilder;
161 }
162 namespace Die
163 {
164 class FormTaskBuilder;
165 }
166 namespace Die
167 {
168 class HandlingCore;
169 }
170 namespace Die
171 {
173 }
174 namespace Die
175 {
176 class Heelpost;
177 }
178 namespace Die
179 {
180 class HeelpostBuilder;
181 }
182 namespace Die
183 {
184 class Keyway;
185 }
186 namespace Die
187 {
188 class KeywayBuilder;
189 }
190 namespace Die
191 {
192 class LineupBuilder;
193 }
194 namespace Die
195 {
196 class MachineRelief;
197 }
198namespace Die
199 {
201 }
202 namespace Die
203 {
205 }
206 namespace Die
207 {
208 class PierceTaskBuilder;
209 }
210 namespace Die
211 {
212 class QuickBinderBuilder;
213 }
214 namespace Die
215 {
217 }
218 namespace Die
219 {
220 class RotorBuilder;
221 }
222 namespace Die
223 {
225 }
226 namespace Die
227 {
229 }
230 namespace Die
231 {
232 class SteelInsertBuilder;
233 }
234 namespace Die
235 {
237 }
238 namespace Die
239 {
241 }
242 namespace Die
243 {
245 }
246 namespace Die
247 {
248 class TrimTaskBuilder;
249 }
250 namespace Die
251 {
253 }
254 namespace Features
255 {
257 }
258 namespace Features
259 {
260 class QuickBinder;
261 }
262 namespace Die
263 {
264 class DieCollectionImpl;
268 class NXOPENCPP_DIEEXPORT DieCollection : public NXOpen::TaggedObjectCollection
269 {
270 private: DieCollectionImpl * m_diecollection_impl;
271 private: NXOpen::Features::FeatureCollection* m_owner;
273 public: explicit DieCollection(NXOpen::Features::FeatureCollection *owner);
275 public:
277 tag_t Tag() const;
278 public: ~DieCollection();
280 //lint -sem(NXOpen::Die::DieCollection::iterator::copy,initializer)
281 class iterator : public std::iterator<std::forward_iterator_tag, NXOpen::Features::Feature *>
282 {
283 public:
285 iterator() : m_context(nullptr), m_current(NULL_TAG)
286 {
287 // coverity[uninit_member]
288 } //lint !e1401 m_state is not initialized
289
290 explicit iterator(NXOpen::Die::DieCollection *context) : m_context(context), m_current(NULL_TAG)
291 {
292 // coverity[uninit_member]
293 }//lint !e1401 m_state is not initialized
295
296 iterator(const iterator &other): m_context(nullptr), m_current(NULL_TAG)
297{
298 copy(other);
299 }
300
301 iterator &operator =(const iterator &other)
302 {
303 if (&other != this)
304 copy(other);
305 return *this;
306 }
307
308 bool operator ==(const iterator &other) const
309 {
310 return m_current == other.m_current && m_context == other.m_context;
311 }
312
313 bool operator !=(const iterator &other) const
314 {
315 return !operator == (other);
316 }
317
318 NXOPENCPP_DIEEXPORT value_type operator * () const;
320 iterator & operator ++()
321 {
322 next();
323 return *this;
324 }
325
326 iterator operator ++(int)
327 {
328 iterator tmp(*this);
329 ++*this;
330 return tmp;
331 }
332 private:
333 void copy(const iterator &other)
334 {
335 m_context = other.m_context;
336 m_current = other.m_current;
337 for (int i = 0; i < sizeof(m_state)/sizeof(m_state[0]); i++)
338 m_state[i] = other.m_state[i];
339 }
340 NXOPENCPP_DIEEXPORT void next();
342 tag_t m_current;
343 unsigned int m_state[8];
344 };
345
349 {
350 return iterator(this);
351 }
352
356 (
357 NXOpen::Features::Feature * drawDiePunch
358 );
363 (
364 NXOpen::Features::Feature * formTask
365 );
370 (
372 );
377 (
378 NXOpen::Features::Feature * flangeTask
379 );
384 (
385 NXOpen::Features::Feature * trimTask
386 );
391 (
392 NXOpen::Features::Feature * pierceTask
393 );
398 (
399 );
404 (
405 NXOpen::Features::Feature * addSection
406 );
411 (
413 );
418 (
420 );
425 (
426 NXOpen::Features::Feature * outcurves
427 );
432 (
433 NXOpen::Features::Feature * steelInsert
434 );
439 (
440 NXOpen::Features::QuickBinder * quickBinder
441 );
446 (
447 NXOpen::Features::Feature * quickBinderWrap
448 );
453 (
454 NXOpen::Features::Feature * trimLineDevelopment
455 );
460 (
462 );
467 (
468 NXOpen::Features::Feature * faceSheet
469 );
474 (
475 NXOpen::Features::Feature * nullFeature
476 );
481 (
482 NXOpen::Die::DieShoe * dieShoe
483 );
488 (
489 );
494 (
495 );
500 (
502 );
507 (
509 );
514 (
515 NXOpen::Die::ClampingSlot * clampingSlot
516 );
521 (
522 NXOpen::Features::CompensateRoughData * compensateRoughData
523 );
528 (
529 NXOpen::Die::Keyway * keyway
530 );
535 (
536 NXOpen::Die::Heelpost * heelpost
537 );
542 (
543 NXOpen::Die::CastRelief * castRelief
544 );
549 (
550 );
555 (
556 );
561 (
562 );
567 (
568 NXOpen::Features::Feature * feature ,
569 bool allowSelection ,
570 bool allowNewPoint ,
571 bool allowNewCoordinateSystem ,
572 bool allowNewVector ,
573 bool allowNewPlane ,
574 bool isRequired ,
575 bool allowMultipleSelection
576 );
581 (
582 NXOpen::Die::FillArea * fillArea
583 );
588 (
589 NXOpen::Die::FingerClearanceNotch * fingerClearanceNotch
590 );
595 (
596 NXOpen::Die::Clearance * clearance
597 );
602 (
603 NXOpen::Die::HandlingCore * handlingCore
604 );
609 (
610 NXOpen::Die::MachineRelief * machineRelief
611 );
616 (
617 NXOpen::Die::DrawBead * drawBead
618 );
623 (
624 NXOpen::Die::SpringbackCompensation * springbackCompensation
625 );
630 (
631 );
632 }; //lint !e1712 default constructor not defined for class
633 }
634}
635#ifdef _MSC_VER
636#pragma warning(pop)
637#endif
638#ifdef __GNUC__
639#ifndef NX_NO_GCC_DEPRECATION_WARNINGS
640#pragma GCC diagnostic warning "-Wdeprecated-declarations"
641#endif
642#endif
643#undef EXPORTLIBRARY