1: <?php
2:
3:
4: namespace BeerXML\Generator;
5:
6: /**
7: * Interface for classes that want to implement the optional display properties from the appendix of the specification
8: *
9: * @package BeerXML\Generator
10: */
11: interface IRecipeDisplay extends IRecipe
12: {
13:
14: /**
15: * Actual alcohol by volume calculated from the OG and FG measured.
16: *
17: * @return float Percent
18: */
19: public function getAbv();
20:
21: /**
22: * The actual efficiency as calculated using the measured original and final gravity.
23: *
24: * @return float Percent
25: */
26: public function getActualEfficiency();
27:
28: /**
29: * Calorie estimate based on the measured starting and ending gravity.
30: *
31: * Note that calories should be quoted in "Cal" or kilocalories which is the normal dietary measure (i.e. a beer is
32: * usually in the range of 100-250 calories per 12 oz). Examples "180 Cal/pint",
33: *
34: * @return string
35: */
36: public function getCalories();
37:
38: /**
39: * Temperature to use when aging the beer in user units such as "55 F"
40: *
41: * @return string
42: */
43: public function getDisplayAgeTemp();
44:
45: /**
46: * Batch size in user defined units along with the units as in "5.0 gal"
47: *
48: * @return string
49: */
50: public function getDisplayBatchSize();
51:
52: /**
53: * Boil size with user defined units as in "6.3 gal"
54: *
55: * @return string
56: */
57: public function getDisplayBoilSize();
58:
59: /**
60: * Carbonation/Bottling temperature in appropriate units such as "40F" or "32 C"
61: *
62: * @return string
63: */
64: public function getDisplayCarbTemp();
65:
66: /**
67: * Text description of the carbonation used such as "50g corn sugar" or "Kegged at 20psi"
68: *
69: * @return string
70: */
71: public function getCarbonationUsed();
72:
73: /**
74: * Measured final gravity in user defined units as in "1.035 sg"
75: *
76: * @return string
77: */
78: public function getDisplayFg();
79:
80: /**
81: * Measured original gravity in user defined units as in "6.4 plato"
82: *
83: * @return string
84: */
85: public function getDisplayOg();
86:
87: /**
88: * Primary fermentation temperature in user defined units such as "64 F"
89: *
90: * @return string
91: */
92: public function getDisplayPrimaryTemp();
93:
94: /**
95: * Secondary fermentation temperature in user defined units such as "56 F"
96: *
97: * @return string
98: */
99: public function getDisplaySecondaryTemp();
100:
101: /**
102: * Tertiary temperature in user defined units such as "20 C"
103: *
104: * @return string
105: */
106: public function getDisplayTertiaryTemp();
107:
108: /**
109: * Estimated percent alcohol by volume for this recipe.
110: *
111: * @return float Percent
112: */
113: public function getEstAbv();
114:
115: /**
116: * The estimated color of the beer in user defined color units.
117: *
118: * @return string
119: */
120: public function getEstColor();
121:
122: /**
123: * Calculated estimate for the final specific gravity of this recipe along with the units as in "1.015 sg"
124: *
125: * @return string
126: */
127: public function getEstFg();
128:
129: /**
130: * Calculated estimate of the original gravity for this recipe along with the units.
131: *
132: * @return string
133: */
134: public function getEstOg();
135:
136: /**
137: * The estimated bitterness level of the beer in IBUs
138: *
139: * @return float
140: */
141: public function getIbu();
142:
143: /**
144: * May be "Rager", "Tinseth" or "Garetz" corresponding to the method/equation used to estimate IBUs for this recipe.
145: *
146: * @return string
147: */
148: public function getIbuMethod();
149: }