ALMaSS Skylark ODDox
1.1
The skylark model description following ODdox protocol
|
#include <WWheatPToxicControl.h>
◆ Do()
bool WWheatPToxicControl::Do |
( |
Farm * |
a_farm, |
|
|
LE * |
a_field, |
|
|
FarmEvent * |
a_ev |
|
) |
| |
|
virtual |
Reimplemented from Crop.
53 int d1 = g_date->OldDays() + g_date->DayInYear( 15,8 );
54 if (g_date->Date() >= d1)
57 if (g_date->DayInYear()>g_date->DayInYear(1,10)) {
63 if (g_date->Date() >= d1) d1 += 365;
76 g_date->DayInYear( 1,10 ) - g_date->DayInYear())) {
86 g_date->DayInYear( 1,10 ) - g_date->DayInYear())) {
100 g_date->DayInYear( 1,10 ) - g_date->DayInYear())) {
112 g_date->DayInYear( 1,10 ) - g_date->DayInYear())) {
128 g_date->DayInYear( 10,10 ) - g_date->DayInYear())) {
132 SimpleEvent( g_date->OldDays() + g_date->DayInYear( 10,9 ),
138 g_date->DayInYear( 10,10 ) - g_date->DayInYear())) {
142 SimpleEvent( g_date->OldDays() + g_date->DayInYear( 10,9 ),
148 g_date->DayInYear( 20,10 ) - g_date->DayInYear())) {
162 g_date->DayInYear( 27,10 ) - g_date->DayInYear())) {
167 SimpleEvent( g_date->OldDays() + g_date->DayInYear( 15,9 ),
174 if (
m_field->GetVegBiomass()>0)
178 g_date->DayInYear( 30,10 ) - g_date->DayInYear()))
185 SimpleEvent( g_date->OldDays() + g_date->DayInYear( 20,9 ),
193 g_date->DayInYear( 5,10 ) - g_date->DayInYear())) {
198 SimpleEvent( g_date->OldDays() + g_date->DayInYear( 1,4 )+365,
206 g_date->DayInYear( 30,4 ) - g_date->DayInYear())) {
214 SimpleEvent( g_date->OldDays() + g_date->DayInYear( 10,4 ),
218 SimpleEvent( g_date->OldDays() + g_date->DayInYear( 25,3 ),
221 SimpleEvent( g_date->OldDays() + g_date->DayInYear( 15,4 ),
223 SimpleEvent( g_date->OldDays() + g_date->DayInYear( 25,4 ),
225 SimpleEvent( g_date->OldDays() + g_date->DayInYear( 20,4 ),
227 SimpleEvent( g_date->OldDays() + g_date->DayInYear( 1,5 ),
229 SimpleEvent( g_date->OldDays() + g_date->DayInYear( 10,4 ),
231 SimpleEvent( g_date->OldDays() + g_date->DayInYear( 1,5 ),
239 g_date->DayInYear( 30,4 ) - g_date->DayInYear())) {
252 g_date->DayInYear( 10,5 ) - g_date->DayInYear())) {
264 g_date->DayInYear( 10,5 ) - g_date->DayInYear())) {
269 SimpleEvent( g_date->OldDays() + g_date->DayInYear( 20,5 ),
277 g_date->DayInYear( 15,5 ) - g_date->DayInYear())) {
294 SimpleEvent( g_date->OldDays() + g_date->DayInYear( 1,6 ),
310 if ((g_date->Date()+7)<( g_date->OldDays() + g_date->DayInYear( 15,6 )))
311 SimpleEvent( g_date->OldDays() + g_date->DayInYear( 15,6 ),
335 g_date->DayInYear( 25,4 ) - g_date->DayInYear())) {
341 if ((g_date->Date()+7)<( g_date->OldDays() + g_date->DayInYear( 15,6 )))
342 SimpleEvent( g_date->OldDays() + g_date->DayInYear( 25,4),
352 g_date->DayInYear( 5,5 ) - g_date->DayInYear())) {
363 g_date->DayInYear( 15,5 ) - g_date->DayInYear())) {
368 if ((g_date->Date()+5)<( g_date->OldDays() + g_date->DayInYear( 2,5 )))
369 SimpleEvent( g_date->OldDays() + g_date->DayInYear( 2,5 ),
378 g_date->DayInYear( 1,6 ) - g_date->DayInYear())) {
387 g_date->DayInYear( 15,4 ) - g_date->DayInYear())) {
392 SimpleEvent( g_date->OldDays() + g_date->DayInYear( 25,4 ),
394 SimpleEvent( g_date->OldDays() + g_date->DayInYear( 1,4 ),
402 g_date->DayInYear( 15,5 ) - g_date->DayInYear())) {
409 SimpleEvent( g_date->OldDays() + g_date->DayInYear( 5,8 ),
417 g_date->DayInYear( 5,5 ) - g_date->DayInYear())) {
426 g_date->DayInYear( 30,5 ) - g_date->DayInYear())) {
431 SimpleEvent( g_date->OldDays() + g_date->DayInYear( 5,8 ),
439 g_date->DayInYear( 20,4 ) - g_date->DayInYear())) {
443 SimpleEvent( g_date->OldDays() + g_date->DayInYear( 21,4 ),
452 g_date->DayInYear( 1,5 ) - g_date->DayInYear())) {
461 g_date->DayInYear( 20,8 ) - g_date->DayInYear()))
473 g_date->DayInYear( 20,8 ) - g_date->DayInYear())) {
479 if ((g_date->Date()+5)<( g_date->OldDays() + g_date->DayInYear( 2,5 )))
480 SimpleEvent( g_date->OldDays() + g_date->DayInYear( 10,8 ),
494 g_date->DayInYear( 20,8 ) - g_date->DayInYear())) {
499 SimpleEvent( g_date->OldDays() + g_date->DayInYear( 5,8 ),
505 g_date->DayInYear( 25,8 ) - g_date->DayInYear())) {
509 SimpleEvent( g_date->OldDays() + g_date->DayInYear( 10,8 ),
517 g_date->DayInYear( 15,9 ) - g_date->DayInYear())) {
522 SimpleEvent( g_date->OldDays() + g_date->DayInYear( 15,8 ),
530 g_date->DayInYear( 15,10 ) - g_date->DayInYear())) {
540 g_msg->Warn( WARN_BUG,
"WheatPControl::Do(): "
541 "Unknown event type! ",
"" );
References Farm::AutumnHarrow(), Farm::AutumnPlough(), Farm::AutumnRoll(), Farm::AutumnSow(), cfg_herbi_app_prop, cfg_pest_product_1_amount, Farm::DeepPlough(), Farm::DoIt(), Farm::FA_Manure(), Farm::FA_NPK(), Farm::FA_Slurry(), Farm::FP_ManganeseSulphate(), Farm::FP_NPK(), Farm::FP_Slurry(), Farm::FungicideTreat(), Farm::GrowthRegulator(), Farm::Harvest(), Farm::HayBailing(), Farm::HayTurning(), Farm::HerbicideTreat(), Farm::IsStockFarmer(), Crop::m_ev, Crop::m_farm, Crop::m_field, FarmEvent::m_lock, FarmEvent::m_todo, ppp_1, Farm::ProductApplication(), Crop::SimpleEvent(), Farm::SpringRoll(), Farm::StrawChopping(), Farm::Strigling(), Farm::StubbleHarrowing(), Farm::Water(), wwptc_autumn_harrow, wwptc_autumn_plough, wwptc_autumn_roll, wwptc_autumn_sow, wwptc_ferti_p1, wwptc_ferti_p2, wwptc_ferti_p3, wwptc_ferti_p4, wwptc_ferti_p5, wwptc_ferti_s1, wwptc_ferti_s2, wwptc_ferti_s3, wwptc_ferti_s4, wwptc_ferti_s5, wwptc_fungicide, wwptc_fungicide2, wwptc_GR, wwptc_grubning, wwptc_harvest, wwptc_hay_baling, wwptc_hay_turning, wwptc_herbicide1, wwptc_herbicide2, wwptc_insecticide1, wwptc_insecticide2, wwptc_insecticide3, wwptc_spring_roll, wwptc_start, wwptc_straw_chopping, wwptc_strigling1, wwptc_strigling2, wwptc_stubble_harrow1, wwptc_stubble_harrow2, wwptc_water1, wwptc_water2, WWTC_AUTUMN_PLOUGH, and WWTC_WAIT_FOR_PLOUGH.
The documentation for this class was generated from the following files:
Definition: WWheatPToxicControl.h:77
Definition: WWheatPToxicControl.h:50
virtual bool SpringRoll(LE *a_field, double a_user, int a_days)
Carry out a roll event in the spring on a_field.
Definition: farmfuncs.cpp:525
virtual bool FA_Slurry(LE *a_field, double a_user, int a_days)
Spready slurry on a_field owned by an stock farmer.
Definition: farmfuncs.cpp:965
virtual bool HerbicideTreat(LE *a_field, double a_user, int a_days)
Apply herbicide to a_field.
Definition: farmfuncs.cpp:1156
bool IsStockFarmer(void)
Definition: farm.h:905
virtual bool Strigling(LE *a_field, double a_user, int a_days)
Carry out a mechanical weeding on a_field.
Definition: farmfuncs.cpp:1545
CfgFloat cfg_herbi_app_prop
virtual bool Harvest(LE *a_field, double a_user, int a_days)
Carry out a harvest on a_field.
Definition: farmfuncs.cpp:1769
Definition: WWheatPToxicControl.h:76
bool m_lock
Definition: farm.h:465
virtual bool FP_ManganeseSulphate(LE *a_field, double a_user, int a_days)
Apply Manganse Sulphate to a_field owned by an arable farmer.
Definition: farmfuncs.cpp:727
Definition: WWheatPToxicControl.h:55
virtual bool ProductApplication(LE *a_field, double a_user, int a_days, double a_applicationrate, PlantProtectionProducts a_ppp)
Apply test pesticide to a_field.
Definition: farmfuncs.cpp:1445
Definition: WWheatPToxicControl.h:64
virtual bool FP_NPK(LE *a_field, double a_user, int a_days)
Apply NPK fertilizer, on a_field owned by an arable farmer.
Definition: farmfuncs.cpp:629
Definition: WWheatPToxicControl.h:47
Definition: WWheatPToxicControl.h:66
bool DoIt(double a_probability)
Return chance out of 0 to 100.
Definition: farm.cpp:800
Definition: WWheatPToxicControl.h:45
Definition: WWheatPToxicControl.h:52
Definition: WWheatPToxicControl.h:59
Definition: WWheatPToxicControl.h:49
virtual bool FA_Manure(LE *a_field, double a_user, int a_days)
Spread manure on a_field owned by an stock farmer.
Definition: farmfuncs.cpp:1036
Definition: WWheatPToxicControl.h:72
Definition: WWheatPToxicControl.h:75
Definition: WWheatPToxicControl.h:70
virtual bool FA_NPK(LE *a_field, double a_user, int a_days)
Apply NPK fertilizer to a_field owned by an stock farmer.
Definition: farmfuncs.cpp:917
virtual bool FungicideTreat(LE *a_field, double a_user, int a_days)
Apply fungicide to a_field.
Definition: farmfuncs.cpp:1279
Definition: WWheatPToxicControl.h:71
Definition: WWheatPToxicControl.h:79
void SimpleEvent(long a_date, int a_todo, bool a_lock)
Adds an event to this crop management.
Definition: farm.cpp:307
virtual bool AutumnSow(LE *a_field, double a_user, int a_days)
Carry out a sowing event in the autumn on a_field.
Definition: farmfuncs.cpp:364
virtual bool HayBailing(LE *a_field, double a_user, int a_days)
Carry out hay bailing on a_field.
Definition: farmfuncs.cpp:2184
virtual bool StrawChopping(LE *a_field, double a_user, int a_days)
Carry out straw chopping on a_field.
Definition: farmfuncs.cpp:2132
Definition: WWheatPToxicControl.h:80
Definition: WWheatPToxicControl.h:58
Definition: WWheatPToxicControl.h:54
Definition: WWheatPToxicControl.h:78
Definition: WWheatPToxicControl.h:60
Definition: WWheatPToxicControl.h:53
Definition: WWheatPToxicControl.h:48
#define WWTC_AUTUMN_PLOUGH
Definition: WWheatPToxicControl.h:42
Farm * m_farm
Definition: farm.h:537
LE * m_field
Definition: farm.h:538
Definition: WWheatPToxicControl.h:61
int m_todo
Definition: farm.h:469
Definition: WWheatPToxicControl.h:69
virtual bool AutumnRoll(LE *a_field, double a_user, int a_days)
Carry out a roll event in the autumn on a_field.
Definition: farmfuncs.cpp:288
virtual bool FP_Slurry(LE *a_field, double a_user, int a_days)
Apply slurry to a_field owned by an arable farmer.
Definition: farmfuncs.cpp:701
Definition: WWheatPToxicControl.h:57
virtual bool Water(LE *a_field, double a_user, int a_days)
Carry out a watering on a_field.
Definition: farmfuncs.cpp:1717
virtual bool AutumnPlough(LE *a_field, double a_user, int a_days)
Carry out a ploughing event in the autumn on a_field.
Definition: farmfuncs.cpp:132
virtual bool AutumnHarrow(LE *a_field, double a_user, int a_days)
Carry out a harrow event in the autumn on a_field.
Definition: farmfuncs.cpp:261
Definition: WWheatPToxicControl.h:67
#define WWTC_WAIT_FOR_PLOUGH
Definition: WWheatPToxicControl.h:41
Definition: WWheatPToxicControl.h:63
virtual bool DeepPlough(LE *a_field, double a_user, int a_days)
Carry out a deep ploughing event on a_field.
Definition: farmfuncs.cpp:417
Definition: WWheatPToxicControl.h:65
virtual bool GrowthRegulator(LE *a_field, double a_user, int a_days)
Apply growth regulator to a_field.
Definition: farmfuncs.cpp:1250
Definition: WWheatPToxicControl.h:62
Definition: WWheatPToxicControl.h:51
CfgFloat cfg_pest_product_1_amount
Definition: WWheatPToxicControl.h:68
virtual bool HayTurning(LE *a_field, double a_user, int a_days)
Carry out hay turning on a_field.
Definition: farmfuncs.cpp:2159
FarmEvent * m_ev
Definition: farm.h:539
Definition: WWheatPToxicControl.h:56
virtual bool StubbleHarrowing(LE *a_field, double a_user, int a_days)
Carry out stubble harrowing on a_field.
Definition: farmfuncs.cpp:2209
Definition: WWheatPToxicControl.h:73
Definition: WWheatPToxicControl.h:74