ALMaSS Hare ODDox  1.1
The hare model description following ODdox protocol
Oats.h
Go to the documentation of this file.
1 //
2 // Oats.h
3 //
4 /*
5 *******************************************************************************************************
6 Copyright (c) 2011, Christopher John Topping, University of Aarhus
7 All rights reserved.
8 
9 Redistribution and use in source and binary forms, with or without modification, are permitted provided
10 that the following conditions are met:
11 
12 Redistributions of source code must retain the above copyright notice, this list of conditions and the
13 following disclaimer.
14 Redistributions in binary form must reproduce the above copyright notice, this list of conditions and
15 the following disclaimer in the documentation and/or other materials provided with the distribution.
16 
17 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR
18 IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
19 FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS
20 BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
21 BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
22 BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
23 LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
24 SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
25 ********************************************************************************************************
26 */
27 
28 
29 #ifndef Oats_h
30 #define Oats_h
31 
32 #define Oats_BASE 6225
33 
34 #define OA_SOW_DATE m_field->m_user[0]
35 #define OA_DID_STRIGLING_ONE m_field->m_user[1]
36 #define OA_DECIDE_TO_HERB m_field->m_user[2]
37 
38 typedef enum {
39  oa_start = 1, // Compulsory, start event must always be 1 (one).
54 // --FN--
55 } OAToDo;
56 
57 
58 
59 class Oats: public Crop
60 {
61 public:
62  bool Do( Farm *a_farm, LE *a_field, FarmEvent *a_ev );
63  Oats()
64  {
65  //m_first_date=g_date->DayInYear(1,10);
66  // Use below if no autumn plough
67  m_first_date=g_date->DayInYear(30,12);
68  }
69 };
70 
71 #endif // Oats_h
oa_insecticide
Definition: Oats.h:50
oa_herbicide_two
Definition: Oats.h:49
oa_spring_harrow
Definition: Oats.h:43
FarmEvent
A struct to hold the information required to trigger a farm event.
Definition: farm.h:463
oa_fertslurry_stock
Definition: Oats.h:44
oa_straw_chopping
Definition: Oats.h:52
oa_fertmanure_stock
Definition: Oats.h:41
Crop::m_first_date
int m_first_date
Definition: farm.h:540
Crop
The base class for all crops.
Definition: farm.h:534
oa_spring_plough
Definition: Oats.h:42
Oats::Do
bool Do(Farm *a_farm, LE *a_field, FarmEvent *a_ev)
Definition: Oats.cpp:35
Oats_BASE
#define Oats_BASE
Definition: Oats.h:32
oa_spring_sow_one
Definition: Oats.h:45
Oats
Definition: Oats.h:59
oa_spring_roll
Definition: Oats.h:47
Oats::Oats
Oats()
Definition: Oats.h:63
oa_harvest
Definition: Oats.h:51
Farm
The base class for all farm types.
Definition: farm.h:767
oa_herbicide_one
Definition: Oats.h:48
OAToDo
OAToDo
Definition: Oats.h:38
oa_start
Definition: Oats.h:39
oa_hay_bailing
Definition: Oats.h:53
oa_autumn_plough
Definition: Oats.h:40
oa_spring_sow_two
Definition: Oats.h:46