NX Open C++ 参考指南 2406 v1.1
载入中...
搜索中...
未找到
Rule_RuleInstance.hxx
1//--------------------------------------------------------------------------
2// Copyright 2024 Siemens
3//--------------------------------------------------------------------------
4// JA API的C++接口头文件
5//--------------------------------------------------------------------------
6//
7// 源文件:
8// Rule_RuleInstance.ja
9//
10// 生成工具:
11// apiwrap
12//
13// 警告:
14// 此文件为自动生成,请勿手动编辑
15//
16#pragma once
17#include <NXOpen/NXDeprecation.hxx>
18#include <vector>
19#include <NXOpen/NXString.hxx>
20#include <NXOpen/Callback.hxx>
21#include <NXOpen/NXObject.hxx>
22#include <NXOpen/libruleopencpp_exports.hxx>
23#ifdef _MSC_VER
24#pragma warning(push)
25#pragma warning(disable:4996)
26#endif
27#ifdef __GNUC__
28#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
29#endif
30namespace NXOpen
31{
32 namespace Rule
33 {
34 class RuleInstance;
35 }
36 namespace Assemblies
37 {
38 class Component;
39 }
40 class NXObject;
41 namespace Rule
42 {
43 class Node;
44 }
45 namespace Rule
46 {
47 class NodeInput;
48 }
49 namespace Rule
50 {
51 class NodeOutput;
52 }
53 namespace Rule
54 {
55 class RuleObject;
56 }
57 namespace Rule
58 {
60 }
61 namespace Rule
62 {
63 class _RuleInstanceBuilder;
64 class RuleInstanceImpl;
68 class RULEOPENCPPEXPORT RuleInstance : public NXOpen::NXObject
69 {
79 private: RuleInstanceImpl * m_ruleinstance_impl;
80 private: friend class _RuleInstanceBuilder;
81 protected: RuleInstance();
82 public: ~RuleInstance();
86 public: int Execute
87 (
88 );
93 (
94 );
98 public: void AddNodeInput
99 (
100 NXOpen::Rule::Node * node ,
101 NXOpen::Rule::NodeInput * nodeInput
102 );
106 public: NXOpen::Rule::RuleObject * RuleObject
107 (
108 );
112 public: NXOpen::Rule::NodeInput * GetNodeInput
113 (
114 NXOpen::Rule::Node * inputNode
115 );
119 public: void GetAllOutput
120 (
121 std::vector<NXOpen::Rule::NodeOutput *> & allOutput
122 );
126 public: void Destroy
127 (
128 );
133 (
134 NXOpen::Rule::Node * node ,
135 const std::vector<NXOpen::NXObject *> & objectTags
136 );
141 (
142 NXOpen::Rule::Node * node ,
143 const std::vector<int> & intValues
144 );
149 (
150 NXOpen::Rule::Node * node ,
151 const std::vector<double> & doubleValues
152 );
157 (
158 NXOpen::Rule::Node * node ,
159 const std::vector<bool> & boolValues
160 );
165 (
166 NXOpen::Rule::Node * node ,
167 std::vector<NXString> & stringValues
168 );
173 (
174 NXOpen::Rule::Node * node ,
175 double red ,
176 double green ,
177 double blue
178 );
183 (
184 NXOpen::Rule::Node * node ,
185 const NXString & filename
186 );
191 (
192 NXOpen::Rule::Node * node ,
193 const char * filename
194 );
199 (
200 NXOpen::Rule::Node * node ,
201 const NXString & attrName ,
202 const NXString & attrValue ,
203 NXOpen::NXObject * objectTag
204 );
209 (
210 NXOpen::Rule::Node * node ,
211 const char * attrName ,
212 const char * attrValue ,
213 NXOpen::NXObject * objectTag
214 );
219 (
220 NXOpen::Rule::Node * node ,
221 std::vector<NXString> & attrNames ,
222 std::vector<NXString> & attrValues ,
223 NXOpen::NXObject * objectTag
224 );
229 (
230 NXOpen::Rule::Node * node ,
231 std::vector<NXString> & stringValues
232 );
236 public: void AddNodeOutput
237 (
238 NXOpen::Rule::Node * node ,
239 NXOpen::Rule::NodeOutput * nodeOutput
240 );
244 public: void RuleOutputReset
245 (
246 int resetOption
247 );
252 (
253 );
257 public: void SetInstanceName
258 (
259 const NXString & name
260 );
265 (
266 const char * name
267 );
271 public: bool IsOutOfDate
272 (
273 );
278 (
279 );
281
285 (
286 );
289
292 public: void SetExecutionScope
293 (
295 );
298
301 public: void SetPartsForExecution
302 (
303 const std::vector<NXOpen::Assemblies::Component *> & parts
304 );
307
311 public: NX_DEPRECATED("Deprecated in NX2306.0.0. Use JA_RuleInstance_CreatePmiDataNodeOutput instead.") NXOpen::Rule::NodeOutput * CreateSelectPmiDataNodeOutput
312 (
313 NXOpen::Rule::Node * node ,
314 NXOpen::NXObject * pmiTag ,
315 const std::vector<int> & properties
316 );
319
322 public: NXOpen::Rule::NodeOutput * CreatePmiDataNodeOutput
323 (
324 NXOpen::Rule::Node * node ,
325 const std::vector<NXOpen::NXObject *> & objectTags
326 );
329
332 public: NXOpen::Rule::NodeOutput * CreateColumnConfigurationNodeOutput
333 (
334 NXOpen::Rule::Node * node ,
335 std::vector<NXString> & columnAttributeDetails ,
336 std::vector<NXString> & columnNames
337 );
340
343 public: NXOpen::Rule::NodeOutput * CreateElementTableColumnConfigurationNodeOutput
344 (
345 NXOpen::Rule::Node * node ,
346 const NXString & elementType ,
347 std::vector<NXString> & attributeTitles ,
348 std::vector<NXString> & columnNames
349 );
353 NXOpen::Rule::NodeOutput * CreateElementTableColumnConfigurationNodeOutput
354 (
355 NXOpen::Rule::Node * node ,
356 const char * elementType ,
357 std::vector<NXString> & attributeTitles ,
358 std::vector<NXString> & columnNames
359 );
361
365 };
366 }
367}
368#ifdef _MSC_VER
369#pragma warning(pop)
370#endif
371#ifdef __GNUC__
372#ifndef NX_NO_GCC_DEPRECATION_WARNINGS
373#pragma GCC diagnostic warning "-Wdeprecated-declarations"
374#endif
375#endif
376#undef EXPORTLIBRARY