ALMaSS Skylark ODDox  1.1
The skylark model description following ODdox protocol
Crop Class Reference

The base class for all crops. More...

#include <farm.h>

Public Member Functions

virtual ~Crop ()
 
 Crop ()
 
int GetFirstDate (void)
 
virtual bool Do (Farm *a_farm, LE *a_field, FarmEvent *a_ev)
 
void ChooseNextCrop (int a_no_dates)
 Chooses the next crop to grow in a field. More...
 
int GetCropClassification ()
 
void SetCropClassification (int a_classification)
 

Protected Member Functions

void SimpleEvent (long a_date, int a_todo, bool a_lock)
 Adds an event to this crop management. More...
 
void SimpleEvent_ (long a_date, int a_todo, bool a_lock, Farm *a_farm, LE *a_field)
 Adds an event to this crop management without relying on member variables. More...
 

Protected Attributes

Farmm_farm
 
LE * m_field
 
FarmEventm_ev
 
int m_first_date
 
int m_count
 
int m_last_date
 
int m_ddegstoharvest
 
int m_CropClassification
 

Detailed Description

The base class for all crops.

Constructor & Destructor Documentation

◆ ~Crop()

virtual Crop::~Crop ( )
inlinevirtual
560 {}

◆ Crop()

Crop::Crop ( )
298 {
299  m_ddegstoharvest = -1; // Set to -1 to indicate that this is not using ddegs to harvest, this will be reset in descendent classes as needed
300  SetCropClassification(tocc_Winter); // Defualt classification is Winter - change this if necessary in the derived crop constructor
301 }

References tocc_Winter.

Member Function Documentation

◆ ChooseNextCrop()

void Crop::ChooseNextCrop ( int  a_no_dates)

Chooses the next crop to grow in a field.

The function finds the next crop to grow on a field where the current crop's management has finished. If necessary, it adjusts current crop's management to the new crop.

318  {
319 
323  if(cfg_OptimisingFarms.value()){ // do this only if we have optimising farms
324  if(!cfg_OptimiseBedriftsmodelCrops.value()){ // do this only if we use almass crops!!
325 
326  if (g_date->GetYearNumber()>0){ //changed 030713 since we dont use m_rotation anymore - but we do in the hidden year!
327  OptimisingFarm * opf;
328  if(m_farm->GetType() == tof_OptimisingFarm){ //take only optimising farms
329  opf = dynamic_cast<OptimisingFarm*>(m_farm);
331  //move MDates if necessary, use the new_startdate:
332  if (m_ev->m_startday > g_date->DayInYear(1,7)) {
333  if (m_field->GetMDates(0,0) >=m_ev->m_startday)
334  {
335  g_msg->Warn( WARN_BUG, "Crop::ChooseNextCrop(): ","Harvest too late for the next crop to start!!!" );
336  exit( 1 );
337  }
338  // Now fix any late finishing problems
339  for (int i=0; i<a_no_dates; i++) {
340  if(m_field->GetMDates(0,i)>=m_ev->m_startday) {
341  m_field->SetMDates(0,i,m_ev->m_startday-1); //move the starting date
342  }
343  if(m_field->GetMDates(1,i)>=m_ev->m_startday){
344  m_field->SetMConstants(i,0); //change the default value of the MConst (=1) to 0 (necessary to correctly execute farm events in case the finishing date (MDate) was moved)
345  m_field->SetMDates(1,i,m_ev->m_startday-1); //move the finishing date
346  }
347  }
348  }
349 
350  }
351  }
352  }
353  }
354 
355 }

References cfg_OptimiseBedriftsmodelCrops(), cfg_OptimisingFarms(), OptimisingFarm::Match_crop_to_field(), and tof_OptimisingFarm.

Referenced by PermanentSetAside::Do(), PermanentGrassTussocky::Do(), NorwegianOats::Do(), NorwegianSpringBarley::Do(), OrchardCrop::Do(), OSeedGrass1::Do(), OSeedGrass2::Do(), YoungForestCrop::Do(), PermanentGrassLowYield::Do(), SeedGrass1::Do(), PermanentGrassGrazed::Do(), SeedGrass2::Do(), Maize::Do(), MaizeSilage::Do(), OTriticale::Do(), Oats::Do(), FieldPeas::Do(), FieldPeasSilage::Do(), OFodderbeet::Do(), SpringBarleyCloverGrass::Do(), Triticale::Do(), Carrots::Do(), SetAside::Do(), Sugarbeet::Do(), PotatoesIndustry::Do(), NorwegianPotatoes::Do(), Fodderbeet::Do(), Potatoes::Do(), SpringBarleySilage::Do(), SpringBarleySpr::Do(), WinterRye::Do(), SpringBarley::Do(), SpringRape::Do(), WinterRape::Do(), WinterBarley::Do(), and WinterWheat::Do().

