Teamcenter C++ API Reference  2312
Mpr0PlanElement.hxx
Go to the documentation of this file.
1 //Copyright 2022 Siemens Digital Industries Software
2 //==================================================
3 //Copyright $2023.
4 //Siemens Product Lifecycle Management Software Inc.
5 //All Rights Reserved.
6 //==================================================
7 //Copyright 2022 Siemens Digital Industries Software
8 
9 /*==================================================================================================
10 File description:
11  This file contains the declaration for the Business Object, Mpr0PlanElement
12  Filename: Mpr0PlanElement.hxx
13  Module: Mpr0process
14  @BMIDE autogenerated
15 ==================================================================================================*/
16 
17 #ifndef CMTPROCESS__MPR0PLANELEMENT__HXX
18 #define CMTPROCESS__MPR0PLANELEMENT__HXX
19 
20 #include <vector>
21 #include <unidefs.h>
22 #include <common/tc_deprecation_macros.h>
24 
25 #include <Mpr0process/libmpr0process_exports.h>
26 
27 namespace cmtprocess
28 {
29  class Mpr0PlanElement;
30 }
31 namespace cmtprocess
32 {
33  class Mpr0PlanElementImpl;
34 }
35 namespace cmtprocess
36 {
37  class Mpr0PlanElementDelegate;
38 }
39 namespace cmtprocess
40 {
41  class Mpr0PlanElementDispatch;
42 }
43 namespace cmtprocess
44 {
45  class Mpr0PlanElementGenImpl;
46 }
47 namespace Teamcenter
48 {
49  class RootObjectImpl;
50 }
51 
52 class MPR0PROCESS_API cmtprocess::Mpr0PlanElement
54 {
55 public:
56 
61  static const std::string& getInterfaceName();
62 
63 
71  int getMpr0numberOfAssignedParts( int &value, bool &isNull ) const;
72 
80  int getMpr0numOfAssignedFeatures( int &value, bool &isNull ) const;
81 
89  int getMpr0predecessors( std::vector< tag_t > &values, std::vector< int > &isNull ) const;
90 
100  int mpr0AssignObjects( const std::vector< tag_t > *assignedObjects, const tag_t assignmentType, std::vector< tag_t > *assignmentTypesOutput, std::vector< tag_t > *assignObjectsOutput );
101 
112  int mpr0ReassignObjects( const tag_t unassignFrom, const tag_t assignedObject, const tag_t currentAssignmentType, const tag_t newAssignmentType, tag_t *createdAssignmentType );
113 
123  int mpr0UnassignObjects( const std::vector< tag_t > *assignedObjects, const std::vector< tag_t > *assignmentTypes, std::vector< tag_t > *unassignObjects, std::vector< tag_t > *assignmentTypesOutput );
124 
133  int mpr0UpdateAssignment( const tag_t assignedObject, const tag_t currentAssignmentType, const tag_t newAssignmentType );
134 protected:
135  // Method to initialize
136  virtual void initialize( ::Teamcenter::RootObjectImpl* impl );
137 
141  Mpr0PlanElement();
142 
146  virtual ~Mpr0PlanElement();
147 
148 private:
149  // Getter method for the Implementation Object
150  Mpr0PlanElementImpl* getMpr0PlanElementImpl() const;
151  // Setter method for the Implementation Object
152  ::Teamcenter::RootObjectImpl* setMpr0PlanElementImpl( ::Teamcenter::RootObjectImpl* impl );
153 
154  // Method to set the delete impl boolean
155  void setDeleteImpl( bool del );
156 
157  // Pointer to the Implementation object
158  Mpr0PlanElementImpl* m_mpr0planelementImpl;
159 
160  // Flag to indicate if Implementation object needs to be deleted
162 
166  static std::string name;
167 
174 
175  friend class Mpr0PlanElementDelegate;
176  friend class Mpr0PlanElementGenImpl;
177 };
178 
179 #include <Mpr0process/libmpr0process_undef.h>
180 #endif // CMTPROCESS__MPR0PLANELEMENT__HXX