ALMaSS Hare ODDox  1.1
The hare model description following ODdox protocol
Crop Class Reference

The base class for all crops. More...

#include <farm.h>

Public Member Functions

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

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

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

Detailed Description

The base class for all crops.

Definition at line 534 of file farm.h.

Constructor & Destructor Documentation

◆ ~Crop()

virtual Crop::~Crop ( )
inlinevirtual

Definition at line 560 of file farm.h.

560 {}

◆ Crop()

Crop::Crop ( )

Definition at line 297 of file farm.cpp.

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.

Definition at line 318 of file farm.cpp.

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.

Definition at line 303 of file farm.cpp.

303  {
304  return true;
305 }

◆ GetCropClassification()

int Crop::GetCropClassification ( )
inline

Definition at line 567 of file farm.h.

567 { return m_CropClassification; }

References m_CropClassification.

◆ GetFirstDate()

int Crop::GetFirstDate ( void  )
inline

Definition at line 562 of file farm.h.

562 { return m_first_date; }

References m_first_date.

◆ SetCropClassification()

void Crop::SetCropClassification ( int  a_classification)
inline

Definition at line 569 of file farm.h.

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.

Definition at line 307 of file farm.cpp.

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

Definition at line 541 of file farm.h.

◆ m_CropClassification

int Crop::m_CropClassification
protected

Definition at line 545 of file farm.h.

Referenced by GetCropClassification(), and SetCropClassification().

◆ m_ddegstoharvest

int Crop::m_ddegstoharvest
protected

◆ m_ev

FarmEvent* Crop::m_ev
protected

Definition at line 539 of file farm.h.

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

Definition at line 537 of file farm.h.

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

Definition at line 538 of file farm.h.

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

Definition at line 540 of file farm.h.

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

Definition at line 542 of file farm.h.

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