Teamcenter C++ API Reference  2312
BusinessObjectExtender.hxx
Go to the documentation of this file.
1 // ==================================================
2 // Copyright 2013.
3 // Siemens Product Lifecycle Management Software Inc.
4 // All Rights Reserved.
5 // ==================================================
6 
13 /* */
14 
15 #ifndef TEAMCENTER__BUSINESSOBJECTEXTENDER__HXX
16 #define TEAMCENTER__BUSINESSOBJECTEXTENDER__HXX
17 
18 #include <string>
19 #include <unidefs.h>
20 #include <vector>
21 #include <cstdarg>
22 
23 
24 #include <metaframework/Object.hxx>
26 #include <metaframework/RootObjectImpl.hxx>
27 
28 #include <metaframework/libmetaframework_exports.h>
29 
40 namespace Teamcenter
41 {
42  class BusinessObjectExtender;
43  class BusinessObjectExtenderImpl;
44  class BusinessObjectRegistryImpl;
45  class BusinessObjectExtenderRegistryImpl;
46  class BusinessObject;
47 }
48 
58 class METAFRAMEWORK_API Teamcenter::BusinessObjectExtender : public Teamcenter::Object
59 {
60 public:
61 
65  explicit BusinessObjectExtender(
66  tag_t owningObjectTag
67  );
68 
72  virtual ~BusinessObjectExtender() = 0;
73 
79  static const std::string& getExtenderInterfaceName();
80 
84  virtual void initialize(
85  RootObjectImpl * impl = 0
86  );
87 
91  void setTypeTag(
92  tag_t tag
93  );
94 
100  tag_t getTag() const;
101 
107  tag_t getTypeTag() const;
108 
109 private:
113  static std::string m_name;
114 
119 
124 
125 
138 
139 };
140 
143 #include <metaframework/libmetaframework_undef.h>
144 #endif // TEAMCENTER__BUSINESSOBJECTEXTENDER__HXX