◆ Do()

bool Crop::Do ( Farm a_farm,
LE *  a_field,
FarmEvent a_ev 
)
virtual

Reimplemented in WinterWheat, PLWinterRape, PLPotatoes, PLBeet, PLSpringWheat, PLWinterBarley, PLWinterWheat, PLWinterWheatLate, PLWinterTriticale, NLTulips, PLMaize, PLMaizeSilage, PLSpringBarley, NLPotatoes, PLWinterRye, WinterBarley, AgroChemIndustryCereal, NLPotatoesSpring, NLGrassGrazed1, DummyCrop, WinterBarleyStrigling, WinterRape, NLGrassGrazedLast, NLGrassGrazed1Spring, NLGrassGrazed2, PLBeans, WinterWheatStrigling, WinterWheatStriglingCulm, WinterWheatStriglingSingle, WWheatPToxicControl, WWheatPTreatment, NLPermanentGrassGrazed, PLBeetSpr, WWheatPControl, SpringRape, WheatPControl, PLFodderLucerne1, SpringBarley, PLSpringBarleySpr, NLSpringBarley, NLWinterWheat, SpringBarleyPTreatment, SpringBarleyStrigling, SpringBarleyStriglingCulm, SpringBarleyStriglingSingle, WinterRye, PLCarrots, SpringBarleySilage, SpringBarleySpr, WinterRyeStrigling, NLCabbage, SpringBarleySKManagement, Fodderbeet, NorwegianPotatoes, Potatoes, NLCabbageSpring, NLSpringBarleySpring, PotatoesIndustry, Sugarbeet, NLCarrots, SpringBarleyPeaCloverGrassStrigling, NLBeet, SetAside, NLCarrotsSpring, Carrots, NLBeetSpring, NLMaize, OWinterRape, PLFodderLucerne2, Triticale, OFodderbeet, SpringBarleyCloverGrass, OWinterWheat, OWinterWheatUndersown, OWinterWheatUndersownExt, DummyCropPestTesting, FieldPeas, FieldPeasSilage, FieldPeasStrigling, OPotatoes, SpringBarleyCloverGrassStrigling, OSpringBarley, SpringBarleyPeaCloverGrassStrigling, SpringBarleySeed, NLMaizeSpring, Oats, OSpringBarleyExt, Maize, MaizeSilage, MaizeStrigling, OSpringBarleyPigs, OTriticale, OOats, OWinterRye, CloverGrassGrazed1, OWinterBarley, SeedGrass2, FodderGrass, NLCatchPeaCrop, OWinterBarleyExt, CloverGrassGrazed2, OBarleyPeaCloverGrass, OMaizeSilage, PermanentGrassGrazed, OCarrots, SeedGrass1, OCloverGrassGrazed1, OCloverGrassSilage1, OFieldPeas, OFieldPeasSilage, OPermanentGrassGrazed, OSBarleySilage, PermanentGrassLowYield, YoungForestCrop, BroadBeans, OSeedGrass2, OCloverGrassGrazed2, NorwegianOats, NorwegianSpringBarley, OrchardCrop, OSeedGrass1, WinterRapeStrigling, PermanentGrassTussocky, OGrazingPigs, PermanentSetAside, and OFirstYearDanger.

303  {
304  return true;
305 }

◆ GetCropClassification()

int Crop::GetCropClassification ( )
inline
567 { return m_CropClassification; }

References m_CropClassification.

◆ GetFirstDate()

int Crop::GetFirstDate ( void  )
inline
562 { return m_first_date; }

References m_first_date.

◆ SetCropClassification()

void Crop::SetCropClassification ( int  a_classification)
inline
569 { m_CropClassification = a_classification; }

References m_CropClassification.

Referenced by NLCatchPeaCrop::NLCatchPeaCrop().

◆ SimpleEvent()

void Crop::SimpleEvent ( long  a_date,
int  a_todo,
bool  a_lock 
)
protected

Adds an event to this crop management.

