VPTissue Reference Manual
Default/components/cell_color/factories.cpp
Go to the documentation of this file.
1 /*
2  * Copyright 2011-2016 Universiteit Antwerpen
3  *
4  * Licensed under the EUPL, Version 1.1 or as soon they will be approved by
5  * the European Commission - subsequent versions of the EUPL (the "Licence");
6  * You may not use this work except in compliance with the Licence.
7  * You may obtain a copy of the Licence at: http://ec.europa.eu/idabc/eupl5
8  *
9  * Unless required by applicable law or agreed to in writing, software
10  * distributed under the Licence is distributed on an "AS IS" basis,
11  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12  * See the Licence for the specific language governing
13  * permissions and limitations under the Licence.
14  */
20 #include "factories.h"
21 
22 #include "AuxinPIN1.h"
23 #include "ChemBlue.h"
24 #include "ChemGreen.h"
25 #include "Meinhardt.h"
26 #include "SimplyRed.h"
27 #include "Size.h"
28 #include "TipGrowth.h"
29 #include "Wortel.h"
30 #include <boost/functional/value_factory.hpp>
31 #include <functional>
32 #include <utility>
33 
34 using namespace std;
35 using std::placeholders::_1;
36 
37 namespace SimPT_Default {
38 namespace CellColor {
39 
40 const typename ComponentTraits<CellColorTag>::MapType g_component_factories
41 {{
42  std::make_pair("auxinpin1", boost::value_factory<AuxinPIN1>()),
43  std::make_pair("chem_blue_0", bind(boost::value_factory<ChemBlue>(), _1, 0U)),
44  std::make_pair("chem_blue_1", bind(boost::value_factory<ChemBlue>(), _1, 1U)),
45  std::make_pair("chem_blue_2", bind(boost::value_factory<ChemBlue>(), _1, 2U)),
46  std::make_pair("chem_blue_3", bind(boost::value_factory<ChemBlue>(), _1, 3U)),
47  std::make_pair("chem_blue_4", bind(boost::value_factory<ChemBlue>(), _1, 4U)),
48  std::make_pair("chem_blue_5", bind(boost::value_factory<ChemBlue>(), _1, 5U)),
49  std::make_pair("chem_blue_6", bind(boost::value_factory<ChemBlue>(), _1, 6U)),
50  std::make_pair("chem_green_0", bind(boost::value_factory<ChemGreen>(), _1, 0U)),
51  std::make_pair("chem_green_1", bind(boost::value_factory<ChemGreen>(), _1, 1U)),
52  std::make_pair("chem_green_2", bind(boost::value_factory<ChemGreen>(), _1, 2U)),
53  std::make_pair("chem_green_3", bind(boost::value_factory<ChemGreen>(), _1, 3U)),
54  std::make_pair("chem_green_4", bind(boost::value_factory<ChemGreen>(), _1, 4U)),
55  std::make_pair("chem_green_5", bind(boost::value_factory<ChemGreen>(), _1, 5U)),
56  std::make_pair("chem_green_6", bind(boost::value_factory<ChemGreen>(), _1, 6U)),
57  std::make_pair("meinhardt", boost::value_factory<Meinhardt>()),
58  //std::make_pair("simplyred", boost::value_factory<SimplyRed>()),
59  std::make_pair("simplyred_0", bind(boost::value_factory<SimplyRed>(), _1, 0U)),
60  std::make_pair("simplyred_1", bind(boost::value_factory<SimplyRed>(), _1, 1U)),
61  std::make_pair("size", boost::value_factory<Size>()),
62  std::make_pair("tipgrowth", boost::value_factory<TipGrowth>()),
63  std::make_pair("wortel", boost::value_factory<Wortel>())
64 }};
65 
66 } // namespace
67 } // namespace
STL namespace.
Header for SimplyRed colorizer.
CellColor::Meinhardt header file.
Header for AuxinPIN1 colorizer.
Namespace for components of the Default model group.
ChemBlue colorizer.
const ComponentTraits< CellColorTag >::MapType g_component_factories
Stores cell color component factories.
CellChemistry component factory map.
Header for TipGrowth colorizer.
CellColor Size scheme.
Interface for CellColor::WortelColor.
CellColor ChemGreen scheme (use black background).