C++ mpi module for stochmagnet_main Package
RAND_Object.h
1 #ifndef RAND_Object_H
2 #define RAND_Object_H
3 
4 //inherited header
5 #include "CORE_Object.h"
6 
7 //smart pointes header
8 #include "shared_pointer.h"
9 
10 //std::array header
11 #include <array>
12 
13 //std::valarray header
14 #include <valarray>
15 
24 class RAND_Object : public virtual CORE_Object {
25 
26 
27 private:
28  //attributes
29 private:
30  //associations
31 protected:
32  //builders
33 
36  RAND_Object(void) {
37  }
38  //deleters
41  virtual ~RAND_Object(void) {
42  }
43 
44 public:
45  //methods
46 
47 
48  //MEMORY
49  //======
57  virtual tMemSize getMemorySize() const override {
58  return sizeof(*this)+getContentsMemorySize();
59  }
60 
69  virtual tMemSize getContentsMemorySize() const override {
71  return mem;
72  }
73 
74 
75 };
76 
77 
78 
79 
80 #endif
abstract base class for most classes.
Definition: CORE_Object.h:65
virtual tMemSize getContentsMemorySize() const
return nthe memory size of the included associations
Definition: CORE_Object.h:278
This class is the base class of all the parser package.
Definition: RAND_Object.h:24
virtual ~RAND_Object(void)
delete the class
Definition: RAND_Object.h:41
virtual tMemSize getContentsMemorySize() const override
return nthe memory size of the included associations
Definition: RAND_Object.h:69
virtual tMemSize getMemorySize() const override
return the memory size of the class
Definition: RAND_Object.h:57
RAND_Object(void)
create the class
Definition: RAND_Object.h:36