307  {
308 
309  m_farm->AddNewEvent(m_field->GetVegType(), a_date, m_field, a_todo, m_field->GetRunNum(), a_lock, 0, false, (TTypesOfVegetation)0);
310 }

Referenced by OFirstYearDanger::Do(), PermanentSetAside::Do(), OGrazingPigs::Do(), PermanentGrassTussocky::Do(), WinterRapeStrigling::Do(), NorwegianOats::Do(), NorwegianSpringBarley::Do(), OrchardCrop::Do(), OSeedGrass1::Do(), BroadBeans::Do(), OSeedGrass2::Do(), YoungForestCrop::Do(), PermanentGrassLowYield::Do(), OSBarleySilage::Do(), OFieldPeas::Do(), OFieldPeasSilage::Do(), OPermanentGrassGrazed::Do(), OCarrots::Do(), SeedGrass1::Do(), PermanentGrassGrazed::Do(), OMaizeSilage::Do(), OBarleyPeaCloverGrass::Do(), OWinterBarleyExt::Do(), OWinterBarley::Do(), SeedGrass2::Do(), OWinterRye::Do(), OOats::Do(), OSpringBarleyPigs::Do(), OTriticale::Do(), MaizeSilage::Do(), Maize::Do(), MaizeStrigling::Do(), Oats::Do(), OSpringBarleyExt::Do(), SpringBarleySeed::Do(), OSpringBarley::Do(), FieldPeas::Do(), FieldPeasSilage::Do(), FieldPeasStrigling::Do(), OPotatoes::Do(), SpringBarleyCloverGrassStrigling::Do(), OWinterWheat::Do(), OWinterWheatUndersown::Do(), OWinterWheatUndersownExt::Do(), SpringBarleyCloverGrass::Do(), OFodderbeet::Do(), Triticale::Do(), OWinterRape::Do(), Carrots::Do(), SpringBarleyPeaCloverGrassStrigling::Do(), SetAside::Do(), PotatoesIndustry::Do(), Sugarbeet::Do(), Potatoes::Do(), NorwegianPotatoes::Do(), Fodderbeet::Do(), SpringBarleySKManagement::Do(), SpringBarleySpr::Do(), SpringBarleySilage::Do(), WinterRyeStrigling::Do(), SpringBarleyStrigling::Do(), SpringBarleyStriglingSingle::Do(), SpringBarleyStriglingCulm::Do(), SpringBarleyPTreatment::Do(), WinterRye::Do(), SpringBarley::Do(), SpringRape::Do(), WWheatPControl::Do(), WinterWheatStriglingCulm::Do(), WWheatPTreatment::Do(), WinterWheatStrigling::Do(), WinterWheatStriglingSingle::Do(), WWheatPToxicControl::Do(), WinterRape::Do(), WinterBarleyStrigling::Do(), AgroChemIndustryCereal::Do(), WinterBarley::Do(), WinterWheat::Do(), WinterRape::HerbiZero(), SpringRape::RowcolOne(), and WinterRape::RowcolOne().

◆ SimpleEvent_()

Member Data Documentation

◆ m_count

int Crop::m_count
protected

◆ m_CropClassification

int Crop::m_CropClassification
protected

◆ m_ddegstoharvest

int Crop::m_ddegstoharvest
protected

◆ m_ev

FarmEvent* Crop::m_ev
protected

