internal override void CleanupIn(ref v_readerQos to)
 {
     DurabilityQosPolicyMarshaler.CleanupIn(ref to.durability);
     DeadlineQosPolicyMarshaler.CleanupIn(ref to.deadline);
     LatencyBudgetQosPolicyMarshaler.CleanupIn(ref to.latency);
     LivelinessQosPolicyMarshaler.CleanupIn(ref to.liveliness);
     ReliabilityQosPolicyMarshaler.CleanupIn(ref to.reliability);
     DestinationOrderQosPolicyMarshaler.CleanupIn(ref to._orderby);
     HistoryQosPolicyMarshaler.CleanupIn(ref to.history);
     ResourceLimitsQosPolicyMarshaler.CleanupIn(ref to.resource);
     UserDataQosPolicyMarshaler.CleanupIn(ref to.userData);
     OwnershipQosPolicyMarshaler.CleanupIn(ref to.ownership);
     TimeBasedFilterQosPolicyMarshaler.CleanupIn(ref to.pacing);
     ReaderDataLifecycleQosPolicyMarshaler.CleanupIn(ref to.lifecycle);
     SubscriptionKeyQosPolicyMarshaler.CleanupIn(ref to.userKey);
     ReaderLifespanQosPolicyMarshaler.CleanupIn(ref to.lifespan);
     ShareQosPolicyMarshaler.CleanupIn(ref to.share);
 }
 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);
 }
 /**
  * Copy and cleanup functions.
  **/
 internal override DDS.ReturnCode CopyIn(DataReaderQos from, ref v_readerQos to)
 {
     DDS.ReturnCode result;
     if (from != null)
     {
         to._parent      = new v_qos();
         to._parent.kind = V_QOSKIND.V_READER_QOS;
         result          = DurabilityQosPolicyMarshaler.CopyIn(
             from.Durability, ref to.durability);
         if (result == DDS.ReturnCode.Ok)
         {
             result = DeadlineQosPolicyMarshaler.CopyIn(
                 from.Deadline, ref to.deadline);
         }
         if (result == DDS.ReturnCode.Ok)
         {
             result = LatencyBudgetQosPolicyMarshaler.CopyIn(
                 from.LatencyBudget, ref to.latency);
         }
         if (result == DDS.ReturnCode.Ok)
         {
             result = LivelinessQosPolicyMarshaler.CopyIn(
                 from.Liveliness, ref to.liveliness);
         }
         if (result == DDS.ReturnCode.Ok)
         {
             result = ReliabilityQosPolicyMarshaler.CopyIn(
                 from.Reliability, ref to.reliability);
         }
         if (result == DDS.ReturnCode.Ok)
         {
             result = DestinationOrderQosPolicyMarshaler.CopyIn(
                 from.DestinationOrder, ref to._orderby);
         }
         if (result == DDS.ReturnCode.Ok)
         {
             result = HistoryQosPolicyMarshaler.CopyIn(
                 from.History, ref to.history);
         }
         if (result == DDS.ReturnCode.Ok)
         {
             result = ResourceLimitsQosPolicyMarshaler.CopyIn(
                 from.ResourceLimits, ref to.resource);
         }
         if (result == DDS.ReturnCode.Ok)
         {
             result = UserDataQosPolicyMarshaler.CopyIn(
                 from.UserData, ref to.userData);
         }
         if (result == DDS.ReturnCode.Ok)
         {
             result = OwnershipQosPolicyMarshaler.CopyIn(
                 from.Ownership, ref to.ownership);
         }
         if (result == DDS.ReturnCode.Ok)
         {
             result = TimeBasedFilterQosPolicyMarshaler.CopyIn(
                 from.TimeBasedFilter, ref to.pacing);
         }
         if (result == DDS.ReturnCode.Ok)
         {
             result = ReaderDataLifecycleQosPolicyMarshaler.CopyIn(
                 from.ReaderDataLifecycle, ref to.lifecycle);
         }
         if (result == DDS.ReturnCode.Ok)
         {
             result = SubscriptionKeyQosPolicyMarshaler.CopyIn(
                 from.SubscriptionKeys, ref to.userKey);
         }
         if (result == DDS.ReturnCode.Ok)
         {
             result = ReaderLifespanQosPolicyMarshaler.CopyIn(
                 from.ReaderLifespan, ref to.lifespan);
         }
         if (result == DDS.ReturnCode.Ok)
         {
             result = ShareQosPolicyMarshaler.CopyIn(
                 from.Share, ref to.share);
         }
     }
     else
     {
         result = DDS.ReturnCode.BadParameter;
         ReportStack.Report(result, "DataReaderQos attribute may not be a null pointer.");
     }
     return(result);
 }