internal override void CopyOut(v_readerQos from, ref DataReaderQos to)
 {
     if (to == null)
     {
         to = new DataReaderQos();
     }
     DurabilityQosPolicyMarshaler.CopyOut(from.durability, ref to.Durability);
     DeadlineQosPolicyMarshaler.CopyOut(from.deadline, ref to.Deadline);
     LatencyBudgetQosPolicyMarshaler.CopyOut(from.latency, ref to.LatencyBudget);
     LivelinessQosPolicyMarshaler.CopyOut(from.liveliness, ref to.Liveliness);
     ReliabilityQosPolicyMarshaler.CopyOut(from.reliability, ref to.Reliability);
     DestinationOrderQosPolicyMarshaler.CopyOut(from._orderby, ref to.DestinationOrder);
     HistoryQosPolicyMarshaler.CopyOut(from.history, ref to.History);
     ResourceLimitsQosPolicyMarshaler.CopyOut(from.resource, ref to.ResourceLimits);
     UserDataQosPolicyMarshaler.CopyOut(from.userData, ref to.UserData);
     OwnershipQosPolicyMarshaler.CopyOut(from.ownership, ref to.Ownership);
     TimeBasedFilterQosPolicyMarshaler.CopyOut(from.pacing, ref to.TimeBasedFilter);
     ReaderDataLifecycleQosPolicyMarshaler.CopyOut(from.lifecycle, ref to.ReaderDataLifecycle);
     SubscriptionKeyQosPolicyMarshaler.CopyOut(from.userKey, ref to.SubscriptionKeys);
     ReaderLifespanQosPolicyMarshaler.CopyOut(from.lifespan, ref to.ReaderLifespan);
     ShareQosPolicyMarshaler.CopyOut(from.share, ref to.Share);
 }