Referenced by OFirstYearDanger::Do(), PermanentSetAside::Do(), OGrazingPigs::Do(), PermanentGrassTussocky::Do(), WinterRapeStrigling::Do(), NorwegianOats::Do(), NorwegianSpringBarley::Do(), OrchardCrop::Do(), OSeedGrass1::Do(), BroadBeans::Do(), OSeedGrass2::Do(), YoungForestCrop::Do(), PermanentGrassLowYield::Do(), OSBarleySilage::Do(), OFieldPeas::Do(), OFieldPeasSilage::Do(), OPermanentGrassGrazed::Do(), OCarrots::Do(), SeedGrass1::Do(), PermanentGrassGrazed::Do(), OMaizeSilage::Do(), OBarleyPeaCloverGrass::Do(), OWinterBarleyExt::Do(), OWinterBarley::Do(), SeedGrass2::Do(), OWinterRye::Do(), OOats::Do(), OSpringBarleyPigs::Do(), OTriticale::Do(), MaizeSilage::Do(), Maize::Do(), MaizeStrigling::Do(), Oats::Do(), OSpringBarleyExt::Do(), SpringBarleySeed::Do(), OSpringBarley::Do(), FieldPeas::Do(), FieldPeasSilage::Do(), FieldPeasStrigling::Do(), OPotatoes::Do(), SpringBarleyCloverGrassStrigling::Do(), OWinterWheat::Do(), OWinterWheatUndersown::Do(), OWinterWheatUndersownExt::Do(), SpringBarleyCloverGrass::Do(), OFodderbeet::Do(), Triticale::Do(), OWinterRape::Do(), Carrots::Do(), SpringBarleyPeaCloverGrassStrigling::Do(), SetAside::Do(), PotatoesIndustry::Do(), Sugarbeet::Do(), Potatoes::Do(), NorwegianPotatoes::Do(), Fodderbeet::Do(), SpringBarleySKManagement::Do(), SpringBarleySilage::Do(), SpringBarleySpr::Do(), WinterRyeStrigling::Do(), SpringBarleyStriglingSingle::Do(), SpringBarleyStrigling::Do(), SpringBarleyStriglingCulm::Do(), WinterRye::Do(), SpringBarleyPTreatment::Do(), SpringBarley::Do(), SpringRape::Do(), WWheatPControl::Do(), WWheatPTreatment::Do(), WinterWheatStrigling::Do(), WinterWheatStriglingSingle::Do(), WWheatPToxicControl::Do(), WinterWheatStriglingCulm::Do(), WinterBarleyStrigling::Do(), WinterRape::Do(), AgroChemIndustryCereal::Do(), WinterBarley::Do(), WinterRape::HerbiZero(), SpringRape::RowcolOne(), and WinterRape::RowcolOne().

◆ m_farm

Farm* Crop::m_farm
protected

Referenced by OFirstYearDanger::Do(), PermanentSetAside::Do(), OGrazingPigs::Do(), PermanentGrassTussocky::Do(), WinterRapeStrigling::Do(), NorwegianOats::Do(), NorwegianSpringBarley::Do(), OrchardCrop::Do(), OSeedGrass1::Do(), BroadBeans::Do(), OSeedGrass2::Do(), PermanentGrassLowYield::Do(), YoungForestCrop::Do(), OSBarleySilage::Do(), OFieldPeasSilage::Do(), OFieldPeas::Do(), OPermanentGrassGrazed::Do(), OCarrots::Do(), SeedGrass1::Do(), OBarleyPeaCloverGrass::Do(), PermanentGrassGrazed::Do(), OMaizeSilage::Do(), OWinterBarleyExt::Do(), OWinterBarley::Do(), SeedGrass2::Do(), OWinterRye::Do(), OOats::Do(), OSpringBarleyPigs::Do(), Maize::Do(), OTriticale::Do(), MaizeSilage::Do(), MaizeStrigling::Do(), OSpringBarleyExt::Do(), Oats::Do(), SpringBarleySeed::Do(), OSpringBarley::Do(), FieldPeas::Do(), FieldPeasSilage::Do(), FieldPeasStrigling::Do(), OPotatoes::Do(), SpringBarleyCloverGrassStrigling::Do(), OWinterWheat::Do(), OWinterWheatUndersown::Do(), OWinterWheatUndersownExt::Do(), OFodderbeet::Do(), SpringBarleyCloverGrass::Do(), OWinterRape::Do(), Triticale::Do(), Carrots::Do(), SpringBarleyPeaCloverGrassStrigling::Do(), SetAside::Do(), PotatoesIndustry::Do(), Sugarbeet::Do(), NorwegianPotatoes::Do(), Potatoes::Do(), Fodderbeet::Do(), SpringBarleySKManagement::Do(), WinterRyeStrigling::Do(), SpringBarleySilage::Do(), SpringBarleySpr::Do(), SpringBarleyPTreatment::Do(), SpringBarleyStriglingSingle::Do(), SpringBarleyStrigling::Do(), SpringBarleyStriglingCulm::Do(), WinterRye::Do(), NLWinterWheat::Do(), SpringBarley::Do(), SpringRape::Do(), WWheatPControl::Do(), WWheatPToxicControl::Do(), WinterWheatStriglingCulm::Do(), WinterWheatStriglingSingle::Do(), WWheatPTreatment::Do(), PLBeans::Do(), WinterWheatStrigling::Do(), WinterRape::Do(), WinterBarleyStrigling::Do(), AgroChemIndustryCereal::Do(), WinterBarley::Do(), WinterWheat::Do(), WinterRape::HerbiZero(), SpringRape::RowcolOne(), and WinterRape::RowcolOne().

