internal static V_RESULT CopyOut(ref v_readerStatus from, DDS.OpenSplice.Common.ReaderStatus to) { to.State = (uint)from._parent.state; to.LivelinessChanged = new LivelinessChangedStatus(); to.SampleRejected = new SampleRejectedStatus(); to.SampleLost = new SampleLostStatus(); to.DeadlineMissed = new RequestedDeadlineMissedStatus(); to.IncompatibleQos = new RequestedIncompatibleQosStatus(); to.SubscriptionMatch = new SubscriptionMatchedStatus(); LivelinessChangedStatusMarshaler.CopyOut(ref from.livelinessChanged, to.LivelinessChanged); SampleRejectedStatusMarshaler.CopyOut(ref from.sampleRejected, to.SampleRejected); SampleLostStatusMarshaler.CopyOut(ref from.sampleLost, to.SampleLost); RequestedDeadlineMissedStatusMarshaler.CopyOut(ref from.deadlineMissed, to.DeadlineMissed); RequestedIncompatibleQosStatusMarshaler.CopyOut(ref from.incompatibleQos, to.IncompatibleQos); SubscriptionMatchedStatusMarshaler.CopyOut(ref from.subscriptionMatch, to.SubscriptionMatch); return(V_RESULT.OK); }
public ReturnCode GetRequestedIncompatibleQosStatus( ref RequestedIncompatibleQosStatus status) { ReturnCode result; using (RequestedIncompatibleQosStatusMarshaler marshaler = new RequestedIncompatibleQosStatusMarshaler()) { if (status == null) status = new RequestedIncompatibleQosStatus(); if (status.Policies == null) status.Policies = new QosPolicyCount[28]; marshaler.CopyIn(status); result = Gapi.DataReader.get_requested_incompatible_qos_status( GapiPeer, marshaler.GapiPtr); if (result == ReturnCode.Ok) { marshaler.CopyOut(ref status); } } return result; }