VPTissue Reference Manual
MBMBuilder.h
Go to the documentation of this file.
1 #ifndef MBMBUILDER_H_INCLUDED
2 #define MBMBUILDER_H_INCLUDED
3 /*
4  * Copyright 2011-2016 Universiteit Antwerpen
5  *
6  * Licensed under the EUPL, Version 1.1 or as soon they will be approved by
7  * the European Commission - subsequent versions of the EUPL (the "Licence");
8  * You may not use this work except in compliance with the Licence.
9  * You may obtain a copy of the Licence at: http://ec.europa.eu/idabc/eupl5
10  *
11  * Unless required by applicable law or agreed to in writing, software
12  * distributed under the Licence is distributed on an "AS IS" basis,
13  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14  * See the Licence for the specific language governing
15  * permissions and limitations under the Licence.
16  */
22 #include <memory>
23 
24 namespace SimPT_Sim {
25 
26 class Mesh;
27 class MeshState;
28 class Sim;
29 
34 {
35 public:
37  std::shared_ptr<Mesh> Build(const MeshState& mesh_state);
38 
39 private:
41  void BuildNodes(const MeshState& mesh_state);
42 
44  void BuildCells(const MeshState& mesh_state);
45 
47  void BuildBoundaryPolygon(const MeshState& mesh_state);
48 
50  void BuildWalls(const MeshState& mesh_state);
51 
53  unsigned int CalculateNumChemicals(const MeshState& mesh_state);
54 
56  void ConnectCellsToWalls(const MeshState& mesh_state);
57 
58 private:
60  std::shared_ptr<Mesh> m_mesh;
61 };
62 
63 }
64 
65 #endif // end_of_include_guard
66 
Namespace for the core simulator.
Contains the state of the whole Mesh at a given simulation step.
Definition: MeshState.h:41
MBMBDirector directs the Mesh building process using a MeshState object.
Definition: MBMBuilder.h:33