◆ m_field

LE* Crop::m_field
protected

Referenced by OFirstYearDanger::Do(), PermanentSetAside::Do(), OGrazingPigs::Do(), PermanentGrassTussocky::Do(), WinterRapeStrigling::Do(), NorwegianOats::Do(), NorwegianSpringBarley::Do(), OrchardCrop::Do(), OSeedGrass1::Do(), BroadBeans::Do(), OSeedGrass2::Do(), YoungForestCrop::Do(), PermanentGrassLowYield::Do(), OSBarleySilage::Do(), OFieldPeas::Do(), OFieldPeasSilage::Do(), OPermanentGrassGrazed::Do(), OCarrots::Do(), SeedGrass1::Do(), PermanentGrassGrazed::Do(), OMaizeSilage::Do(), OBarleyPeaCloverGrass::Do(), OWinterBarleyExt::Do(), OWinterBarley::Do(), SeedGrass2::Do(), OWinterRye::Do(), OOats::Do(), OSpringBarleyPigs::Do(), OTriticale::Do(), MaizeSilage::Do(), Maize::Do(), MaizeStrigling::Do(), Oats::Do(), OSpringBarleyExt::Do(), SpringBarleySeed::Do(), OSpringBarley::Do(), FieldPeas::Do(), FieldPeasSilage::Do(), FieldPeasStrigling::Do(), OPotatoes::Do(), SpringBarleyCloverGrassStrigling::Do(), OWinterWheat::Do(), OWinterWheatUndersown::Do(), OWinterWheatUndersownExt::Do(), SpringBarleyCloverGrass::Do(), OFodderbeet::Do(), Triticale::Do(), OWinterRape::Do(), Carrots::Do(), SpringBarleyPeaCloverGrassStrigling::Do(), SetAside::Do(), PotatoesIndustry::Do(), Sugarbeet::Do(), Potatoes::Do(), NorwegianPotatoes::Do(), Fodderbeet::Do(), SpringBarleySKManagement::Do(), SpringBarleySpr::Do(), SpringBarleySilage::Do(), WinterRyeStrigling::Do(), SpringBarleyStrigling::Do(), SpringBarleyStriglingSingle::Do(), SpringBarleyStriglingCulm::Do(), SpringBarleyPTreatment::Do(), WinterRye::Do(), SpringBarley::Do(), SpringRape::Do(), WWheatPControl::Do(), WinterWheatStriglingCulm::Do(), WWheatPTreatment::Do(), WinterWheatStrigling::Do(), WinterWheatStriglingSingle::Do(), WWheatPToxicControl::Do(), WinterRape::Do(), WinterBarleyStrigling::Do(), AgroChemIndustryCereal::Do(), WinterBarley::Do(), WinterWheat::Do(), WinterRape::HerbiZero(), SpringRape::RowcolOne(), and WinterRape::RowcolOne().

◆ m_first_date

int Crop::m_first_date
protected

