Opc.Ua.Com.Client.ComDaGroup.ModifyGroup C# (CSharp) Method

ModifyGroup() public method

Modifies the group.
public ModifyGroup ( ) : int
return int
        public int ModifyGroup()
        {
            m_actualSamplingInterval = 0;

            int localeId = m_server.LocaleId;

            GCHandle hSamplingInterval = GCHandle.Alloc(m_samplingInterval, GCHandleType.Pinned);
            GCHandle hDeadband = GCHandle.Alloc(m_deadband, GCHandleType.Pinned);

            string methodName = "IOPCGroupStateMgt.SetState";

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

                server.SetState(
                    hSamplingInterval.AddrOfPinnedObject(),
                    out m_actualSamplingInterval,
                    IntPtr.Zero,
                    IntPtr.Zero,
                    hDeadband.AddrOfPinnedObject(),
                    IntPtr.Zero,
                    IntPtr.Zero);

                /*
                Utils.Trace(
                    "Group {0} Modified({4}) {1}/{2}ms {3}%",
                    m_clientHandle,
                    m_samplingInterval,
                    m_actualSamplingInterval,
                    m_deadband,
                    m_items.Count);
                */

                return ResultIds.S_OK;
            }
            catch (Exception e)
            {
                ComUtils.TraceComError(e, methodName);
                return Marshal.GetHRForException(e);
            }
            finally
            {
                EndComCall(methodName);
                hSamplingInterval.Free();
                hDeadband.Free();
            }
        }