NX Open C++ 参考指南 2406 v1.1
载入中...
搜索中...
未找到
Tooling_CalculateAreaCollection.hxx
1//--------------------------------------------------------------------------
2// Copyright 2024 Siemens
3//--------------------------------------------------------------------------
4// Header for C++ interface to JA API
5//--------------------------------------------------------------------------
6//
7// Source File:
8// Tooling_CalculateAreaCollection.ja
9//
10// Generated by:
11// apiwrap
12//
13// WARNING:
14// This file is automatically generated - do not edit by hand
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_tooling_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 Tooling
35 {
37 }
38 namespace Tooling
39 {
40 class ToolingManager;
41 }
42 namespace Tooling
43 {
45 }
46 namespace Tooling
47 {
48 class CalculateAreaCollectionImpl;
52 class NXOPENCPP_TOOLINGEXPORT CalculateAreaCollection : public NXOpen::TaggedObjectCollection
53 {
54 private: CalculateAreaCollectionImpl * m_calculateareacollection_impl;
55 private: NXOpen::Tooling::ToolingManager* m_owner;
59 public:
61 tag_t Tag() const;
64 //lint -sem(NXOpen::Tooling::CalculateAreaCollection::iterator::copy,initializer)
65 class iterator : public std::iterator<std::forward_iterator_tag, NXOpen::Tooling::CalculateAreaBuilder *>
66 {
67 public:
69 iterator() : m_context(nullptr), m_current(NULL_TAG)
70 {
71 // coverity[uninit_member]
72 } //lint !e1401 m_state is not initialized
73
74 explicit iterator(NXOpen::Tooling::CalculateAreaCollection *context) : m_context(context), m_current(NULL_TAG)
75 {
76 // coverity[uninit_member]
77 }//lint !e1401 m_state is not initialized
79
80 iterator(const iterator &other): m_context(nullptr), m_current(NULL_TAG)
81 {
82 copy(other);
83 }
84
85 iterator &operator =(const iterator &other)
86 {
87 if (&other != this)
88 copy(other);
89 return *this;
90 }
91
92 bool operator ==(const iterator &other) const
93 {
94 return m_current == other.m_current && m_context == other.m_context;
95 }
96
97 bool operator !=(const iterator &other) const
98 {
99 return !operator == (other);
100 }
101
102 NXOPENCPP_TOOLINGEXPORT value_type operator * () const;
104 iterator & operator ++()
105 {
106 next();
107 return *this;
108 }
109
110 iterator operator ++(int)
111 {
112 iterator tmp(*this);
113 ++*this;
114 return tmp;
115 }
116 private:
117 void copy(const iterator &other)
118 {
119 m_context = other.m_context;
120 m_current = other.m_current;
121 for (int i = 0; i < sizeof(m_state)/sizeof(m_state[0]); i++)
122 m_state[i] = other.m_state[i];
123 }
124 NXOPENCPP_TOOLINGEXPORT void next();
126 tag_t m_current;
127 unsigned int m_state[8];
128 };
129
133 {
134 return iterator(this);
135 }
136
140 (
141 );
142 }; //lint !e1712 default constructor not defined for class
143 }
144}
145#ifdef _MSC_VER
146#pragma warning(pop)
147#endif
148#ifdef __GNUC__
149#ifndef NX_NO_GCC_DEPRECATION_WARNINGS
150#pragma GCC diagnostic warning "-Wdeprecated-declarations"
151#endif
152#endif
153#undef EXPORTLIBRARY