Referenced by AgroChemIndustryCereal::AgroChemIndustryCereal(), BroadBeans::BroadBeans(), Carrots::Carrots(), CloverGrassGrazed1::CloverGrassGrazed1(), CloverGrassGrazed2::CloverGrassGrazed2(), PermanentSetAside::Do(), OGrazingPigs::Do(), PermanentGrassTussocky::Do(), NorwegianOats::Do(), NorwegianSpringBarley::Do(), OrchardCrop::Do(), OSeedGrass1::Do(), WinterRapeStrigling::Do(), BroadBeans::Do(), OSeedGrass2::Do(), PermanentGrassLowYield::Do(), OSBarleySilage::Do(), YoungForestCrop::Do(), OFieldPeasSilage::Do(), OFieldPeas::Do(), OPermanentGrassGrazed::Do(), OCarrots::Do(), SeedGrass1::Do(), OBarleyPeaCloverGrass::Do(), OMaizeSilage::Do(), PermanentGrassGrazed::Do(), NLCatchPeaCrop::Do(), OWinterBarleyExt::Do(), SeedGrass2::Do(), OWinterBarley::Do(), OWinterRye::Do(), OOats::Do(), Maize::Do(), MaizeSilage::Do(), MaizeStrigling::Do(), OTriticale::Do(), Oats::Do(), NLMaizeSpring::Do(), OSpringBarleyExt::Do(), SpringBarleySeed::Do(), OSpringBarley::Do(), FieldPeas::Do(), SpringBarleyCloverGrassStrigling::Do(), OPotatoes::Do(), FieldPeasSilage::Do(), FieldPeasStrigling::Do(), OWinterWheatUndersown::Do(), OWinterWheat::Do(), OWinterWheatUndersownExt::Do(), OFodderbeet::Do(), SpringBarleyCloverGrass::Do(), PLFodderLucerne2::Do(), Triticale::Do(), OWinterRape::Do(), NLMaize::Do(), NLBeetSpring::Do(), Carrots::Do(), NLCarrotsSpring::Do(), SetAside::Do(), SpringBarleyPeaCloverGrassStrigling::Do(), NLBeet::Do(), NLCarrots::Do(), NLCabbageSpring::Do(), PotatoesIndustry::Do(), Sugarbeet::Do(), NLSpringBarleySpring::Do(), Fodderbeet::Do(), NorwegianPotatoes::Do(), Potatoes::Do(), SpringBarleySKManagement::Do(), NLCabbage::Do(), PLCarrots::Do(), SpringBarleySilage::Do(), SpringBarleySpr::Do(), WinterRyeStrigling::Do(), NLWinterWheat::Do(), SpringBarleyPTreatment::Do(), SpringBarleyStrigling::Do(), SpringBarleyStriglingCulm::Do(), SpringBarleyStriglingSingle::Do(), WinterRye::Do(), NLSpringBarley::Do(), PLSpringBarleySpr::Do(), SpringBarley::Do(), PLFodderLucerne1::Do(), SpringRape::Do(), PLBeetSpr::Do(), NLPermanentGrassGrazed::Do(), PLBeans::Do(), NLGrassGrazed1Spring::Do(), NLGrassGrazed2::Do(), WinterWheatStrigling::Do(), WinterWheatStriglingCulm::Do(), WinterWheatStriglingSingle::Do(), WWheatPTreatment::Do(), NLGrassGrazedLast::Do(), WinterBarleyStrigling::Do(), WinterRape::Do(), NLGrassGrazed1::Do(), AgroChemIndustryCereal::Do(), NLPotatoesSpring::Do(), WinterBarley::Do(), PLWinterRye::Do(), NLPotatoes::Do(), PLMaize::Do(), PLMaizeSilage::Do(), PLSpringBarley::Do(), NLTulips::Do(), PLWinterTriticale::Do(), PLBeet::Do(), PLSpringWheat::Do(), PLWinterBarley::Do(), PLWinterWheat::Do(), PLWinterWheatLate::Do(), PLPotatoes::Do(), PLWinterRape::Do(), WinterWheat::Do(), DummyCropPestTesting::DummyCropPestTesting(), FieldPeas::FieldPeas(), FieldPeasSilage::FieldPeasSilage(), FieldPeasStrigling::FieldPeasStrigling(), Fodderbeet::Fodderbeet(), FodderGrass::FodderGrass(), GetFirstDate(), Maize::Maize(), MaizeSilage::MaizeSilage(), MaizeStrigling::MaizeStrigling(), NLBeet::NLBeet(), NLBeetSpring::NLBeetSpring(), NLCabbage::NLCabbage(), NLCabbageSpring::NLCabbageSpring(), NLCarrots::NLCarrots(), NLCarrotsSpring::NLCarrotsSpring(), NLCatchPeaCrop::NLCatchPeaCrop(), NLGrassGrazed1::NLGrassGrazed1(), NLGrassGrazed1Spring::NLGrassGrazed1Spring(), NLGrassGrazed2::NLGrassGrazed2(), NLGrassGrazedLast::NLGrassGrazedLast(), NLMaize::NLMaize(), NLMaizeSpring::NLMaizeSpring(), NLPermanentGrassGrazed::NLPermanentGrassGrazed(), NLPotatoes::NLPotatoes(), NLPotatoesSpring::NLPotatoesSpring(), NLSpringBarley::NLSpringBarley(), NLSpringBarleySpring::NLSpringBarleySpring(), NLTulips::NLTulips(), NLWinterWheat::NLWinterWheat(), NorwegianOats::NorwegianOats(), NorwegianPotatoes::NorwegianPotatoes(), NorwegianSpringBarley::NorwegianSpringBarley(), Oats::Oats(), OBarleyPeaCloverGrass::OBarleyPeaCloverGrass(), OCarrots::OCarrots(), OCloverGrassGrazed1::OCloverGrassGrazed1(), OCloverGrassGrazed2::OCloverGrassGrazed2(), OCloverGrassSilage1::OCloverGrassSilage1(), OFieldPeas::OFieldPeas(), OFieldPeasSilage::OFieldPeasSilage(), OFodderbeet::OFodderbeet(), OGrazingPigs::OGrazingPigs(), OMaizeSilage::OMaizeSilage(), OOats::OOats(), OPermanentGrassGrazed::OPermanentGrassGrazed(), OPotatoes::OPotatoes(), OrchardCrop::OrchardCrop(), OSBarleySilage::OSBarleySilage(), OSeedGrass1::OSeedGrass1(), OSeedGrass2::OSeedGrass2(), OSpringBarley::OSpringBarley(), OSpringBarleyExt::OSpringBarleyExt(), OSpringBarleyPigs::OSpringBarleyPigs(), OTriticale::OTriticale(), OWinterBarley::OWinterBarley(), OWinterBarleyExt::OWinterBarleyExt(), OWinterRape::OWinterRape(), OWinterRye::OWinterRye(), OWinterWheat::OWinterWheat(), OWinterWheatUndersown::OWinterWheatUndersown(), OWinterWheatUndersownExt::OWinterWheatUndersownExt(), PermanentGrassGrazed::PermanentGrassGrazed(), PermanentGrassLowYield::PermanentGrassLowYield(), PermanentGrassTussocky::PermanentGrassTussocky(), PermanentSetAside::PermanentSetAside(), PLBeans::PLBeans(), PLBeet::PLBeet(), PLBeetSpr::PLBeetSpr(), PLCarrots::PLCarrots(), PLFodderLucerne1::PLFodderLucerne1(), PLFodderLucerne2::PLFodderLucerne2(), PLMaize::PLMaize(), PLMaizeSilage::PLMaizeSilage(), PLPotatoes::PLPotatoes(), PLSpringBarley::PLSpringBarley(), PLSpringBarleySpr::PLSpringBarleySpr(), PLSpringWheat::PLSpringWheat(), PLWinterBarley::PLWinterBarley(), PLWinterRape::PLWinterRape(), PLWinterRye::PLWinterRye(), PLWinterTriticale::PLWinterTriticale(), PLWinterWheat::PLWinterWheat(), PLWinterWheatLate::PLWinterWheatLate(), Potatoes::Potatoes(), PotatoesIndustry::PotatoesIndustry(), SeedGrass1::SeedGrass1(), SeedGrass2::SeedGrass2(), SetAside::SetAside(), SpringBarley::SpringBarley(), SpringBarleyCloverGrass::SpringBarleyCloverGrass(), SpringBarleyCloverGrassStrigling::SpringBarleyCloverGrassStrigling(), SpringBarleyPeaCloverGrassStrigling::SpringBarleyPeaCloverGrassStrigling(), SpringBarleyPTreatment::SpringBarleyPTreatment(), SpringBarleySeed::SpringBarleySeed(), SpringBarleySilage::SpringBarleySilage(), SpringBarleySKManagement::SpringBarleySKManagement(), SpringBarleySpr::SpringBarleySpr(), SpringBarleyStrigling::SpringBarleyStrigling(), SpringBarleyStriglingCulm::SpringBarleyStriglingCulm(), SpringBarleyStriglingSingle::SpringBarleyStriglingSingle(), SpringRape::SpringRape(), Sugarbeet::Sugarbeet(), Triticale::Triticale(), WinterBarley::WinterBarley(), WinterBarleyStrigling::WinterBarleyStrigling(), WinterRape::WinterRape(), WinterRapeStrigling::WinterRapeStrigling(), WinterRye::WinterRye(), WinterRyeStrigling::WinterRyeStrigling(), WinterWheat::WinterWheat(), WinterWheatStrigling::WinterWheatStrigling(), WinterWheatStriglingCulm::WinterWheatStriglingCulm(), WinterWheatStriglingSingle::WinterWheatStriglingSingle(), WWheatPTreatment::WWheatPTreatment(), and YoungForestCrop::YoungForestCrop().

