ALMaSS Skylark ODDox
1.1
The skylark model description following ODdox protocol
|
#include <OPermanentGrassGrazed.h>
◆ OPermanentGrassGrazed()
OPermanentGrassGrazed::OPermanentGrassGrazed |
( |
| ) |
|
|
inline |
◆ Do()
bool OPermanentGrassGrazed::Do |
( |
Farm * |
a_farm, |
|
|
LE * |
a_field, |
|
|
FarmEvent * |
a_ev |
|
) |
| |
|
virtual |
Reimplemented from Crop.
47 m_field->SetMDates(0,0,g_date->DayInYear(25,6));
49 m_field->SetMDates(1,0,g_date->DayInYear(1,10));
54 g_msg->Warn( WARN_BUG,
"OPermanentGrassGrazed::Do(): "
55 "Harvest too late for the next crop to start!!!",
"" );
63 int today=g_date->Date();
69 g_msg->Warn( WARN_BUG,
"OPermanentGrassGrazed::Do(): "
70 "Crop start attempt after last possible start date",
"" );
75 if ( g_date->Date() > d1 ) {
93 g_date->DayInYear( 15,6 ) - g_date->DayInYear())) {
101 SimpleEvent( g_date->OldDays() + g_date->DayInYear( 25,6 ),
109 g_date->DayInYear( 15,8 ) - g_date->DayInYear())) {
114 SimpleEvent( g_date->OldDays() + g_date->DayInYear( 26,6 ),
120 SimpleEvent( g_date->OldDays() + g_date->DayInYear( 15, 6 ),
150 SimpleEvent( g_date->OldDays() + g_date->DayInYear()+1,
162 SimpleEvent( g_date->OldDays() + g_date->DayInYear()+21,
169 g_date->DayInYear( 1,10 ) - g_date->DayInYear())) {
176 g_date->DayInYear( 1,10 ) - g_date->DayInYear())) {
189 g_date->DayInYear( 1,10 ) - g_date->DayInYear())) {
196 g_date->DayInYear( 1,10 ) - g_date->DayInYear())) {
205 SimpleEvent( g_date->OldDays() + g_date->DayInYear(5,9),
212 g_date->DayInYear( 1, 10 ) - g_date->DayInYear(),g_date->DayInYear( 1, 10 )))
220 g_date->DayInYear( 1, 10 ) - g_date->DayInYear(),g_date->DayInYear( 1, 10 )))
227 if (g_date->DayInYear()<g_date->DayInYear(10,9))
232 SimpleEvent( g_date->OldDays() + g_date->DayInYear(15,6),
238 (g_date->Date()<g_date->DayInYear(15,9)))
241 g_date->DayInYear( 15,9 ) - g_date->DayInYear())) {
251 g_msg->Warn( WARN_BUG,
"PermanantGrassGrazed::Do(): "
252 "Unknown event type! ",
"" );
References Farm::CattleIsOut(), Farm::CattleIsOutLow(), Farm::CattleOut(), Farm::CattleOutLowGrazing(), cfg_organic_extensive, Farm::CutToHay(), Farm::CutWeeds(), Farm::DoIt(), Farm::FA_Slurry(), Farm::HayBailing(), Farm::HayTurning(), Farm::IsStockFarmer(), Crop::m_ev, Crop::m_farm, Crop::m_field, Crop::m_first_date, FarmEvent::m_first_year, Crop::m_last_date, FarmEvent::m_lock, FarmEvent::m_startday, FarmEvent::m_todo, opgg_cattle_is_out, opgg_cattle_out1, opgg_cattle_out2, opgg_compress_straw, OPGG_CUT_DATE, opgg_cut_to_hay, opgg_cut_weeds, OPGG_FERTI_DATE, opgg_ferti_s, opgg_raking1, opgg_raking2, opgg_start, OPGG_TURN_DATE, and Crop::SimpleEvent().
The documentation for this class was generated from the following files:
Definition: OPermanentGrassGrazed.h:39
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
#define OPGG_FERTI_DATE
Definition: OPermanentGrassGrazed.h:33
bool IsStockFarmer(void)
Definition: farm.h:905
bool m_lock
Definition: farm.h:465
virtual bool CattleIsOut(LE *a_field, double a_user, int a_days, int a_max)
Generate a 'cattle_out' event for every day the cattle are on a_field.
Definition: farmfuncs.cpp:1974
bool DoIt(double a_probability)
Return chance out of 0 to 100.
Definition: farm.cpp:800
bool m_first_year
Definition: farm.h:467
virtual bool CutToHay(LE *a_field, double a_user, int a_days)
Carry out hay cutting on a_field.
Definition: farmfuncs.cpp:2269
int m_first_date
Definition: farm.h:540
int m_startday
Definition: farm.h:466
Definition: OPermanentGrassGrazed.h:41
virtual bool CattleIsOutLow(LE *a_field, double a_user, int a_days, int a_max)
Generate a 'cattle_out_low' event for every day the cattle are on a_field.
Definition: farmfuncs.cpp:2018
void SimpleEvent(long a_date, int a_todo, bool a_lock)
Adds an event to this crop management.
Definition: farm.cpp:307
Definition: OPermanentGrassGrazed.h:44
Definition: OPermanentGrassGrazed.h:45
virtual bool CattleOutLowGrazing(LE *a_field, double a_user, int a_days)
Start a extensive grazing event on a_field today.
Definition: farmfuncs.cpp:1944
Definition: OPermanentGrassGrazed.h:38
Definition: OPermanentGrassGrazed.h:43
virtual bool HayBailing(LE *a_field, double a_user, int a_days)
Carry out hay bailing on a_field.
Definition: farmfuncs.cpp:2184
Definition: OPermanentGrassGrazed.h:37
Farm * m_farm
Definition: farm.h:537
LE * m_field
Definition: farm.h:538
Definition: OPermanentGrassGrazed.h:46
int m_todo
Definition: farm.h:469
int m_last_date
Definition: farm.h:542
#define OPGG_CUT_DATE
Definition: OPermanentGrassGrazed.h:32
Definition: OPermanentGrassGrazed.h:40
#define OPGG_TURN_DATE
Definition: OPermanentGrassGrazed.h:34
CfgBool cfg_organic_extensive
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
virtual bool CattleOut(LE *a_field, double a_user, int a_days)
Start a grazing event on a_field today.
Definition: farmfuncs.cpp:1910
Definition: OPermanentGrassGrazed.h:42
virtual bool CutWeeds(LE *a_field, double a_user, int a_days)
Carry out weed topping on a_field.
Definition: farmfuncs.cpp:2303