|
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.
1.8.13