ALMaSS Skylark ODDox
1.1
The skylark model description following ODdox protocol
|
#include <WWheatPControl.h>
◆ Do()
bool WWheatPControl::Do |
( |
Farm * |
a_farm, |
|
|
LE * |
a_field, |
|
|
FarmEvent * |
a_ev |
|
) |
| |
|
virtual |
Reimplemented from Crop.
51 int d1 = g_date->OldDays() + g_date->DayInYear( 15,8 );
52 if (g_date->Date() >= d1)
55 if (g_date->DayInYear()>g_date->DayInYear(1,10)) {
61 if (g_date->Date() >= d1) d1 += 365;
74 g_date->DayInYear( 1,10 ) - g_date->DayInYear())) {
84 g_date->DayInYear( 1,10 ) - g_date->DayInYear())) {
98 g_date->DayInYear( 1,10 ) - g_date->DayInYear())) {
110 g_date->DayInYear( 1,10 ) - g_date->DayInYear())) {
126 g_date->DayInYear( 10,10 ) - g_date->DayInYear())) {
130 SimpleEvent( g_date->OldDays() + g_date->DayInYear( 10,9 ),
136 g_date->DayInYear( 10,10 ) - g_date->DayInYear())) {
140 SimpleEvent( g_date->OldDays() + g_date->DayInYear( 10,9 ),
146 g_date->DayInYear( 20,10 ) - g_date->DayInYear())) {
160 g_date->DayInYear( 27,10 ) - g_date->DayInYear())) {
165 SimpleEvent( g_date->OldDays() + g_date->DayInYear( 15,9 ),
172 if (
m_field->GetVegBiomass()>0)
176 g_date->DayInYear( 30,10 ) - g_date->DayInYear()))
183 SimpleEvent( g_date->OldDays() + g_date->DayInYear( 20,9 ),
191 g_date->DayInYear( 5,10 ) - g_date->DayInYear())) {
196 SimpleEvent( g_date->OldDays() + g_date->DayInYear( 1,4 )+365,
204 g_date->DayInYear( 30,4 ) - g_date->DayInYear())) {
212 SimpleEvent( g_date->OldDays() + g_date->DayInYear( 10,4 ),
216 SimpleEvent( g_date->OldDays() + g_date->DayInYear( 25,3 ),
219 SimpleEvent( g_date->OldDays() + g_date->DayInYear( 15,4 ),
221 SimpleEvent( g_date->OldDays() + g_date->DayInYear( 25,4 ),
223 SimpleEvent( g_date->OldDays() + g_date->DayInYear( 20,4 ),
225 SimpleEvent( g_date->OldDays() + g_date->DayInYear( 1,5 ),
227 SimpleEvent( g_date->OldDays() + g_date->DayInYear( 10,4 ),
229 SimpleEvent( g_date->OldDays() + g_date->DayInYear( 1,5 ),
237 g_date->DayInYear( 30,4 ) - g_date->DayInYear())) {
250 g_date->DayInYear( 10,5 ) - g_date->DayInYear())) {
262 g_date->DayInYear( 10,5 ) - g_date->DayInYear())) {
267 SimpleEvent( g_date->OldDays() + g_date->DayInYear( 20,5 ),
275 g_date->DayInYear( 15,5 ) - g_date->DayInYear())) {
292 SimpleEvent( g_date->OldDays() + g_date->DayInYear( 1,6 ),
308 if ((g_date->Date()+7)<( g_date->OldDays() + g_date->DayInYear( 15,6 )))
309 SimpleEvent( g_date->OldDays() + g_date->DayInYear( 15,6 ),
333 g_date->DayInYear( 25,4 ) - g_date->DayInYear())) {
339 if ((g_date->Date()+7)<( g_date->OldDays() + g_date->DayInYear( 15,6 )))
340 SimpleEvent( g_date->OldDays() + g_date->DayInYear( 25,4),
350 g_date->DayInYear( 5,5 ) - g_date->DayInYear())) {
361 g_date->DayInYear( 15,5 ) - g_date->DayInYear())) {
366 if ((g_date->Date()+5)<( g_date->OldDays() + g_date->DayInYear( 2,5 )))
367 SimpleEvent( g_date->OldDays() + g_date->DayInYear( 2,5 ),
376 g_date->DayInYear( 1,6 ) - g_date->DayInYear())) {
385 g_date->DayInYear( 15,4 ) - g_date->DayInYear())) {
390 SimpleEvent( g_date->OldDays() + g_date->DayInYear( 25,4 ),
392 SimpleEvent( g_date->OldDays() + g_date->DayInYear( 1,4 ),
400 g_date->DayInYear( 15,5 ) - g_date->DayInYear())) {
407 SimpleEvent( g_date->OldDays() + g_date->DayInYear( 5,8 ),
415 g_date->DayInYear( 5,5 ) - g_date->DayInYear())) {
424 g_date->DayInYear( 30,5 ) - g_date->DayInYear())) {
429 SimpleEvent( g_date->OldDays() + g_date->DayInYear( 5,8 ),
437 g_date->DayInYear( 20,4 ) - g_date->DayInYear())) {
441 SimpleEvent( g_date->OldDays() + g_date->DayInYear( 21,4 ),
450 g_date->DayInYear( 1,5 ) - g_date->DayInYear())) {
459 g_date->DayInYear( 20,8 ) - g_date->DayInYear()))
471 g_date->DayInYear( 20,8 ) - g_date->DayInYear())) {
477 if ((g_date->Date()+5)<( g_date->OldDays() + g_date->DayInYear( 2,5 )))
478 SimpleEvent( g_date->OldDays() + g_date->DayInYear( 10,8 ),
492 g_date->DayInYear( 20,8 ) - g_date->DayInYear())) {
497 SimpleEvent( g_date->OldDays() + g_date->DayInYear( 5,8 ),
503 g_date->DayInYear( 25,8 ) - g_date->DayInYear())) {
507 SimpleEvent( g_date->OldDays() + g_date->DayInYear( 10,8 ),
515 g_date->DayInYear( 15,9 ) - g_date->DayInYear())) {
520 SimpleEvent( g_date->OldDays() + g_date->DayInYear( 15,8 ),
528 g_date->DayInYear( 15,10 ) - g_date->DayInYear())) {
538 g_msg->Warn( WARN_BUG,
"WheatPControl::Do(): "
539 "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_DateLimited(), Crop::SimpleEvent(), Farm::SpringRoll(), Farm::StrawChopping(), Farm::Strigling(), Farm::StubbleHarrowing(), Farm::Water(), wwpc_autumn_harrow, WWPC_AUTUMN_PLOUGH, wwpc_autumn_plough, wwpc_autumn_roll, wwpc_autumn_sow, wwpc_ferti_p1, wwpc_ferti_p2, wwpc_ferti_p3, wwpc_ferti_p4, wwpc_ferti_p5, wwpc_ferti_s1, wwpc_ferti_s2, wwpc_ferti_s3, wwpc_ferti_s4, wwpc_ferti_s5, wwpc_fungicide, wwpc_fungicide2, wwpc_GR, wwpc_grubning, wwpc_harvest, wwpc_hay_baling, wwpc_hay_turning, wwpc_herbicide1, wwpc_herbicide2, wwpc_insecticide1, wwpc_insecticide2, wwpc_insecticide3, wwpc_spring_roll, wwpc_start, wwpc_straw_chopping, wwpc_strigling1, wwpc_strigling2, wwpc_stubble_harrow1, wwpc_stubble_harrow2, WWPC_WAIT_FOR_PLOUGH, wwpc_water1, and wwpc_water2.
The documentation for this class was generated from the following files:
Definition: WWheatPControl.h:48
Definition: WWheatPControl.h:52
Definition: WWheatPControl.h:74
Definition: WWheatPControl.h:56
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
Definition: WWheatPControl.h:62
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
virtual bool Harvest(LE *a_field, double a_user, int a_days)
Carry out a harvest on a_field.
Definition: farmfuncs.cpp:1769
Definition: WWheatPControl.h:68
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
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
bool DoIt(double a_probability)
Return chance out of 0 to 100.
Definition: farm.cpp:800
Definition: WWheatPControl.h:53
Definition: WWheatPControl.h:58
CfgFloat cfg_pest_product_1_amount
Definition: WWheatPControl.h:73
Definition: WWheatPControl.h:64
Definition: WWheatPControl.h:54
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: WWheatPControl.h:49
Definition: WWheatPControl.h:70
virtual bool ProductApplication_DateLimited(LE *a_field, double, int, double a_applicationrate, PlantProtectionProducts a_ppp)
Special pesticide trial functionality.
Definition: farmfuncs.cpp:2396
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
Definition: WWheatPControl.h:59
virtual bool FungicideTreat(LE *a_field, double a_user, int a_days)
Apply fungicide to a_field.
Definition: farmfuncs.cpp:1279
Definition: WWheatPControl.h:77
void SimpleEvent(long a_date, int a_todo, bool a_lock)
Adds an event to this crop management.
Definition: farm.cpp:307
#define WWPC_AUTUMN_PLOUGH
Definition: WWheatPControl.h:41
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
Definition: WWheatPControl.h:75
Definition: WWheatPControl.h:76
Definition: WWheatPControl.h:47
CfgFloat cfg_herbi_app_prop
virtual bool HayBailing(LE *a_field, double a_user, int a_days)
Carry out hay bailing on a_field.
Definition: farmfuncs.cpp:2184
Definition: WWheatPControl.h:63
virtual bool StrawChopping(LE *a_field, double a_user, int a_days)
Carry out straw chopping on a_field.
Definition: farmfuncs.cpp:2132
Definition: WWheatPControl.h:69
Definition: WWheatPControl.h:71
Definition: WWheatPControl.h:60
Definition: WWheatPControl.h:46
Definition: WWheatPControl.h:51
Farm * m_farm
Definition: farm.h:537
LE * m_field
Definition: farm.h:538
Definition: WWheatPControl.h:61
Definition: WWheatPControl.h:79
int m_todo
Definition: farm.h:469
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: WWheatPControl.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
Definition: WWheatPControl.h:50
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
Definition: WWheatPControl.h:72
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: WWheatPControl.h:44
Definition: WWheatPControl.h:65
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: WWheatPControl.h:78
virtual bool GrowthRegulator(LE *a_field, double a_user, int a_days)
Apply growth regulator to a_field.
Definition: farmfuncs.cpp:1250
#define WWPC_WAIT_FOR_PLOUGH
Definition: WWheatPControl.h:40
Definition: WWheatPControl.h:67
Definition: WWheatPControl.h:55
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: WWheatPControl.h:66
virtual bool StubbleHarrowing(LE *a_field, double a_user, int a_days)
Carry out stubble harrowing on a_field.
Definition: farmfuncs.cpp:2209