Teamcenter C++ API Reference  2312
CMImplements.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, CMImplements
12  Filename: CMImplements.hxx
13  Module: cm
14  @BMIDE autogenerated
15 ==================================================================================================*/
16 
17 #ifndef TEAMCENTER__CMIMPLEMENTS__HXX
18 #define TEAMCENTER__CMIMPLEMENTS__HXX
19 
20 #include <common/tc_deprecation_macros.h>
21 #include <cm/CMRelation.hxx>
22 
23 #include <cm/libcm_exports.h>
24 
25 namespace Teamcenter
26 {
27  class CMImplements;
28 }
29 namespace Teamcenter
30 {
31  class CMImplementsImpl;
32 }
33 namespace Teamcenter
34 {
35  class CMImplementsDelegate;
36 }
37 namespace Teamcenter
38 {
39  class CMImplementsDispatch;
40 }
41 namespace Teamcenter
42 {
43  class CMImplementsGenImpl;
44 }
45 namespace Teamcenter
46 {
47  class RootObjectImpl;
48 }
49 
50 class CM_API Teamcenter::CMImplements
52 {
53 public:
54 
59  static const std::string& getInterfaceName();
60 
61 protected:
62  // Method to initialize
63  virtual void initialize( ::Teamcenter::RootObjectImpl* impl );
64 
68  CMImplements();
69 
73  virtual ~CMImplements();
74 
75 private:
76  // Getter method for the Implementation Object
77  CMImplementsImpl* getCMImplementsImpl() const;
78  // Setter method for the Implementation Object
79  ::Teamcenter::RootObjectImpl* setCMImplementsImpl( ::Teamcenter::RootObjectImpl* impl );
80 
81  // Method to set the delete impl boolean
82  void setDeleteImpl( bool del );
83 
84  // Pointer to the Implementation object
85  CMImplementsImpl* m_cmimplementsImpl;
86 
87  // Flag to indicate if Implementation object needs to be deleted
89 
93  static std::string name;
94 
99  CMImplements( const CMImplements& );
101 
102  friend class CMImplementsDelegate;
103  friend class CMImplementsGenImpl;
104 };
105 
106 #include <cm/libcm_undef.h>
107 #endif // TEAMCENTER__CMIMPLEMENTS__HXX