KurusView  1.0
MTetrahedron.h
Go to the documentation of this file.
1 
7 #ifndef INC_KURUSVIEW_MTETRAHEDRON_H
8 #define INC_KURUSVIEW_MTETRAHEDRON_H
9 
10 
11 #include "MCell.h"
12 
14 class MTetrahedron : public MCell {
15 public:
16 
23  MTetrahedron(const std::vector<std::shared_ptr<MVector>> &vertices, const std::shared_ptr<MMaterial> &material,
24  long int id);
25 
29  MTetrahedron() = delete;
30 
36  ~MTetrahedron() = default; // this should call the base destructor regardless
37 
38 private:
43  double calcVolume() const override;
44 
51  double calcWeight() const override;
52 
63  std::shared_ptr<MVector> calcCentreOfGrav() const override;
64 };
65 
66 
67 #endif //INC_KURUSVIEW_MTETRAHEDRON_H
~MTetrahedron()=default
default destructor - wraps MCell destructor (decrements Instance Count)
Header file for MCell base class.
MTetrahedron()=delete
deleted default constructor. See MCell default ctor for reference.
MTetrahedron object - inherits from MCell.
Definition: MTetrahedron.h:14
MCell - Interface (abstract) class for all the cell shapes.
Definition: MCell.h:24