Develop Biology
The language of life
Substance.cpp
Go to the documentation of this file.
1
/*
2
* This file is a part of the Biology project by eons LLC.
3
* Biology (aka Develop Biology) is a framework for approaching software
4
* development from a natural sciences perspective.
5
*
6
* Copyright (C) 2021 Séon O'Shannon & eons LLC
7
*
8
* This program is free software: you can redistribute it and/or modify
9
* it under the terms of the GNU Affero General Public License as
10
* published by the Free Software Foundation, either version 3 of the
11
* License, or (at your option) any later version.
12
*
13
* This program is distributed in the hope that it will be useful,
14
* but WITHOUT ANY WARRANTY; without even the implied warranty of
15
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16
* GNU Affero General Public License for more details.
17
*
18
* You should have received a copy of the GNU Affero General Public License
19
* along with this program. If not, see <https://www.gnu.org/licenses/>.
20
*/
21
22
#include "
bio/chemical/Substance.h
"
23
24
namespace
bio
{
25
namespace
chemical {
26
27
Substance::Substance
(
28
const
typename
UnorderedMotif< Property >::Contents
* properties,
29
const
typename
UnorderedMotif< State >::Contents
* states
30
)
31
:
32
chemical::
Class
<
Substance
>(this),
33
UnorderedMotif
< Property >(properties),
34
UnorderedMotif
< State >(states)
35
{
36
CtorCommon();
37
}
38
39
Substance::~Substance
()
40
{
41
}
42
43
void
Substance::Enable
()
44
{
45
Add< State >(
state::Enabled
());
46
}
47
48
void
Substance::Disable
()
49
{
50
Remove< State >(
state::Enabled
());
51
}
52
53
bool
Substance::IsEnabled
()
const
54
{
55
return
Has< State >(
state::Enabled
());
56
}
57
58
void
Substance::CtorCommon()
59
{
60
Enable
();
61
}
62
63
}
//chemical namespace
64
}
//bio namespace
Substance.h
bio::chemical::Class
Definition:
Class.h:49
bio::chemical::Substance
Definition:
Substance.h:46
bio::chemical::Substance::Disable
virtual void Disable()
Definition:
Substance.cpp:48
bio::chemical::Substance::Substance
Substance Substance(const typename UnorderedMotif< Property >::Contents *properties, const typename UnorderedMotif< State >::Contents *states)
Definition:
Substance.cpp:27
bio::chemical::Substance::Enable
virtual void Enable()
Definition:
Substance.cpp:43
bio::chemical::Substance::~Substance
virtual ~Substance()
Definition:
Substance.cpp:39
bio::chemical::Substance::IsEnabled
virtual bool IsEnabled() const
Definition:
Substance.cpp:53
bio::chemical::UnorderedMotif
Definition:
UnorderedMotif.h:43
bio::state::Enabled
State Enabled()
bio
Definition:
Cell.h:31
src
chemical
Substance.cpp
Generated by
1.9.4