/// <summary>
        /// Calculate method for the component with test of preconditions
        /// </summary>
        /// <param name=w>WheatLAIState Domain class contains the accessors to values</param>
        /// <param name="saveLog">Save log via a writer or show on screen</param>
        /// <param name="callID">Context description for violations</param>
        public void Estimate
            (IStrategySiriusQualityWheatLAI st, WheatLAIState w, bool saveLog, string callID)
        {
            _resultPreConditions  = String.Empty;
            _resultPostConditions = String.Empty;
            _resultPreConditions  = st.TestPreConditions(w, callID);
            st.Estimate
                (w);
            _resultPostConditions = st.TestPostConditions(w, callID);

            if (_resultPreConditions != String.Empty || _resultPostConditions != String.Empty)
            {
                p.TestsOut(_resultPreConditions + _resultPostConditions, saveLog, callID);
            }
        }
 /// <summary>
 /// Calculate method for the component
 /// </summary>
 /// <param name=w>WheatLAIState Domain class contains the accessors to values</param>
 public void Estimate
     (IStrategySiriusQualityWheatLAI st, WheatLAIState w)
 {
     st.Estimate
         (w);
 }
 /// <summary>
 /// Calculate method for the component
 /// </summary>
 /// <param name=w>WheatLAIState Domain class contains the accessors to values</param>
 /// <param name=w1>WheatLeafState Domain class contains the accessors to values</param>
 /// <param name=w2>WheatLeafState Domain class contains the accessors to values</param>
 /// <param name=ae>AgroManagement objects of impact parameters</param>
 public void Estimate
     (IStrategySiriusQualityWheatLAI st, WheatLAIState w, WheatLeafState w1, WheatLeafState w2, ActEvents ae)
 {
     st.Estimate
         (w, w1, w2, ae);
 }