◆ m_last_date

int Crop::m_last_date
protected

Referenced by PermanentSetAside::Do(), OGrazingPigs::Do(), PermanentGrassTussocky::Do(), WinterRapeStrigling::Do(), NorwegianOats::Do(), NorwegianSpringBarley::Do(), OrchardCrop::Do(), OSeedGrass1::Do(), BroadBeans::Do(), OSeedGrass2::Do(), YoungForestCrop::Do(), PermanentGrassLowYield::Do(), OSBarleySilage::Do(), OFieldPeas::Do(), OFieldPeasSilage::Do(), OPermanentGrassGrazed::Do(), OCarrots::Do(), SeedGrass1::Do(), PermanentGrassGrazed::Do(), OMaizeSilage::Do(), OBarleyPeaCloverGrass::Do(), OWinterBarleyExt::Do(), OWinterBarley::Do(), SeedGrass2::Do(), OWinterRye::Do(), OOats::Do(), MaizeSilage::Do(), Maize::Do(), MaizeStrigling::Do(), OTriticale::Do(), OSpringBarleyExt::Do(), Oats::Do(), SpringBarleySeed::Do(), OSpringBarley::Do(), FieldPeas::Do(), FieldPeasSilage::Do(), FieldPeasStrigling::Do(), OPotatoes::Do(), SpringBarleyCloverGrassStrigling::Do(), OWinterWheat::Do(), OWinterWheatUndersown::Do(), OWinterWheatUndersownExt::Do(), SpringBarleyCloverGrass::Do(), OFodderbeet::Do(), Triticale::Do(), OWinterRape::Do(), Carrots::Do(), SpringBarleyPeaCloverGrassStrigling::Do(), SetAside::Do(), PotatoesIndustry::Do(), Sugarbeet::Do(), NorwegianPotatoes::Do(), Potatoes::Do(), Fodderbeet::Do(), SpringBarleySKManagement::Do(), SpringBarleySpr::Do(), WinterRyeStrigling::Do(), SpringBarleySilage::Do(), SpringBarleyStrigling::Do(), SpringBarleyStriglingSingle::Do(), SpringBarleyStriglingCulm::Do(), WinterRye::Do(), SpringBarleyPTreatment::Do(), SpringBarley::Do(), SpringRape::Do(), WinterBarleyStrigling::Do(), WinterRape::Do(), AgroChemIndustryCereal::Do(), and WinterBarley::Do().


