BioDynaMo  v1.05.120-25dc9790
Public Member Functions | Private Member Functions | Private Attributes | List of all members
bdm::GrowthDivision Class Reference

#include <growth_division.h>

Inheritance diagram for bdm::GrowthDivision:
[legend]
Collaboration diagram for bdm::GrowthDivision:
[legend]

Public Member Functions

 GrowthDivision ()
 
 GrowthDivision (real_t threshold, real_t growth_rate)
 
virtual ~GrowthDivision ()=default
 
void Initialize (const NewAgentEvent &event) override
 
void Run (Agent *agent) override
 
- Public Member Functions inherited from bdm::Behavior
 Behavior ()
 
virtual ~Behavior ()=default
 
virtual BehaviorNew () const =0
 Create a new instance of this object using the default constructor. More...
 
virtual BehaviorNewCopy () const =0
 Create a new copy of this behavior. More...
 
virtual void Update (const NewAgentEvent &event)
 
void AlwaysCopyToNew ()
 Always copy this behavior to new agents. More...
 
void NeverCopyToNew ()
 Never copy this behavior to new agents. More...
 
void CopyToNewIf (const std::initializer_list< NewAgentEventUid > &uids)
 
void AlwaysRemoveFromExisting ()
 
void NeverRemoveFromExisting ()
 
void RemoveFromExistingIf (const std::initializer_list< NewAgentEventUid > &uids)
 
bool WillBeCopied (NewAgentEventUid event) const
 
bool WillBeRemoved (NewAgentEventUid event) const
 
void * operator new (size_t size)
 
void operator delete (void *p)
 

Private Member Functions

 BDM_BEHAVIOR_HEADER (GrowthDivision, Behavior, 1)
 

Private Attributes

real_t threshold_ = 40
 
real_t growth_rate_ = 300
 

Detailed Description

This behavior grows the agent until the diameter reaches the specified threshold and divides the object afterwards.

Definition at line 28 of file growth_division.h.

Constructor & Destructor Documentation

◆ GrowthDivision() [1/2]

bdm::GrowthDivision::GrowthDivision ( )
inline

Definition at line 32 of file growth_division.h.

◆ GrowthDivision() [2/2]

bdm::GrowthDivision::GrowthDivision ( real_t  threshold,
real_t  growth_rate 
)
inline

Definition at line 33 of file growth_division.h.

◆ ~GrowthDivision()

virtual bdm::GrowthDivision::~GrowthDivision ( )
virtualdefault

Member Function Documentation

◆ BDM_BEHAVIOR_HEADER()

bdm::GrowthDivision::BDM_BEHAVIOR_HEADER ( GrowthDivision  ,
Behavior  ,
 
)
private

◆ Initialize()

void bdm::GrowthDivision::Initialize ( const NewAgentEvent event)
inlineoverridevirtual

This method is called to initialize new behaviors that are created during a NewAgentEvent. Override this method to initialize attributes of your own Behavior subclasses. NB: Don't forget to call the implementation of the base class first. Base::Initialize(event); Failing to do so will result in errors.

Reimplemented from bdm::Behavior.

Definition at line 38 of file growth_division.h.

◆ Run()

void bdm::GrowthDivision::Run ( Agent agent)
inlineoverridevirtual

Default event handler (existing behavior won't be modified on any event)

Implements bdm::Behavior.

Definition at line 54 of file growth_division.h.

Member Data Documentation

◆ growth_rate_

real_t bdm::GrowthDivision::growth_rate_ = 300
private

Definition at line 68 of file growth_division.h.

◆ threshold_

real_t bdm::GrowthDivision::threshold_ = 40
private

Definition at line 67 of file growth_division.h.


The documentation for this class was generated from the following file: