Opc.Ua.Com.Client.ComAeClient.GetSubConditionNames C# (CSharp) Method

GetSubConditionNames() public method

Returns the sub-condition names for the event condition.
public GetSubConditionNames ( string conditionName, string &subConditionNames ) : void
conditionName string
subConditionNames string
return void
        public void GetSubConditionNames(string conditionName, out string[] subConditionNames)
        {
            subConditionNames = null;
            string methodName = "IOPCEventServer.QuerySubConditionNames";

            int count = 0;
            IntPtr pSubConditionNames = IntPtr.Zero;

            try
            {
                IOPCEventServer server = BeginComCall<IOPCEventServer>(methodName, true);

                server.QuerySubConditionNames(
                    conditionName,
                    out count,
                    out pSubConditionNames);
            }
            catch (Exception e)
            {
                ComCallError(methodName, e);
            }
            finally
            {
                EndComCall(methodName);
            }

            // unmarshal results.
            subConditionNames = ComUtils.GetUnicodeStrings(ref pSubConditionNames, count, true);
        }

Usage Example

コード例 #1
0
        private void LoadConditionEvent(ComAeClient client, int eventTypeId, int categoryId, string description, List <EventAttribute> attributes)
        {
            string[] conditionNames = null;

            try
            {
                client.GetConditionNames(categoryId, out conditionNames);
            }
            catch (Exception e)
            {
                Utils.Trace(e, "Unexpected error fetching condition names.");
                conditionNames = null;
            }

            if (conditionNames != null)
            {
                // create a condition class for the category.
                EventType eventType = new EventType();
                eventType.EventTypeId       = eventTypeId;
                eventType.CategoryId        = categoryId;
                eventType.Description       = description;
                eventType.ConditionName     = null;
                eventType.SubConditionNames = null;
                eventType.Attributes        = new List <EventAttribute>();
                DetermineMapping(eventType);
                EventTypes.Add(eventType);

                // create event types for each condition name.
                for (int ii = 0; ii < conditionNames.Length; ii++)
                {
                    eventType                   = new EventType();
                    eventType.EventTypeId       = eventTypeId;
                    eventType.CategoryId        = categoryId;
                    eventType.Description       = description;
                    eventType.ConditionName     = conditionNames[ii];
                    eventType.SubConditionNames = null;
                    eventType.Attributes        = attributes;
                    DetermineMapping(eventType);

                    string[] subConditionNames = null;

                    try
                    {
                        client.GetSubConditionNames(eventType.ConditionName, out subConditionNames);
                    }
                    catch (Exception e)
                    {
                        Utils.Trace(e, "Unexpected error fetching sub-condition names.");
                        subConditionNames = null;
                    }

                    if (subConditionNames != null)
                    {
                        eventType.SubConditionNames = new List <string>(subConditionNames);
                    }

                    EventTypes.Add(eventType);
                }
            }
        }
All Usage Examples Of Opc.Ua.Com.Client.ComAeClient::GetSubConditionNames