/// <summary> /// Allows access to the <see cref="PublicationMatchedStatus" /> communication status. /// </summary> /// <param name="status">The <see cref="PublicationMatchedStatus" /> to be filled up.</param> /// <returns>The <see cref="ReturnCode" /> that indicates the operation result.</returns> public ReturnCode GetPublicationMatchedStatus(ref PublicationMatchedStatus status) { PublicationMatchedStatus s = default; ReturnCode ret = UnsafeNativeMethods.GetPublicationMatchedStatus(_native, ref s); status = s; return(ret); }
private void OnPublicationMatchedHandler(IntPtr writer, ref PublicationMatchedStatus status) { Entity entity = EntityManager.Instance.Find(writer); DataWriter dataWriter = null; if (entity != null) { dataWriter = entity as DataWriter; } OnPublicationMatched(dataWriter, status); }
/// <summary> /// <para>Handles the <see cref="StatusKind.PublicationMatchedStatus" /> communication status.</para> /// <para>The <see cref="StatusKind.PublicationMatchedStatus" /> indicates that the liveliness that the <see cref="DataWriter" /> committed /// through its Liveliness QoS has not been respected. This means that any connected <see cref="DataReader" />s /// will consider this <see cref="DataWriter" /> no longer active.</para> /// </summary> /// <param name="writer">The <see cref="DataWriter" /> that triggered the event.</param> /// <param name="status">The current <see cref="PublicationMatchedStatus" />.</param> public abstract void OnPublicationMatched(DataWriter writer, PublicationMatchedStatus status);
public static extern ReturnCode GetPublicationMatchedStatus(IntPtr dw, [MarshalAs(UnmanagedType.Struct), In, Out] ref PublicationMatchedStatus status);