} // end AddAttribute /// <summary> /// adds a new condition definition object with the name provided as aConditionDefinition /// </summary> /// <param name="aConditionName">the condition name</param> /// <returns> /// S_OK - if succeeded /// E_FAIL - if failure /// </returns> /// <include /// file='TBNS.doc.xml' /// path='//class[@name="AeCategory"]/ /// method[@name="AddConditionDefinition"]/doc/*' /// /> public virtual int AddConditionDefinition(string aConditionName) { try { if (aConditionName.Length == 0) { return (int) EnumResultCode.E_FAIL; } // end if if (Handle == 0) { return (int) EnumResultCode.E_FAIL; } // end if int result = OTBFunctions.OTSAddCondition(this.Handle, aConditionName); if (ResultCode.SUCCEEDED(result)) { Hashtable syncConditions = Hashtable.Synchronized(this.m_conditions); // Check for a duplicate condition AeConditionDefinition condition = syncConditions[aConditionName] as AeConditionDefinition; if (condition == null) { condition = new AeConditionDefinition(aConditionName); syncConditions.Add(aConditionName, condition); } // end if } // end if return result; } catch (Exception e) { Application.Instance.Trace(EnumTraceLevel.ERR, EnumTraceGroup.OPCSERVER, "Category.AddCondition", "Exception caught:" + e.ToString()); return (int) EnumResultCode.E_FAIL; } // enc try ... catch } // end AddConditionDefinition