/// <summary> /// Allows access to the <see cref="LivelinessLostStatus" /> communication status. /// </summary> /// <param name="status">The <see cref="LivelinessLostStatus" /> to be filled up.</param> /// <returns>The <see cref="ReturnCode" /> that indicates the operation result.</returns> public ReturnCode GetLivelinessLostStatus(ref LivelinessLostStatus status) { LivelinessLostStatus s = default; ReturnCode ret = UnsafeNativeMethods.GetLivelinessLostStatus(_native, ref s); status = s; return(ret); }
private void OnLivelinessLostHandler(IntPtr writer, ref LivelinessLostStatus status) { Entity entity = EntityManager.Instance.Find(writer); DataWriter dataWriter = null; if (entity != null) { dataWriter = entity as DataWriter; } OnLivelinessLost(dataWriter, status); }
/// <summary> /// <para>Handles the <see cref="StatusKind.LivelinessLostStatus" /> communication status.</para> /// <para>The <see cref="StatusKind.LivelinessLostStatus" /> 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="LivelinessLostStatus" />.</param> public abstract void OnLivelinessLost(DataWriter writer, LivelinessLostStatus status);
public static extern ReturnCode GetLivelinessLostStatus(IntPtr dw, [MarshalAs(UnmanagedType.Struct), In, Out] ref LivelinessLostStatus status);