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

#include <spherical_agent.h>

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

Public Member Functions

 SphericalAgent ()
 
 SphericalAgent (real_t diameter)
 
 SphericalAgent (const Real3 &position)
 
virtual ~SphericalAgent ()=default
 
Shape GetShape () const override
 
real_t GetDiameter () const override
 
const Real3GetPosition () const override
 
void SetDiameter (real_t diameter) override
 
void SetPosition (const Real3 &position) override
 
Real3 CalculateDisplacement (const InteractionForce *force, real_t squared_radius, real_t dt) override
 
void ApplyDisplacement (const Real3 &displacement) override
 
- Public Member Functions inherited from bdm::Agent
 Agent ()
 
 Agent (TRootIOCtor *io_ctor)
 
 Agent (const Agent &other)
 
virtual ~Agent ()
 
virtual AgentNew () const =0
 Create a new instance of this object using the default constructor. More...
 
virtual AgentNewCopy () const =0
 Create a copy of this object. More...
 
virtual void Initialize (const NewAgentEvent &event)
 
virtual void Update (const NewAgentEvent &event)
 
void CreateNewAgents (const NewAgentEvent &event, const std::initializer_list< Agent * > &prototypes)
 
virtual const char * GetTypeName () const
 
virtual std::set< std::string > GetRequiredVisDataMembers () const
 
virtual void RunDiscretization ()
 
void AssignNewUid ()
 
const AgentUidGetUid () const
 
SpinlockGetLock ()
 
virtual void CriticalRegion (std::vector< AgentPointer<>> *aptrs)
 
uint32_t GetBoxIdx () const
 
void SetBoxIdx (uint32_t idx)
 
void SetStaticnessNextTimestep (bool value) const
 
bool GetPropagateStaticness () const
 
void SetPropagateStaticness (bool value=true)
 
void PropagateStaticness (bool beginning=false)
 
void UpdateStaticness ()
 
bool IsStatic () const
 
template<typename TAgent = Agent>
AgentPointer< TAgent > GetAgentPtr () const
 Return agent pointer. More...
 
void AddBehavior (Behavior *behavior)
 Add a behavior to this agent. More...
 
void RemoveBehavior (const Behavior *behavior)
 
void RunBehaviors ()
 Execute all behaviorsq. More...
 
const InlineVector< Behavior *, 2 > & GetAllBehaviors () const
 Return all behaviors. More...
 
virtual void RemoveFromSimulation ()
 
void * operator new (size_t size)
 
void operator delete (void *p)
 

Private Member Functions

 BDM_AGENT_HEADER (SphericalAgent, Agent, 1)
 

Private Attributes

Real3 position_ = {{0, 0, 0}}
 NB: Use setter and don't assign values directly. More...
 
real_t diameter_ = 0
 NB: Use setter and don't assign values directly. More...
 

Additional Inherited Members

- Protected Member Functions inherited from bdm::Agent
template<typename TFrom , typename TTo >
std::enable_if< std::is_base_of< TFrom, TTo >::value, TTo * >::type Cast (TFrom *agent) const
 
template<typename TFrom , typename TTo >
std::enable_if<!std::is_base_of< TFrom, TTo >::value, TTo * >::type Cast (TFrom *agent) const
 
- Protected Attributes inherited from bdm::Agent
AgentUid uid_
 unique id More...
 
uint32_t box_idx_ = std::numeric_limits<uint32_t>::max()
 Grid box index. More...
 
InlineVector< Behavior *, 2 > behaviors_
 collection of behaviors which define the internal behavior More...
 

Detailed Description

Definition at line 26 of file spherical_agent.h.

Constructor & Destructor Documentation

◆ SphericalAgent() [1/3]

bdm::SphericalAgent::SphericalAgent ( )
inline

Definition at line 30 of file spherical_agent.h.

◆ SphericalAgent() [2/3]

bdm::SphericalAgent::SphericalAgent ( real_t  diameter)
inlineexplicit

Definition at line 32 of file spherical_agent.h.

◆ SphericalAgent() [3/3]

bdm::SphericalAgent::SphericalAgent ( const Real3 position)
inlineexplicit

Definition at line 34 of file spherical_agent.h.

◆ ~SphericalAgent()

virtual bdm::SphericalAgent::~SphericalAgent ( )
virtualdefault

Member Function Documentation

◆ ApplyDisplacement()

void bdm::SphericalAgent::ApplyDisplacement ( const Real3 displacement)
inlineoverridevirtual

Implements bdm::Agent.

Definition at line 64 of file spherical_agent.h.

◆ BDM_AGENT_HEADER()

bdm::SphericalAgent::BDM_AGENT_HEADER ( SphericalAgent  ,
Agent  ,
 
)
private

◆ CalculateDisplacement()

Real3 bdm::SphericalAgent::CalculateDisplacement ( const InteractionForce force,
real_t  squared_radius,
real_t  dt 
)
inlineoverridevirtual

This agent type has an empty implementation for CalculateDisplacement. Provide an implementation in a derived class if needed.

Implements bdm::Agent.

Definition at line 59 of file spherical_agent.h.

◆ GetDiameter()

real_t bdm::SphericalAgent::GetDiameter ( ) const
inlineoverridevirtual

Implements bdm::Agent.

Definition at line 41 of file spherical_agent.h.

◆ GetPosition()

const Real3& bdm::SphericalAgent::GetPosition ( ) const
inlineoverridevirtual

Implements bdm::Agent.

Definition at line 43 of file spherical_agent.h.

◆ GetShape()

Shape bdm::SphericalAgent::GetShape ( ) const
inlineoverridevirtual

Implements bdm::Agent.

Definition at line 39 of file spherical_agent.h.

◆ SetDiameter()

void bdm::SphericalAgent::SetDiameter ( real_t  diameter)
inlineoverridevirtual

Implements bdm::Agent.

Definition at line 45 of file spherical_agent.h.

◆ SetPosition()

void bdm::SphericalAgent::SetPosition ( const Real3 position)
inlineoverridevirtual

Implements bdm::Agent.

Definition at line 52 of file spherical_agent.h.

Member Data Documentation

◆ diameter_

real_t bdm::SphericalAgent::diameter_ = 0
private

NB: Use setter and don't assign values directly.

Definition at line 76 of file spherical_agent.h.

◆ position_

Real3 bdm::SphericalAgent::position_ = {{0, 0, 0}}
private

NB: Use setter and don't assign values directly.

Definition at line 74 of file spherical_agent.h.


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