Teamcenter C++ API Reference  2312
Mem0MemoryBlock.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, Mem0MemoryBlock
12  Filename: Mem0MemoryBlock.hxx
13  Module: Mem0memmgt
14  @BMIDE autogenerated
15 ==================================================================================================*/
16 
17 #ifndef CCDM__MEM0MEMORYBLOCK__HXX
18 #define CCDM__MEM0MEMORYBLOCK__HXX
19 
20 #include <string>
21 #include <unidefs.h>
22 #include <vector>
23 #include <common/tc_deprecation_macros.h>
25 
26 #include <Mem0memmgt/libmem0memmgt_exports.h>
27 
28 namespace ccdm
29 {
30  class Mem0MemoryBlock;
31 }
32 namespace ccdm
33 {
34  class Mem0MemoryBlockImpl;
35 }
36 namespace ccdm
37 {
38  class Mem0MemoryBlockDelegate;
39 }
40 namespace ccdm
41 {
42  class Mem0MemoryBlockDispatch;
43 }
44 namespace ccdm
45 {
46  class Mem0MemoryBlockGenImpl;
47 }
48 namespace Teamcenter
49 {
50  class RootObjectImpl;
51 }
52 
53 class MEM0MEMMGT_API ccdm::Mem0MemoryBlock
55 {
56 public:
57 
62  static const std::string& getInterfaceName();
63 
64 
72  int getMem0BlockName( std::string &value, bool &isNull ) const;
73 
81  int getMem0HeaderObject( tag_t &value, bool &isNull ) const;
82 
90  int getMem0MemoryBlocks( std::vector< tag_t > &values, std::vector< int > &isNull ) const;
91 
99  int getMem0MemoryRecords( std::vector< tag_t > &values, std::vector< int > &isNull ) const;
100 
108  int getMem0StartAddress( std::string &value, bool &isNull ) const;
109 
117  int getMem0TrailerObject( tag_t &value, bool &isNull ) const;
118 
126  int setMem0BlockName( const std::string &value, bool isNull=false );
127 
135  int setMem0HeaderObject( const tag_t &value, bool isNull=false );
136 
144  int setMem0MemoryBlocks( const std::vector< tag_t > &values, const std::vector< int > *isNull=0 );
145 
153  int setMem0MemoryRecords( const std::vector< tag_t > &values, const std::vector< int > *isNull=0 );
154 
162  int setMem0StartAddress( const std::string &value, bool isNull=false );
163 
171  int setMem0TrailerObject( const tag_t &value, bool isNull=false );
172 protected:
173  // Method to initialize
174  virtual void initialize( ::Teamcenter::RootObjectImpl* impl );
175 
179  Mem0MemoryBlock();
180 
184  virtual ~Mem0MemoryBlock();
185 
186 private:
187  // Getter method for the Implementation Object
188  Mem0MemoryBlockImpl* getMem0MemoryBlockImpl() const;
189  // Setter method for the Implementation Object
190  ::Teamcenter::RootObjectImpl* setMem0MemoryBlockImpl( ::Teamcenter::RootObjectImpl* impl );
191 
192  // Method to set the delete impl boolean
193  void setDeleteImpl( bool del );
194 
195  // Pointer to the Implementation object
196  Mem0MemoryBlockImpl* m_mem0memoryblockImpl;
197 
198  // Flag to indicate if Implementation object needs to be deleted
200 
204  static std::string name;
205 
212 
213  friend class Mem0MemoryBlockDelegate;
214  friend class Mem0MemoryBlockGenImpl;
215 };
216 
217 #include <Mem0memmgt/libmem0memmgt_undef.h>
218 #endif // CCDM__MEM0MEMORYBLOCK__HXX