예제 #1
0
        /// <summary>
        /// This method allows the application to retrieve the <see cref="InconsistentTopicStatus" /> of the <see cref="Topic" />.
        /// </summary>
        /// <param name="status">The <see cref="InconsistentTopicStatus" /> structure to be fill up.</param>
        /// <returns>The <see cref="ReturnCode" /> that indicates the operation result.</returns>
        public ReturnCode GetInconsistentTopicStatus(ref InconsistentTopicStatus status)
        {
            InconsistentTopicStatus aux = default;

            ReturnCode ret = UnsafeNativeMethods.GetInconsistentTopicStatus(_native, ref aux);

            status = aux;

            return(ret);
        }
예제 #2
0
        private void OnInconsistentTopicHandler(IntPtr topic, ref InconsistentTopicStatus status)
        {
            Entity entity = EntityManager.Instance.Find(topic);

            Topic t = null;

            if (entity != null)
            {
                t = entity as Topic;
            }

            OnInconsistentTopic(t, status);
        }
예제 #3
0
 public static extern ReturnCode GetInconsistentTopicStatus(IntPtr t, [MarshalAs(UnmanagedType.Struct), In, Out] ref InconsistentTopicStatus status);
예제 #4
0
 /// <summary>
 /// <para>Handles the <see cref="StatusKind.InconsistentTopicStatus" /> communication status.</para>
 /// <para>The <see cref="StatusKind.InconsistentTopicStatus" /> indicates that a <see cref="Topic" /> was attempted to be registered that
 /// already exists with different characteristics. Typically, the existing <see cref="Topic" /> may have a different type associated with it.</para>
 /// </summary>
 /// <param name="topic">The <see cref="Topic" /> that triggered the event.</param>
 /// <param name="status">The current <see cref="InconsistentTopicStatus" />.</param>
 public abstract void OnInconsistentTopic(Topic topic, InconsistentTopicStatus status);