The documentation for this class was generated from the following files:
cfg_OptimisingFarms
CfgBool cfg_OptimisingFarms("OPTIMISING_FARMS", CFG_CUSTOM, false)
If set to true, the farmer decision making model is active.
Crop::m_ddegstoharvest
int m_ddegstoharvest
Definition: farm.h:543
tof_OptimisingFarm
Definition: farm.h:273
OptimisingFarm::Match_crop_to_field
void Match_crop_to_field(LE *a_field)
Finds a crop to be grown on a given field next year.
Definition: farm.cpp:9161
Farm::GetType
TTypesOfFarm GetType(void)
Definition: farm.h:901
cfg_OptimiseBedriftsmodelCrops
CfgBool cfg_OptimiseBedriftsmodelCrops("OPTIMISE_BEDRIFTSMODEL_CROPS", CFG_CUSTOM, false)
If set to true, the original farm optimisation model's crop set is used in the farmer decision making...
Crop::m_first_date
int m_first_date
Definition: farm.h:540
FarmEvent::m_startday
int m_startday
Definition: farm.h:466
TTypesOfVegetation
TTypesOfVegetation
Definition: tov_declaration.h:30
Farm::AddNewEvent
void AddNewEvent(TTypesOfVegetation a_event, long a_date, LE *a_field, int a_todo, long a_num, bool a_lock, int a_start, bool a_first_year, TTypesOfVegetation a_crop)
Adds an event to the event queue for a farm.
Definition: farm.cpp:789
tocc_Winter
Definition: farm.h:214
Crop::m_farm
Farm * m_farm
Definition: farm.h:537
Crop::m_field
LE * m_field
Definition: farm.h:538
Crop::m_CropClassification
int m_CropClassification
Definition: farm.h:545
OptimisingFarm
A farm that carries out crop, pesticide and fertilizer planning using simplified optimisation or othe...
Definition: farm.h:2028
Crop::SetCropClassification
void SetCropClassification(int a_classification)
Definition: farm.h:569
Crop::m_ev
FarmEvent * m_ev
Definition: farm.h:539