VPTissue Reference Manual
CoreData.h
Go to the documentation of this file.
1 #ifndef SIMPT_SIM_CORE_DATA_H_INCLUDED
2 #define SIMPT_SIM_CORE_DATA_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 "TimeData.h"
23 #include "bio/Tissue.h"
24 
25 #include <boost/property_tree/ptree_fwd.hpp>
26 #include <functional>
27 #include <memory>
28 #include <unordered_map>
29 
30 namespace SimPT_Sim {
31 
32 class Mesh;
33 class RandomEngine;
34 
38 struct CoreData
39 {
40  CoreData() {}
41 
42  using TransferMapType = std::unordered_map<unsigned int, std::tuple<double,double> >; // tuple, first value of coupled cell, second diffusion parameter D
43 
44 
45  std::shared_ptr<TransferMapType> m_coupled_sim_transfer_data;
46  std::shared_ptr<Mesh> m_mesh;
47  std::shared_ptr<boost::property_tree::ptree> m_parameters;
48  std::shared_ptr<RandomEngine> m_random_engine;
49  std::shared_ptr<TimeData> m_time_data;
51 
53  bool Check() const
54  {
55  return (m_mesh != nullptr) && (m_parameters != nullptr)
56  && (m_random_engine != nullptr) && (m_time_data != nullptr) ;
57  }
58 };
59 
60 } // namespace
61 
62 #endif // end_of_include_guard
Core data with mesh, parameters, random engine and time data.
Definition: CoreData.h:38
Tissue data with mesh, cell attributes, node attributes and wall attributes.
Definition: Tissue.h:32
Namespace for the core simulator.
Time data used during model execution.
Tissue m_tissue
For future use.
Definition: CoreData.h:50
Tissue components used during model execution.
bool Check() const
Verify all pointers non-null.
Definition: CoreData.h:53