/// <summary> /// Constructor for the wrapper class for COM-based boolean-valued parameter. /// </summary> /// <remarks> /// This constructor creates an instance of a class that wraps a COM-based boolean-valued paramemter. This /// wrapper exposes appropriate .NET-based parameter interfaces for the wrapped parameter. /// </remarks> /// <param name = "parameter">The parameter to be wrapped.</param> public BooleanParameterWrapper(ICapeParameter parameter) : base(String.Empty, string.Empty, parameter.Mode) { m_Parameter = parameter; this.ComponentName = ((ICapeIdentification)parameter).ComponentName; this.ComponentDescription = ((ICapeIdentification)parameter).ComponentDescription; this.Mode = parameter.Mode; m_ValStatus = parameter.ValStatus; }
override public void Initialize() { ICapeUtilitiesCOM p_Util = ((ICapeUtilitiesCOM)this.p_Unit); p_Util.Initialize(); ICapeIdentification p_Id = (ICapeIdentification)p_Unit; //wrap ports... ICapeCollection portColl = (ICapeCollection)((ICapeUnitCOM)(p_Unit)).ports; int portCount = portColl.Count(); object[] portConnections = new object[portCount]; for (int i = 0; i < portCount; i++) { ICapeUnitPortCOM port = (ICapeUnitPortCOM)portColl.Item(i + 1); this.Ports.Add(new UnitPortWrapper(port)); } //wrap parameters... ICapeCollection paramColl = (ICapeCollection)((ICapeUtilitiesCOM)(p_Unit)).parameters; int paramCount = paramColl.Count(); for (int i = 0; i < paramCount; i++) { ICapeParameter param = (ICapeParameter)paramColl.Item(i + 1); CapeParamType paramType = ((ICapeParameterSpecCOM)param.Specification).Type; if (((ICapeParameterSpecCOM)param.Specification).Type == CapeParamType.CAPE_REAL) { this.Parameters.Add(new RealParameterWrapper(param)); } if (((ICapeParameterSpecCOM)param.Specification).Type == CapeParamType.CAPE_INT) { this.Parameters.Add(new IntegerParameterWrapper(param)); } if (((ICapeParameterSpecCOM)param.Specification).Type == CapeParamType.CAPE_OPTION) { this.Parameters.Add(new OptionParameterWrapper(param)); } if (((ICapeParameterSpecCOM)param.Specification).Type == CapeParamType.CAPE_BOOLEAN) { this.Parameters.Add(new BooleanParameterWrapper(param)); } if (((ICapeParameterSpecCOM)param.Specification).Type == CapeParamType.CAPE_ARRAY) { this.Parameters.Add(new ArrayParameterWrapper(param)); } } }
/// <summary> /// Creates a new instance of a wrapper class for COM-based array-valued parameter class. /// </summary> /// <remarks> /// The COM-based array parameter is wrapped and exposed to .NET-based PME and PMCs. /// </remarks> /// <param name = "parameter">The COM-based array parameter to be wrapped.</param> public ArrayParameterWrapper(ICapeParameter parameter) : base(((ICapeIdentification)parameter).ComponentName, ((ICapeIdentification)parameter).ComponentDescription, parameter.Mode) { m_parameter = parameter; }