BioDynaMo
v1.05.125-2619fe54
Home
Main Page
Namespaces
Namespace List
Namespace Members
All
a
b
c
d
e
f
g
i
k
l
n
o
p
r
s
t
u
v
w
Functions
a
b
c
d
e
f
g
i
l
n
o
p
r
s
t
u
v
w
Variables
Typedefs
Enumerations
Enumerator
Classes
Class List
Class Index
Class Hierarchy
Class Members
All
:
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
~
Functions
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
r
s
t
u
v
w
~
Variables
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Typedefs
b
c
d
e
f
i
n
p
r
t
v
Enumerations
Enumerator
Related Functions
:
d
e
i
m
o
p
r
s
t
Files
File List
File Members
All
_
b
c
d
h
n
p
s
Functions
Variables
Macros
•
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
core
operation
dividing_cell_op.h
Go to the documentation of this file.
1
// -----------------------------------------------------------------------------
2
//
3
// Copyright (C) 2021 CERN & University of Surrey for the benefit of the
4
// BioDynaMo collaboration. All Rights Reserved.
5
//
6
// Licensed under the Apache License, Version 2.0 (the "License");
7
// you may not use this file except in compliance with the License.
8
//
9
// See the LICENSE file distributed with this work for details.
10
// See the NOTICE file distributed with this work for additional information
11
// regarding copyright ownership.
12
//
13
// -----------------------------------------------------------------------------
14
15
#ifndef CORE_OPERATION_DIVIDING_CELL_OP_H_
16
#define CORE_OPERATION_DIVIDING_CELL_OP_H_
17
18
#include <cstdint>
19
#include "
core/agent/agent.h
"
20
#include "
core/agent/cell.h
"
21
#include "
core/operation/operation.h
"
22
#include "
core/operation/operation_registry.h
"
23
#include "
core/simulation.h
"
24
25
namespace
bdm
{
26
27
struct
DividingCellOp
:
public
AgentOperationImpl
{
28
BDM_OP_HEADER
(
DividingCellOp
);
29
30
void
operator()
(
Agent
* agent)
override
{
31
if
(
Cell
* cell =
dynamic_cast<
Cell
*
>
(agent)) {
32
if
(cell->GetDiameter() <= 40) {
33
cell->ChangeVolume(300);
34
}
else
{
35
cell->Divide();
36
}
37
}
38
}
39
};
40
41
}
// namespace bdm
42
43
#endif // CORE_OPERATION_DIVIDING_CELL_OP_H_
bdm::DividingCellOp
Definition:
dividing_cell_op.h:27
bdm
Definition:
agent.cc:39
operation.h
operation_registry.h
bdm::Agent
Contains code required by all agents.
Definition:
agent.h:79
bdm::DividingCellOp::operator()
void operator()(Agent *agent) override
Definition:
dividing_cell_op.h:30
bdm::DividingCellOp::BDM_OP_HEADER
BDM_OP_HEADER(DividingCellOp)
bdm::AgentOperationImpl
Interface for implementing an operation.
Definition:
operation.h:76
agent.h
bdm::Cell
Definition:
cell.h:40
simulation.h
cell.h
Generated by
1.8.17