SORTIE Core C++ Documentation
|
Provides a base for objects that calculate a crowding effect. More...
#include <CrowdingEffectBase.h>
Public Member Functions | |
clCrowdingEffectBase () | |
Constructor. More... | |
virtual | ~clCrowdingEffectBase () |
Destructor. More... | |
virtual double | CalculateCrowdingEffect (clTree *p_oTree, const float &fDiam, const clNCITermBase::ncivals nci, const int &iSpecies)=0 |
Calculates crowding effect. More... | |
virtual void | DoSetup (clTreePopulation *p_oPop, clBehaviorBase *p_oNCI, clNCIBehaviorBase *p_oNCIBase, xercesc::DOMElement *p_oElement)=0 |
Does any desired setup. More... | |
virtual void | PreCalcs (clTreePopulation *p_oPop) |
Performs calculations like either clGrowthBase::PreGrowthCalcs or clMortalityBase::PreMortCalcs. More... | |
bool | DoesRequireTargetDiam () |
Protected Attributes | |
bool | m_bRequiresTargetDiam |
Whether or not this effect depends on a target diameter being available. More... | |
bool | m_b2ValNCI |
Whether it's a two-value NCI. More... | |
Provides a base for objects that calculate a crowding effect.
|
inline |
Constructor.
Sets defaults.
|
inlinevirtual |
Destructor.
|
pure virtual |
Calculates crowding effect.
p_oTree | Tree for which to calculate crowding effect. If bRequiresTargetDiam is false, be prepared for this to be NULL. |
fDiam | Diameter of tree. May not be the same as the one recorded in the tree record if it is being updated for consecutive years in a timestep. |
nci | NCI term. May be 0 if NCI not used. |
iSpecies | Species for which to calculate effect. This is separate in case p_oTree is NULL because there is no target. |
Implemented in clCrowdingEffectTempDep, clCrowdingEffectTwo, clCrowdingEffectDefault, clCrowdingEffectNoSize, and clCrowdingEffectNone.
|
inline |
|
pure virtual |
Does any desired setup.
p_oPop | Tree population. |
p_oNCI | NCI behavior object. |
p_oNCIBase | NCI parent behavior object. |
p_oElement | Root element of the behavior. |
Implemented in clCrowdingEffectTempDep, clCrowdingEffectTwo, clCrowdingEffectDefault, clCrowdingEffectNoSize, and clCrowdingEffectNone.
|
inlinevirtual |
Performs calculations like either clGrowthBase::PreGrowthCalcs or clMortalityBase::PreMortCalcs.
|
protected |
Whether it's a two-value NCI.
|
protected |
Whether or not this effect depends on a target diameter being available.